Logrotate 程序是一个日志文件管理工具。用于分割日志文件,压缩转存、删除旧的日志文件,并创建新的日志文件。
Logrotate是基于CRON来运行的,其脚本是/etc/cron.daily/logrotate,日志轮转是系统自动完成的。
配置文件一般放在 /etc/logrotate.d/
文件夹下
举例配置格式如下
vim /etc/logrotate.d/nginx
/var/log/weblog/*.log {
daily //指定转储周期为每天
compress //通过gzip 压缩转储以后的日志
rotate 7 //保存7天的日志
missingok //如果日志文件丢失,不要显示错误
notifempty //当日志文件为空时,不进行轮转
dateext //使用当期日期作为命名格式,exp: nginx_access.log-20190120
sharedscripts //运行postrotate脚本
postrotate //执行的指令
if [ -f /run/nginx.pid ]; then
kill -USR1 `cat /run/nginx.pid`
fi
endscript //结束指令
}
Logrotate可以由自动或者手动触发日志轮转:
logrotate -f /etc/logrotate.d/nginx
FYI: