在 Linux 中以交互方式實時查看Apache web訪問統計
在Linux系統安裝GoAccess
在Debian,Ubuntu及其衍生版本,運行以下命令來安裝GoAccess:
# aptitude install goaccess
在CentOS中,你將需要使你的EPEL 倉庫可用然後執行以下命令:
# yum install goaccess
在Fedora,同樣使用yum命令:
# yum install goaccess
如果你想從源碼安裝GoAccess來使用更多功能(例如 GeoIP 定位功能),需要在你的操作系統安裝必需的依賴包,然後按以下步驟進行:
# wget http://tar.goaccess.io/goaccess-0.8.5.tar.gz
# tar -xzvf goaccess-0.8.5.tar.gz
# cd goaccess-0.8.5/
# ./configure --enable-geoip
# make
# make install
以上安裝的版本是 0.8.5,但是你也可以在該軟體的網站下載頁確認是否是最新版本。
由於GoAccess不需要後續的配置,一旦安裝你就可以馬上使用。
運行 GoAccess
開始使用GoAccess,只需要對它指定你的Apache訪問日誌。
對於Debian及其衍生版本:
# goaccess -f /var/log/apache2/access.log
基於紅帽的發行版:
# goaccess -f /var/log/httpd/access_log
當你第一次啟動GoAccess,你將會看到如下的屏幕中選擇日期和日誌格式。正如前面所述,你可以按空格鍵進行選擇,並按F10確認。至於日期和日誌格式,你可能需要參考Apache 文檔來刷新你的記憶。
在這個例子中,選擇常見日誌格式(Common Log Format(CLF)):
然後按F10 確認。你將會從屏幕上看到統計數據。為了簡潔起見,這裡只顯示了首部,也就是日誌文件的摘要,如下圖所示:
通過 GoAccess來瀏覽網站伺服器統計數據
你可以按向下的箭頭滾動頁面,你會發現以下區域,它們是按請求排序的。這裡提及的目錄順序可能會根據你的發行版或者你所選的安裝方式(從源和庫)不同而不同:
- 每天唯一訪客(來自同樣IP、同一日期和同一瀏覽器的請求被認為是是唯一訪問)
- 請求的文件(網頁URL)
- 請求的靜態文件(例如,.png文件,.js文件等等)
- 來源的URLs(每一個URL請求的出處)
- HTTP 404 未找到的響應代碼
- 操作系統
- 瀏覽器
- 主機地址(客戶端IP地址)
- HTTP 狀態代碼
- 前幾位的來源站點
- 來自谷歌搜索引擎的前幾位的關鍵字
如果你想要檢查已經存檔的日誌,你可以通過管道將它們發送給GoAccess,如下:
在Debian及其衍生版本:
# zcat -f /var/log/apache2/access.log* | goaccess
在基於紅帽的發行版:
# cat /var/log/httpd/access* | goaccess
如果你需要上述部分的詳細報告(1至11項),直接按下其序號再按O(大寫o),就可以顯示出你需要的詳細視圖。下面的圖像顯示5-O的輸出(先按5,再按O)
如果要顯示GeoIP位置信息,打開主機部分的詳細視圖,如前面所述,你將會看到正在請求你的伺服器的客戶端IP地址所在的位置。
如果你的系統還不是很忙碌,以上提及的章節將不會顯示大量的信息,但是這種情形可以通過在你網站伺服器越來越多的請求發生改變。
保存用於離線分析的報告
有時候你不想每次都實時去檢查你的系統狀態,可以保存一份在線的分析文件或列印出來。要生成一個HTML報告,只需要通過之前提到GoAccess命令,將輸出來重定向到一個HTML文件即可。然後,用web瀏覽器來將這份報告打開即可。
# zcat -f /var/log/apache2/access.log* | goaccess > /var/www/webserverstats.html
一旦報告生成,你將需要點擊展開的鏈接來顯示每個類別詳細的視圖信息:
可以查看youtube視頻:https://youtu.be/UVbLuaOpYdg 。
正如我們通過這篇文章討論,GoAccess是一個非常有價值的工具,它能給系統管理員實時提供可視的HTTP 統計分析。雖然GoAccess的默認輸出是標準輸出,但是你也可以將他們保存到JSON,HTML或者CSV文件。這種轉換可以讓 GoAccess在監控和顯示網站伺服器的統計數據時更有用。
via: http://xmodulo.com/interactive-apache-web-server-log-analyzer-linux.html
作者:Gabriel Cánepa 譯者:disylee 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive