logrotate管理nginx日志

logrotate脚本定时每日执行,脚本通常在 /etc/cron.daily/

logrotate对nginx的配置在,/etc/logrotate.d/nginx

举例:

/var/log/nginx/*/*.log {

daily

missingok

rotate 5

compress

nodelaycompress

notifempty

create 0644 nginx adm

sharedscripts

prerotate

[ -f /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`

endscript

}

daily,每日轮询,其他参数还有weekly、monthly、yearly

missingok,日志路径不存在时,不报错

rotate 5,如果时间是daily,rotate 5代表保留近5天的日志,之前的日志删掉

compress,记录完成的日志以gzip格式压缩

nodelaycompress,在每日轮询之后压缩日志

notifempty,日志为空就不轮询

create 0644 nginx adm,日志模式是0644,owner是nginx,group是adm

sharedscripts,多日志共用同一脚本,不用重启服务多次

prerotate,命令开始

endscript,命令结束

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容