使用shell指令碼分析網站日誌統計PV、404、500等資料_linux shell

來源:互聯網
上載者:User
下面的指令碼能統計出網站的總訪問量,以及404,500出現的次數。統計出來後,我們可以結合監控寶來進行記錄,進而可以看出網站訪問量是否異常,是否存在攻擊,一目瞭然。還可以根據查看500出現的次數,進而判斷網站程式是否出現異常。
複製代碼 代碼如下:
#!/bin/bash
#purpose:count nginx or apache or other webserver status code using jiankongbao
#how to:run the script every 5 minutes with crontab

log_path="/var/log/nginx/www.jb51.net/access.log"
becur=`date -d "5 minute ago" +%H%M%S`
code=(`tac $log_path  | awk  -v a="$becur" -v total=0 -F [' ':] '{
t=$5$6$7
if (t>=a){
code[$12]++
total++
}
else {
exit;
}
}END{
print code[404]?code[404]:0,code[500]?code[500]:0,total
}'
`)
c404=${code[0]}
c500=${code[1]}
total=${code[2]}
echo -e "<pre>\nc404:${c404}\nc500:${c500}\ntotal:${total}\n</pre>" > /data/www/status/www.jb51.net.html

指令碼最後一行是以:
複製代碼 代碼如下:
<pre>
c404:1102
c500:545
total:55463
</pre>

的格式寫入到一個www.jb51.net html檔案,再結合監控寶的自訂監控來收集這些資訊。非常的方便,監控寶會自動出圖表。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.