ITSEO學員老狼投稿文章首發,轉載請註明出處!
鋤禾日當午,日誌分析爲何非要費時一上午呢………………..
一、開篇要說的話
爲何要日誌分析昆哥說了:“首先要知道數據做什麼用,怎麼用,分析的意義在哪裏!但是本身這個只是指導你工作決策的,不能太執迷! 我看很多人把大量時間都在折騰蜘蛛去了,也是不正確的方法!自己一定要搞清目的。。。。。“
夜息說了:“日誌分析關注的點要了解,要了解哪些維度,如何分析。。。。。“
二、本文正題
這裏我就整理了下,本人經常拆份的一些項。Shell在Cygwin裏跑的一些常用命令符語句,我用的是Windows下Cygwin……大牛的就就漂過。。。。
【新手哈 有哪錯的 望指點 學習,】
現在把羅列下這些項:
//統計不重複抓取數量
//統計所有狀態碼數量
//統計某個目錄抓取次數
//統計各個目錄出現404響應碼次數
//統計404頁面的抓取數量
//統計每個ip下對應URL的抓取次數
//提取百度蜘蛛訪問數量前10的網站目錄及訪問次數,並按降序排列
//提取某個目錄百度蛛蛛訪問次數
//統計首頁抓取的次數佔總體抓取次數比率
//統計404響應碼佔總響應碼比率
//計算百度抓取總時間與總抓取次數
//計算百度抓取總字節數
//計算平均每次每個網頁抓取字節數(小數點後面大於5進1)
底下都舉一個例子,大家就自己套用。。 歡迎評論提問,吐槽。。。指正。。。
下面我們就進入演示。。。。請大家盯緊了。。
這是我日誌截圖:
//統計不重複抓取數量
cat baidu.log | awk '{print $4}'|sort|uniq|wc -l
//統計所有狀態碼數量
awk '{print $10}' baidu.log |sort|uniq -c
//統計某個目錄抓取次數
grep "/shop" baidu.log | awk '{print $4}' |sort |wc –l
//統計各個目錄出現404響應碼次數
//統計404頁面的抓取數量
awk '{if($10=="404"){print $0}}' baidu.log|sort|uniq|wc -l
//統計每個ip下對應URL的抓取次數
awk '{print $6,$4}' baidu.log |sort|uniq –c
/提取百度蜘蛛訪問數量前10的網站目錄及訪問次數,並按降序排列
awk '{print $4}' baidu.log |grep -P "[^/(a-zA-Z)|^/(a-zA-Z)/]"|awk -F"/" '{print $2}'|sort|uniq -c|sort -r|head -10
//提取某個目錄百度蛛蛛訪問次數
cat baidu.log | grep “/shop/”| wc –l
cat baidu.log |awk ‘{print $4}’ |grep “/shop/” |wc –l
cat baidu.log |awk ‘{print $4} |awk –F”/” ‘{print $2}’|grep “shop”|wc -l
//統計首頁抓取的次數佔總體抓取次數比率
cat baidu.log |awk '{print $4}'|awk '{if($0=="/"){n=n+1}}END{print n/NR*100"%"}'
//統計404響應碼佔總響應碼比率
cat baidu.log |awk '{print $10}'|awk '{if($0=="404"){n=n+1}}END{print n/NR*100"%"}'
//計算百度抓取總時間與總抓取次數
cat baidu.log|awk '{FS=" "} {print $2}'|awk -F":" '{print $2}'| sort |uniq -c|awk 'BEGIN{print "小時","次數"} {print $2,$1}'|awk '{for(n=0;n<5;n++){b=$2}} {a+=b} {print $0}END{print "總數"b,a}’
/計算百度抓取總字節數
cat baidu.log |awk '{print $11}'|awk 'BEGIN{total=0}{total+=$1}END{print total}'
//計算平均每次每個網頁抓取字節數(小數點後面大於5進1)
看完了,沒錯,就是到這邊,你沒看錯,你很認真。。。。。。。。。
在此感謝ITSEO基友們,老狼在此學到了不少東西。。。。