GoAccess –實時Apache和Nginx日誌分析器

GoAccess是Unix / Linux系統上用於Web服務器的實時日誌分析器。 它也允許通過Web瀏覽器訪問日誌。 主要目的是允許用戶提供快速的方法,以實時分析和查看Web服務器統計信息,而無需Web瀏覽器。

它支持大多數Web日誌格式(Apache,Nginx,Amazon S3,Elastic Load Balancing,CloudFront,Caddy等)。 您只需要設置日誌格式並使用即可。 GoAccess還可以生成完整的,獨立的實時 HTML 報告,這對於分析,監視和數據可視化很有幫助。 它還支持 JSONCSV 報告。

本教程介紹了如何在Linux系統上安裝和使用GoAccess。

安裝GoAccess

大多數Linux操作系統在其官方存儲庫中都包含GoAccess軟件包。 因此,您只需使用軟件包管理器進行安裝即可。

  • 基於Debian的系統:
    sudo apt-get update && sudo apt-get install goaccess -y
    
  • 基於Redhat的系統:
    yum install goaccess
    
  • Arch Linux:
    pacman -S goaccess
    

對於其他操作系統,請訪問此頁面以安裝Goaccess。

從終端使用GoAccess

根據您使用的操作系統和Web服務器選擇日誌文件。 在基於Debian的系統上,日誌在以下位置生成 /var/log/apache2 目錄和基於Redhat的系統Apache在以下目錄下創建日誌 /var/log/httpd 目錄。 用 -f 使用goaccess命令定義日誌文件的選項。

goaccess -f /var/log/apache2/access.log

然後選擇日誌格式。 默認的Apache日誌格式為COMBINED。

GoAccess還允許您使用以下命令定義日誌格式: --log-format 命令行選項。 例如,要使用COMBINED日誌格式,命令將為:

sudo goaccess /var/log/apache2/access.log --log-format=COMBINED

您將在系統控制台上看到如下輸出:

帶有Apache日誌的GoAccess

按“ Q”退出GoAccess終端查看器。

在Web儀錶板中查看GoAccess輸出

GoAccess允許用戶生成各種格式的報告,例如HTML,JSON和CSV。 HTML格式會生成一個html頁面,其中所有數據均為可視格式。 我們可以通過在HTML文件中使用以下命令來生成報告。

讓我們在下面創建一個html報告文件 /var/www/html,這是我的Apache服務器上設置的默認文檔根目錄。 以下命令將生成html報告:

sudo goaccess /var/log/apache2/access.log --log-format=COMBINED -a -o /var/www/html/report.html
  • -一種 –按主機啟用用戶代理列表
  • -o –用於定義輸出文件
  • 根據輸出文件擴展名自動選擇輸出格式

接下來,使用服務器IP地址或域名訪問report.html。

GoAccess Web儀錶板

向下滑動至網頁以顯示更多信息。

自動更新Web儀錶板文件

您可以安排goaccess命令定期更新html報告。 創建具有以下內容的shell腳本:

/opt/goaccess.sh:

#!/ bin / bash sudo goaccess /var/log/apache2/access.log –log-format = COMBINED -a -o /var/www/html/report.html

12#!/ bin / bashsudo goaccess /var/log/apache2/access.log –log-format = COMBINED -a -o /var/www/html/report.html

然後使用crontab安排上述腳本:

sudo crontab -e

將以下內容添加到文件末尾

#Cron job to update Goaccess HTML repot
* * * * * /opt/goaccess.sh

保存crontab並關閉。

結論

在本教程中,您學習了GoAccess實用程序,該實用程序以可視格式查看Web服務器日誌。

Sidebar