如何分析服務器日誌哪些元素佔用流量過大?

測試數據如下:

59.33.26.105 - - [08/Dec/2010:15:43:56 +0800] "GET /static/p_w_picpaths/photos/2.jpg HTTP/1.1" 200 11299 "http://oldboy.blog.51cto.com/static/web/column/17/index.shtml?courseId=43" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" 

59.33.26.105 - - [08/Dec/2010:15:43:56 +0800] "GET /static/p_w_picpaths/photos/2.jpg HTTP/1.1" 200 11299 "http://oldboy.blog.51cto.com/static/web/column/17/index.shtml?courseId=43" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" 

59.33.26.105 - - [08/Dec/2010:15:44:02 +0800] "GET /static/flex/vedioLoading.swf HTTP/1.1" 200 3583 "http://oldboy.blog.51cto.com/static/flex/AdobeVideoPlayer.swf?width=590&height=328&url=/`DYNAMIC`/2" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" 

124.115.4.18 - - [08/Dec/2010:15:44:15 +0800] "GET /?= HTTP/1.1" 200 46232 "-" "-" 

124.115.4.18 - - [08/Dec/2010:15:44:25 +0800] "GET /static/js/web_js.js HTTP/1.1" 200 4460 "-" "-" 

124.115.4.18 - - [08/Dec/2010:15:44:25 +0800] "GET /static/js/jquery.lazyload.js HTTP/1.1" 200 1627 "-" "-"


需要輸出三個指標:【訪問次數】【訪問次數*單個文件大小】 【文件名(可以帶URL)】。

解決方案,通過awk取出文件名,文件大小;用數組進行 訪問次數,及訪問量的統計,最後排序輸出結果。

代碼如下: 

[root@oldboy32 data]# awk '{a[$7] += $10; ++b[$7];
total += $10}END {for( i in a) print b[i],a[i],i}' p_w_picpaths.log |sort -rnk2
1 46232 /?=
2 22598 /static/p_w_picpaths/photos/2.jpg
1 4460 /static/js/web_js.js
1 3583 /static/flex/vedioLoading.swf
1 1627 /static/js/jquery.lazyload.js






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章