码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx 访问日志分析

时间:2017-08-20 21:23:57      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:获取   forward   str   for   log   分析   substr   技术分享   ogg   

0:Nginx日志格式配置

# vim nginx.conf
##
        # Logging Settings
        ##
        log_format  access  $remote_addr - $remote_user [$time_local] "$request" 
                          $status $body_bytes_sent $request_body "$http_referer" 
                          "$http_user_agent" "$http_x_forwarded_for" "$request_time";

        access_log /var/log/nginx/access.log access;

1:统计PV数

(1)统计所有的PV数

cat access.log | wc –l

(2)统计当天的PV数

cat access.log | sed -n /`date "+%d\/%b\/%Y"`/p |wc -l

(3)统计指定某一天的PV数

cat access.log | sed -n /20\/Aug\/2017/p | wc -l

如果要是获取某一天的则修改日期即可。

2:获取访问IP数

cat access.log | awk {print $1} | sort -k1 -r | uniq | wc -l

3:获取每分钟的请求数量

通过cat、awk等Linux脚本工具,输出成csv文件,然后用excel打开,生成柱状图。

cat access.log | awk {print substr($4,14,5)} | uniq -c | awk {print $2","$1} | sort -k1 | awk {print $2","$1} > access.csv

技术分享

4:查看日志中访问次数最多的前10个IP

cat access.log.1 |cut -d   -f 1 | sort |uniq -c | sort -nr | awk {print $0 } | head -n 10

5:查看日志中访问次数超过1000次的前10个IP

 cat access.log.1 |cut -d   -f 1 | sort |uniq -c | sort -nr | awk {if($1>1000) print $0 } | head -n 10 

 

Nginx 访问日志分析

标签:获取   forward   str   for   log   分析   substr   技术分享   ogg   

原文地址:http://www.cnblogs.com/yshyee/p/7401179.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!