本文介紹Nginx使用GoAccess檢視Nginx訪問日誌。
最近在看極客時間-《Nginx核心知識一百講》的視訊,瞭解到GoAccess監控工具,所以最近對這個工具研究了一下,故寫此文章。
1.GoAccess簡介
GoAccess是一個開源的實時網路日誌分析器和互動式檢視器,可以在Linux系統或通過瀏覽器的終端中執行。它為需要動態視覺化伺服器報告的系統管理員提供快速且有價值的HTTP統計資訊。
官網地址:goaccess.io/
官網首頁:
特徵頁(使用谷歌瀏覽器翻譯),感覺這裡的翻譯大致都可以理解,我就不一條一條寫出來了。
2.安裝GoAccess
官方文件下載地址:goaccess.io/download
如圖:
首先安裝GoAccess依賴,已經安裝請忽略。
ncurses-devel:
yum install ncurses-devel
複製程式碼
tokyocabinet-devel:
yum install tokyocabinet-devel
複製程式碼
openssl-devel:
yum install openssl-devel
複製程式碼
geoip-devel:
yum install GeoIP-devel.x86_64
複製程式碼
然後就跟著官網步驟來就可以了,如下: 下載GoAccess
wget https://tar.goaccess.io/goaccess-1.2.tar.gz
複製程式碼
解壓
tar -xzvf goaccess-1.2.tar.gz
複製程式碼
進入目錄
cd goaccess-1.2 /
複製程式碼
生成 Makefile,為下一步做準備
./configure --enable-utf8 --enable-geoip = legacy
複製程式碼
編譯
make
複製程式碼
安裝
make install
複製程式碼
3.使用
這裡參考陶輝在課程中使用的命令,如下
goaccess /opt/nginx/logs/access.log -o /opt/nginx/goaccess/report.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED
複製程式碼
其中/opt/nginx/logs/access.log為Nginx日誌位置,/opt/nginx/goaccess/report.html為生成頁面位置,COMBINED指定預設檔案格式,real-time-html實時html。
在Nginx中對應server內加入如下配置:
location /report.html {
alias /opt/nginx/goaccess/report.html;
}
複製程式碼
重啟Nginx,訪問localhost:8080/report.html可以看到如圖所示:
4.總結
工具含有的功能很強大,可以結合所在場景進行實時分析。