nginx瓜分日志
nginx分割日志
nginx不同于httpd,不能自动分割日志,一般须要写个定时任务,如下是每晚12点把前一天的日志备份到以日期为名字的文件夹里,能够保证便于查找每天的日志文件,下面就是nginx日志切割脚本,已经上线运行一年多:
#!/bin/bash
# daily_cut_log.sh
# author:simonsun
# email: 121179819@163.com
# Daily log cutting at 00:00
NGINX_LOG="/installed/nginx/log/position/"
mkdir ${NGINX_LOG}$(date -d "yesterday" +"%Y%m%d")
mv ${NGINX_LOG}access.log ${NGINX_LOG}$(date -d "yesterday" +"%Y%m%d")
kill -USR1 $(cat /installed/nginx/processid/position/nginx.pid)
注:USR1 信号表示重新载入日志文件
修改该文件权限(chmod u+x daily_cut_log.sh)后,添加到计划任务,每天0点执行:
[root@myserver ~]# crontab -e
0 0 * * * /installed/nginx/sh/position/daily_cut_log.sh
[root@myserver ~]# crontab -l
0 0 * * * /installed/nginx/sh/position/daily_cut_log.sh