日誌分析工具goaccess

2021-08-26 19:59:54 字數 2178 閱讀 2701

提到web伺服器就不得不說nginx。這款由俄羅斯人開發的小巧的web服務軟體近幾年來風靡大江南北;成為許多草根站長建設**的首選。但由於歷史原因,

nginx

在日誌分析工具相較於傳統的apache、lighthttp等要匱乏的多。

作為效能測試工程師的我,無論在效能分析還是在測試環境維護都離不開日誌的分析,所以逼得我必須掌握日誌分析的技巧,當然簡單的命令必不可少,簡單的分析命令足以搞定,但是作為比較複雜的命令分析命令還是有點力不從心,畢竟自己的shell指令碼編寫能力還沒達到那種水平,下面我就介紹一款比較小巧的nginx日誌分析工具:goaccess。

目前,這款軟體支援common log format(clf) 和 combined log format(xlf/elf) 格式的日誌。分析傳統的apache格式日誌當然毫無問題。同時,只要將nginx的日誌格式定義為apache格式,對它的分析也不在話下(目前,redhat提供的nginx軟體包預設日誌格式和apache基本一致)

安裝使用:

tarzxvf goaccess-0.4.2.tar.gz

cdgoaccess-0.4.2

#啟動ip歸屬地查詢、和utf8編碼格式支援

./configure–enalbe-geoip –enable-utf8

make&&makeinstall

goaccess的基本語法如下:

goaccess [ -b ][ -s ][ -e ip_address][ - a ]

引數說明:

用法示例:

最簡單、常用的命令就是直接呼叫goaccess命令啦,不帶任何影響效率的其他引數

goaccess –f access.log

如果需要檢視其他資訊,我們加入如下引數以顯示http響應**、使用者**、流量消耗

goaccess –f access.log –s –a –b

如果你覺得這樣還不能滿足你的需求。別急,goaccess支援linux管道(pipe),我們可以將日誌檔案預處理後,再交給goaccess去分析。

zcat access.log.1.gz | goaccess

讓goaccess去分析已經打包壓縮好的日誌檔案。

或者乾脆分析目前下所有日誌

zcat access.log* | goaccess

如果需要分析某天的日誌,例如10月5號那天的日誌,我們讓linux管道命令來大顯身手^_^。

sed -n 『/05\/dec\/2010/,$ p』 access.log | goaccess -s –b

分析從11月5號到12月5號乙個月內的日誌

sed -n 『/5\/nov\/2010/,/5\/dec\/2010/ p』 access.log | goaccess -s –b

當你不希望在伺服器上安裝goaccess程式,可以通過呼叫本地的goaccess程式來分析伺服器上的日誌(很神奇吧^_^):

ssh user@server 『cat /var/log/apache2/access.log』 | goaccess -s -a -b

大部分伺服器對日誌分析的速度都比較敏感,如果在分析日誌時造成伺服器其他服務的不穩定,那還不如不用呢。據goaccess官方的說法:使用amd sempron 2.31ghz的cpu+2gb記憶體,開啟goaccess所有功能,該軟體每秒可以處理10萬行日誌。當然,如果使用的cpu更強勁,擁有更多的記憶體,goaccess的表現會更加出色。

GoAccess日誌分析工具

goaccess是乙個非常良心的開源軟體,它的良心之處體現在如下方面 1 安裝簡單 2 操作容易 3 介面酷炫 goaccess 官網 官網提供多種系統版本的安裝方法 download installation wget tar xzvf goaccess 1.3.tar.gz cd goacces...

goaccess日誌分析工具 apache

1 編譯安裝 wget tar xzvf goaccess 1.2.tar.gz cd goaccess 1.2 configure enable utf8 enable geoip legacy make make install2 配置檔案 etc goaccess.conf wget o go...

goaccess 分析日誌

非常小又精悍的 nginx 日誌分析工具 goaccess,處理速度非常快,我用 xshell 檢視,還可以生成 html 報告。goaccess 在 centos 上的安裝方法 1.需要安裝 geoip,ncurses,glib2,一句搞定 yum y install glib2 glib2 de...