我每天都为apache配置旋转日志。
当新的一天到来时,例如今天00:00 AM(07/31/2017),新的access.log文件已创建,旧的access.log文件已更改为access.log-31072017
问题在于,明天,access.log文件将更改为access.log-01082017(是),新的access.log将创建(是),但access.log-31072017文件丢失(ouch)。
而且,我表演了:
vi /etc/logrotate.d/httpd
插入文件结尾
/home/*/logs/*log{
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
endscript
}
旋转配置
vi /etc/logrotate.conf
将weekly
更改为daily
将rotate 4
更改为rotate 1
日志文件记录在/home/example.com/logs/
路径
如何保留前几天的文件
感谢提前
答案 0 :(得分:1)
尝试将 /etc/logrotate.conf 中的值rotate
更改回4.尽管 logrotate.conf 中的注释不是数量保留日志的周数,但文件在删除之前轮换的次数。
logrotate.conf的联机帮助页更清楚地解释了这一点:
旋转 计数
日志文件在被删除或邮寄到mail指令中指定的地址之前会被轮换计数次数。如果count为0,则删除旧版本 而不是旋转。默认值为0.
将其设置为4应该将旧日志保留四天。