-
使用logrotate轮询日志很方便,配置也很简单。
1、建立/etc/logrotate.d/nginx文件vi /etc/logrotate.d/nginx
2、写入如下内容:
/var/log/nginx/*log {
daily rotate 7 missingok notifempty compress sharedscripts postrotate [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid` endscript }注释:
/var/log/nginx/*log:需要轮询日志路径 daily:每天轮询 rotate 7:保留最多7次滚动的日志 missingok:如果日志丢失,不报错继续滚动下一个日志 notifempty:当日志为空时不进行滚动 compress:旧日志默认用gzip压缩 /var/run/nginx.pid:nginx主进程pidsharedscripts:运行postrotate脚本
3、让logrotate每天进行一次滚动,在crontab中添加一行定时脚本。 #crontab -e 59 23 * * * /usr/sbin/logrotate -f /etc/logrotate.d/nginx 每天23点59分进行日志滚动