Logrotate 不旋转日志

Logrotate 不旋转日志

我想用对数比率。日志写入到/var/log/curLog/log.log.正如文档中提到的,我创建了一个/etc/logrotate.d/名为的新文件currentLog。其内容currentLog为:

/var/log/curLog/log.log{
    size 100k,
    rotate 10,
    daily,
    compress,
    notifempty
    missingok
}

但日志大小增加到超过 100k 时,什么也没有发生。我应该重新启动一些服务还是做一些其他操作?

答案1

您有 3 个选项来决定轮换发生的时间。

size 100k   # if size > 100k
daily       # once a day
notifempty  # not if == 0k

删除 ,daily当文件 > 100k 时,它应该更频繁地发生

其次,如果创建日志文件的进程是一个使文件保持打开状态的守护进程,那么您很可能需要重新启动该进程,或者至少在 logrotate 移动旧日志文件后发出信号以打开新的日志文件。

例如,Apache httpd 可以使用kill -SIGUSR1 <pid>/usr/sbin/apachectl graceful命令慷慨地重新加载配置并重新打开日志文件,而不是完全重新启动。

postrotate
        /usr/sbin/apachectl graceful > /dev/null
endscript

相关内容