是否可以让 logrotate 将最近一周的日志保留在当前文件中?
例如 :
errors.log 包含 30 天的日志
在日志旋转执行之后,我会:
errors.log 包含最近 7 天的日志
和
errors.log.1.gz 与其他 23 天一起压缩。
那可能吗?
答案1
weekly
rotate 4
compress
接下来是 postrotate 脚本,执行以下操作(未经测试):
TMP=$(mktemp)
zcat /var/log/errors.log.{4,3,2,1}.gz > $TMP
mv $TMP /var/log/errors.log.1
gzip /var/log/errors.log.1
干杯。