1.统计2020年9月5日,每个URL访问内容总大小
# grep ‘05/Sep/2020‘ /var/log/nginx/access.log | awk ‘{urls[$7]++;size[$7]+=$10}END{for(i in urls){print urls[i],size[i],i}}‘
2..统计2020年9月5日,每个IP访问状态码数量
# grep ‘05/Sep/2020‘ /var/log/nginx/access.log | awk ‘{ip_code[$1" "$9]++}END{for(i in ip_code){print i,ip_code[i]}}‘ | sort -k1rn | head
3.统计2020年9月5日 IP访问状态码为404及出现次数
# grep ‘05/Sep/2020‘ /var/log/nginx/access.log | awk ‘{if($9=="404"){ip_code[$1" "$9]++}}END{for(i in ip_code){print i,ip_code[i]}}‘ | sort -k1rn | head
4.统计前一分钟的PV量
# date=$(date -d ‘-1minute‘ +%d/%b/%Y:%H:%M);awk -v date=$date ‘$0 ~ date {i++} END{print i}‘ /var/log/nginx/access.log
5.统计2020年9月5日 8.30-9.30,访问状态码是404
# awk ‘$4>="[05/Sep/2020:8:30:00]" && $4<="[05/Sep/2020:9:30:00]" {if($9=="404"){ip_code[$1" "$9]++}}END{for(i in ip_code){print i,ip_code[i]}}‘ /var/log/nginx/access.log
6.各种状态码的百分比
# grep ‘05/Sep/2020‘ /var/log/nginx/access.log | awk ‘{code[$9]++;total++}END{for(i in code){printf i"";printf code[i]"\t";printf"%.2f",code[i]/total*100;print"%"}}‘
原文:https://www.cnblogs.com/wherewo/p/13620042.html