Nginx日志切割及常用统计脚本

1,编辑脚本

进入到/usr/local/nginx/logs日志目录下,新建一个脚本,添加下面内容。指定好日志目录路径,日志文件名称和pid的文件,最后kill -USR1信号用来告知应用程序重载配置文件

vim log.sh

#!/bin/bash

logs_path="/usr/local/nginx/logs/"

mv ${logs_path}www_mrliangqi.log ${logs_path}www_mrliangqi$(date -d "yesterday" +"%Y%m%d").log

kill -USR1 `cat /var/run/nginx/nginx.pid`

2,添加计划任务

# crontab  -e

1 0 * * * bash /usr/local/nginx/logs/log.sh 每天晚上0:1分执行该脚本进行切割。执行完成之后会把nginx日志重命名为日期格式,并重新生成今天的日志文件。

#/etc/init.d/crond  restart 重启计划任务

#crontab  -l 查看存在的计划任务

1 0 * * * bash /usr/local/nginx/logs/log.sh

3,常用脚本:

1,根据访问ip统计UV

# awk '{print $1}'  www_mrliangqi.log|sort | uniq -c |wc -l

2,统计访问url统计PV

# awk '{print $7}' www_mrliangqi.log|wc -l

3,统计访问最频繁的url

# awk '{print $7}'  www_mrliangqi.log|sort | uniq -c |sort -n -k 1 -r|more

4,查询访问最频繁的ip

# awk '{print $1}' www_mrliangqi.log |sort | uniq -c |sort -n -k 1 -r|more

5,根据时间段统计查看日志

# cat www_mrliangqi.log| sed -n '/13\/May\/2016:12/,/14\/May\/2016:12/p'|more


发表评论

登录 后发表评论.