使用cron执行了一个定时任务,任务执行时输出日志到/var/log/video_slice_cron.log,为了避免无休止的产生日志浪费硬盘空间,使用logrotate进行管理日志文件。

1、配置文件:/etc/logrotate.d/video_slice
配置内容如下:
/var/log/video_slice_cron.log {
#指定以 root 用户和 root 组身份运行
su root root
# 每天执行一次轮转
daily
# 最多保留7份历史日志
rotate 7
# 对旧日志进行gzip压缩,节省磁盘空间
compress
# 可选:延迟一次压缩,方便排查最新的一份历史日志
delaycompress
# 日志文件不存在时不报错
missingok
# 当日志为空时跳过轮转操作
notifempty
#轮转后创建新文件,权限为0644,属主www-data,属组www-data
create 0644 www-data www-data
}
2、验证配置
配置完成后,使用以下调试命令验证配置是否正确,这个验证不会实际执行轮转:
sudo logrotate -d /etc/logrotate.d/video_slice如果需要强制立即测试轮转效果:
sudo logrotate -f /etc/logrotate.d/your_config_file