apache日誌分析可以獲得很多有用的資訊,現在來試試最基本的,獲取最多訪問的前10個ip位址及訪問次數。
既然是統計,那麼awk是必不可少的,好用而高效。
命令如下:
awk ' end ' 日誌檔案 | sort -n | tail
首先用awk統計出來乙個列表,然後用sort進行排序,最後用tail取最後的10個。
以上引數可以略作修改顯示更多的資料,比如將tail加上-n引數等,另外日誌格式不同命令也可能需要稍作修改。
當前web伺服器中聯接次數最多的ip位址
#netstat -ntu |awk '' |sort | uniq -c| sort -nr
檢視日誌中訪問次數最多的前10個ip
#cat access_log |cut -d ' ' -f 1 |sort |uniq -c | sort -nr | awk '' | head -n 10 |less
檢視日誌中出現100次以上的ip
#cat access_log |cut -d ' ' -f 1 |sort |uniq -c | awk ''|sort -nr |less
檢視最近訪問量最高的檔案
#cat access_log |tail -10000|awk ''|sort|uniq -c|sort -nr|less
檢視日誌中訪問超過100次的頁面
#cat access_log | cut -d ' ' -f 7 | sort |uniq -c | awk '' | less
統計某url,一天的訪問次數
#cat access_log|grep '12/aug/2009'|grep '/images/index/e1.gif'|wc|awk ''
前五天的訪問次數最多的網頁
#cat access_log|awk ''|uniq -c |sort -n -r|head -20
從日誌裡檢視該ip在幹嘛
#cat access_log | grep 218.66.36.119| awk '' | sort | uniq -c | sort -nr | less
列出傳輸時間超過 30 秒的檔案
#cat access_log|awk '($nf > 30)' |sort -n|uniq -c|sort -nr|head -20
列出最最耗時的頁面(超過60秒的)
#cat access_log |awk '($nf > 60 && $7~/\.php/)' |sort -n|uniq -c|sort -nr|head -100
awk對apache日誌訪問的處理
awk名稱 於他的創始人姓氏的首字母 alfred aho peter weinberger和brian kernighan awk是乙個強大的文字分析工具,相對於grep的查詢,sed的編輯,awk在其對資料分析並產生報告時顯得尤為強大。awk其實是一門程式語言,它支援條件判斷 陣列 迴圈等功能。...
Apache 訪問日誌管理
大多元素為靜態檔案,如 css js等,這些元素可以不用記錄到訪問日誌中。測試結果 使用curl訪問png等格式檔案時日誌不會記錄訪問資訊。訪問其它格式仍然會記錄訪問資訊。使用瀏覽器訪問亦如此。日誌一直記錄總有一天會把整個磁碟佔滿,所以有必要讓它自動切割,並刪除老的日誌檔案。說明 rotatelog...
Awk分析nginx訪問日誌
awk是linux系統下乙個處理文字的程式語言工具,能用簡短的程式處理標準輸入或檔案 資料排序 計算以及生成報表等等,應用非常廣泛。預設日誌格式 remote addr remote user time local request status body bytes sent http refere...