# vim /usr/local/sbin/nginx_logrotate.sh //创建一个nginx日志切割脚本
内容:
#! /bin/bash
d=`date -d "-1 day" +%F`
[ -d /tmp/nginx_log ] || mkdir /tmp/nginx_log
mv /tmp/accesstest.log /tmp/nginx_log/$d.log
/etc/init.d/nginx reload > /dev/null
cd /tmp/nginx_log/
gzip -f $d.log
#sh -x /usr/local/sbin/nginx_logrotate.sh
# vim /etc/logrotate.d/nginx //借助系统的logrotate工具实现日志切割
/tmp/accesstest.log{ //定义日志路径,可以多个日志
daily //按天归档
missingok //忽略所有错误
rotate 52 //最多存放日志个数为52
compress //日志要压缩
delaycompress //压缩除了当前和最近之外的所有其他版本
notifempty //日志空则不归档
create 644 nobody nobody //定义归档日志的权限及属主和数组
sharedscripts //所有日志共享该脚本
postrotate //后面跟轮换过日志后需运行的命令
[-f /usr/local/nginx/logs/nginx.pid]&&kill -USR1 'cat /usr/local/nginx/logs/nginx.pid'
endscript //end结束
}
#logrotate -f /etc/logrotate.d/nginx //运行这个logrotate日志切割脚本
转载于:https://my.oschina.net/vpirate/blog/651415