給大家看一款神器web日志分析工具
2019-04-13
說到web服務(wù)器就不得不說Nginx,目前已成為企業(yè)建站的首選。但由于種種歷史原因,Nginx日志分析工具相較于傳統(tǒng)的apache、lighthttp等還是少很多。
今天就和大家分享一個(gè)非常強(qiáng)大的實(shí)時(shí)日志分析工具,它安裝簡單,功能強(qiáng)大,支持Nginx日志格式,是新一代互聯(lián)網(wǎng)企業(yè)手中又一犀利武器!
GoAccess是一個(gè)實(shí)時(shí)的Apache / Nginx / Lighttpd Web日志分析器和交互式查看器,可在終端中運(yùn)行,能為系統(tǒng)管理員提供快速且有價(jià)值的 HTTP 統(tǒng)計(jì),并以在線可視化服務(wù)器的方式呈現(xiàn)。
GoAccess功能特征
GoAccess解析指定的Web日志文件并將數(shù)據(jù)輸出到X終端。功能包括:
完全實(shí)時(shí),所有面板和指標(biāo)定時(shí)在終端輸出上每200 ms更新一次,在HTML輸出上每秒更新一次。
跟蹤應(yīng)用程序響應(yīng)時(shí)間,如果您想跟蹤減慢網(wǎng)站速度的網(wǎng)頁,會(huì)非常有用。
支持幾乎所有Web日志格式, GoAccess允許任何自定義日志格式字符串。
支持增量日志處理,GoAccess能夠通過磁盤上的B + Tree數(shù)據(jù)庫逐步處理日志,保持?jǐn)?shù)據(jù)持久性。
可定制配色方案,Tailor GoAccess以適合您自己的色彩品味/方案。
支持大型數(shù)據(jù)集,GoAccess 為大型數(shù)據(jù)集提供磁盤B +樹存儲(chǔ),無法將所有內(nèi)容都安裝在內(nèi)存中。
Docker支持,能夠從上游構(gòu)建GoAccess的Docker鏡像。
GoAccess被設(shè)計(jì)成一個(gè)基于終端的快速日志分析器。實(shí)時(shí)快速分析和查看Web服務(wù)器統(tǒng)計(jì)信息,無需使用你的瀏覽器。雖然終端輸出是默認(rèn)輸出,但它能夠生成完整的,自包含的實(shí)時(shí)HTML 報(bào)告,以及JSON和 CSV報(bào)告。
官網(wǎng)傳送門:https://goaccess.io/
在Linux上使用Nginx安裝GoAccess
在Ubuntu Linux上安裝GoAccess
$ sudo apt-get install goaccess
在Debian Linux上安裝GoAccess
$ sudo apt-get install goaccess
在CentOS Linux上安裝GoAccess
首先打開EPEL repo并輸入以下yum命令:
$ sudo yum install epel-release $ sudo yum install goaccess
使用源代碼方法安裝GoAccess
輸入以下命令以在類Unix系統(tǒng)上下載和編譯GoAccess:
$ cd /tmp $ wget http://tar.goaccess.io/goaccess-1.2.tar.gz $ tar -zxvf goaccess-1.2.tar.gz $ cd goaccess-1.2/ $ ./configure --enable-utf8 --enable-geoip=legacy && make $ sudo make install
GoAccess常用語法
goaccess -f /path/to/nginx/access.log goaccess -f /path/to/apache/access.log goaccess -f /path/to/lighttpd/access.log goaccess -f /path/to/lighttpd/access.log /path/to/lighttpd/access.log.1 zcat /path/to/nginx/access.log.*.gz | goaccess access.log - goaccess [options] /path/to/lighttpd/access.log
GoAccess實(shí)踐
如何通過實(shí)時(shí)報(bào)告在屏幕上看到輸出?
goaccess -f /var/log/nginx/access.log
置日志文件的日志格式
在屏幕上查看交互式報(bào)告,報(bào)告如下:
如何生成HTML報(bào)告?
語法為:
goaccess -f /var/log/nginx/access.log --log-format=COMBINED -o www.lovelinux.com.log.htm