常用日志分析命令
2017-08-22 本文已影响0人
vision_zhang
1、总请求数
wc -l access.log |awk '{print $1}'
2、独立IP数
awk '{print $1}' access.log|sort |uniq |wc -l
3、每秒客户端请求数 TOP5
awk -F'[ []' '{print $5}' access.log|sort|uniq -c|sort -rn|head -5
4、访问最频繁IP Top5
awk '{print $1}' access.log|sort |uniq -c | sort -rn |head -5
5、访问最频繁的URL TOP5
awk '{print $7}' access.log|sort |uniq -c | sort -rn |head -5
6、响应大于10秒的URL TOP5
awk '{if ($12 > 10){print $7}}' access.log|sort|uniq -c|sort -rn |head -5
7、HTTP状态码(非200)统计 Top5
awk '{if ($13 != 200){print $13}}' access.log|sort|uniq -c|sort -rn|head -5
8、分析请求数大于50000的源IP的行为
awk '{print $1}' access.log|sort |uniq -c |sort -rn|awk '{if ($1 > 50000){print $2}}' > tmp.txt
for i in $(cat tmp.txt)
do
echo $i >> analysis.txt
echo "访问行为统计" >> analysis.txt
grep $i access.log|awk '{print $6}' |sort |uniq -c | sort -rn |head -5 >> analysis.txt
echo "访问接口统计" >> analysis.txt
grep $i access.log|awk '{print $7}' |sort |uniq -c | sort -rn |head -5 >> analysis.txt
echo -e "\n" >> /root/analysis/$Ydate.txt
done