我有一个configuration文件,如下所示:
/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应该运行。 脚本确实启动成功,但是当它开始运行时,程序没有find任何logrotate应该创build的.gz文件。 几分钟后我手动运行脚本,它踢得很好。
根据我发现的文档,postrotate不应该启动,直到压缩完成。 情况不是这样吗? 这是一个在Debian挤压发布的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
如果有人想知道的话,尽pipe手册页说了什么,但是在后面追赶火焰。