nginx日志分析
-
访问最多的IP
-
访问最多的页面 CC攻击
-
访问页面状态码数量
-
根据时间段来访问最多的IP
#统计某列IP数量 awk '{a[$1]++}END{for(v in a)print v, a[v]}' /usr/local/nginx/logs/access.log #!/bin/bash LOG_FILE=$1 echo "统计访问最多的10个IP" awk '{a[$1]++}END{print "UV:", length(a);for(v in a)print v, a[v]}' $LOG_FILE |sort -k2 -nr |head -10 echo "-----------------------------" echo "统计时间段访问最多的IP" awk '$4>="[01/Dec/2018:13:20:25" && $4<="[01/Dec/2018:16:20:25"{a[$1]++}END{for(v in a)print v, a[v]}' $LOG_FILE |sort -k2 -nr |head -10 echo "-----------------------------" echo "统计访问最多的10个页面" awk '{a[$7]++}END{print "PV:", length(a);for(v in a){if(a[v]>10)print v, a[v]}}' $LOG_FILE |sort -k2 -nr echo "统计访问页面状态码数量" awk '{a[$7" "$9]++}END{for(v in a){if(a[v]>5)print v, a[v]}}' $LOG_FILE |sort -k3 -nr