goaccess nginx日誌分析工具

 最近維護的網站總是有搜索引擎來惡意訪問,搞咱們網站打開很慢,OMG老總髮話了,必需要搞定。linux

曾經在nginx.conf文件中作過濾,but這樣作過,可是會影響收錄,糾結啊........nginx

if ($http_user_agent ~* "Gecko|YoudaoBot|baiduspider|Googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|robozilla|msnbot|MJ12bot|NHN|Twiceler"){
            return  403;
 }瀏覽器

發現了個日記分析工具,感受挺好用的,可是個人問題仍是沒有解決,難道叫我屏蔽IP吧,可能須要這樣作。服務器

下面讓咱們挖掘GoAccess,good jobs............ssh

 

GoAccess簡介ide

GoAccess是運行在Unix系統終端,開源、實時分析Apache日誌(其實也可以分析Nginx日誌)而且可以動態呈現的軟件。它爲系統管理員提供了一個快速、有價值的HTTP統計,動態的可視化的服務器報告。工具

做用網站

GoAccess的工做方式是,它將解析衆所周知的Apache訪問日誌文件 access log,GoAccess經過解析日誌收集的數據,將會顯示它的控制檯或某個終端。收集到的信息或生成的報告將顯示給在視覺、交互窗口的系統管理員用戶。報告包括:
      綜合統計
     訪客排行榜
     請求文件排行榜
     請求的靜態文件排行榜,如圖片、JS文件、CSS文件等
     訪問來源
     404頁面
     訪問者的操做系統
     訪問者的瀏覽器
     瀏覽器和蜘蛛(搜索爬蟲)
    主機,反向DNS,IP位置
    HTTP狀態碼
    推介網站
    搜索關鍵詞
    顯示時不一樣的配色方案
    無限制日誌文件的大小(決定了GoAccess的打開速度)搜索引擎


GoAccess主頁 http://goaccess.prosoftcorp.com/編碼

GoAccess命令

#下載AoAccess安裝包
wget http://sourceforge.net/projects/goaccess/files/0.4.2/goaccess-0.4.2.tar.gz/download
#解壓文件
tar zxvf goaccess-0.4.2.tar.gz
cd goaccess-0.4.2 
#啓動ip歸屬地查詢和utf8編碼格式支持 
./configure –enalbe-geoip –enable-utf8 
make
make install


用法介紹
 
GoAccess的基本語法以下: 
goaccess [ -b ][ -s ][ -e IP_ADDRESS][ - a ] <-f log_file >
goaccess -b access.log

參數說明:
 1) -f – 日誌文件名
 2) -b – 開啓流量統計,若是但願加快分析速度不建議使用該參數
 3) -s – 開啓HTTP響應代碼統計
 4) -a – 開啓用戶代理統計
 5) -e – 開啓指定IP地址統計,默認禁用


用法示例:
最簡單、經常使用的命令就是直接調用goaccess命令
goaccess –f access.log
 

goaccess nginx日誌分析工具 - Vincent - Vincent

 簡單操做命令:

1 + O

2 + O

3 + O

.....................................


顯示HTTP響應代碼、用戶代理、流量消耗(產生完整、全面統計數據的使用方式)
goaccess –f access.log –s –a –b
 
goaccess支持linux管道,咱們能夠將日誌文件預處理後,再交給goaccess去分析。
zcat access.log.1.gz | goaccess
 
Aoaccess去分析已經打包壓縮好的日誌文件或者乾脆分析目前下全部日誌
zcat access.log* | goaccess
 
若是須要分析某天的日誌,例如2012年9月號8那天的日誌,咱們讓linux管道命令。
sed -n ‘/08\/Sep\/2012/,$ p’ access.log | goaccess -s –b

低優先級運行GoAccess的方式
nice -n 19 goaccess -f access.log -s -a -b

分析從9月1號到9月30號的日誌 sed -n ‘/1\/Sep\/2012,/30\/Sep\/2012/ p’ access.log | goaccess -s –b   調用本地的goaccess程序來分析服務器上的日誌(遠程分析nginx log) ssh  'cat /www/nginx/logs/access.log' | goaccess -s -a -b

相關文章
相關標籤/搜索