nginx日志分析

日志格式

log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

 

统计Nginx服务器流量

awk '{sum +=$6} END{print sum/1024/1024"M"}' access.log

 

统计最多访问的100个ip及次数

cut -d ' ' -f1 access.log | sort  | uniq -c | sort -rn | head -n 100

 

统计最多访问的100个url及次数

cut -d ' ' -f4 access.log | sort  | uniq -c | sort -rn | head -n 100

 

 查看某个时间段的日志

awk '$4 >= "[15/Jan/2016:19:30:00" && $4<="[15/Jan/2016:21:30:59" {print }' access.log

 

统计不同ip的访问次数

awk '{a[$1]++}END{for(i in a)print i,a[i]}' access.log

 

统计不同user-agent的访问次数

awk -F '"' '{print $6}' access.log | awk -F '\n' '{a[$1]++}END{for(i in a)print i,a[i]}'                              

 

awk 'BEGIN{total=0}{if($1>=1490012700 && $1<1490013000) total+=$5}END{print total/1024/1024/300*8}' access.log

 

posted @ 2016-01-20 10:32  metasequoia  阅读(227)  评论(0编辑  收藏  举报