在 centos 7.3 上旋转日志丢失旧文件

Rotate log lost old file on centos 7.3

我为 apache 配置了每天轮换日志。

当新的一天到来时,示例 00:00AM 今天 (07/31/2017),创建了新的 access.log 文件,旧的 access.log 文件更改为 access.log-31072017

问题在这里,明天,access.log 文件将更改为 access.log-01082017(是),新的 access.log 将创建(是),但是 access.log- 31072017 文件丢失(哎哟)。

而且,我执行了:

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

Log文件记录在/home/example.com/logs/路径

如何保留前几天的文件

提前致谢

尝试将 /etc/logrotate.conf 中的值 rotate 改回 4。尽管 logrotate.conf 中有注释 这不是日志保留的周数,而是文件在删除前轮换的次数。

logrotate.conf 的联机帮助页解释得更清楚:

rotate count

Log files are rotated count times before being removed or mailed to the address specified in a mail directive. If count is 0, old versions are removed rather than rotated. Default is 0.

将其设置为 4 应该将旧日志保留四天。