天天看點

Linux實用日志分析腳本(轉載)

受益了,轉給大家看看

日志分析

随意的tail一個access_log檔案,下面是一條經典的通路記錄

218.19.140.242 – - [10/Dec/2010:09:31:17 +0800] “GET /query/trendxml/district/todayreturn/month/2009-12-14/2010-12-09/haizhu_tianhe.xml HTTP/1.1″ 200 1933 “-” “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)”

實用的日志分析腳本了解日志的各種定義後,這裡分享一下從網上淘來的一些對日志分析的腳本

1.檢視apache的程序數ps -aux | grep httpd | wc -l

2.分析日志檢視當天的ip連接配接數cat default-access_log | grep “10/Dec/2010″ | awk ‘{print $2}’ | sort | uniq -c | sort -nr

3.檢視指定的ip在當天究竟通路了什麼urlcat default-access_log | grep “10/Dec/2010″ | grep “218.19.140.242″ | awk ‘{print $7}’ | sort | uniq -c | sort -nr

4.檢視當天通路排行前10的urlcat default-access_log | grep “10/Dec/2010″ | awk ‘{print $7}’ | sort | uniq -c | sort -nr | head -n 10

5.看到指定的ip究竟幹了什麼cat default-access_log | grep 218.19.140.242 | awk ‘{print $1″\t”$8}’ | sort | uniq -c | sort -nr | less

6.檢視通路次數最多的幾個分鐘(找到熱點)awk ‘{print $4}’ default-access_log |cut -c 14-18|sort|uniq -c|sort -nr|head

7.統計一個文本中包含字元個數

cat pic.access.log |grep /2012/ |wc -l