linux – Logrotation – 过早发射的postrotate?

前端之家收集整理的这篇文章主要介绍了linux – Logrotation – 过早发射的postrotate?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个看起来像这样的配置文件

/var/log/Nginx/*.log {
        daily
        missingok
        rotate 90
        dateext
        compress
        notifempty
        create 644 root adm
        sharedscripts
        postrotate
                [ ! -f /var/run/Nginx.pid ] || kill -USR1 `cat /var/run/Nginx.pid`
                /usr/local/bin/synclogs.sh
        endscript }

synclogs.sh应该在所有日志文件都已旋转和压缩时运行.该脚本确实成功启动,但是当它开始运行时,程序找不到logrotate应该生成的任何.gz文件.几分钟后我手动运行脚本,开始很好.

根据我发现的文档,postrotate不应该在压缩完成之前启动.那不是这样吗?这是Debian Squeeze中提供的logrotate中的错误还是我错过了一些非常简单的东西?

最佳答案
你试过这个:

/var/log/Nginx/*.log {
        daily
        missingok
        rotate 90
        dateext
        compress
        **delaycompress**
        notifempty
        create 644 root adm
        sharedscripts
        postrotate
                [ ! -f /var/run/Nginx.pid ] || kill -USR1 `cat /var/run/Nginx.pid`
                /usr/local/bin/synclogs.sh
        endscript }

看一下delaycompress选项,当然没有“*”
HTH

猜你在找的Nginx相关文章