我有一个如下所示的配置文件:
/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 文件。几分钟后我手动运行脚本,它开始正常。
根据我发现的文档,后旋转不应该在压缩完成之前开始。不是这样吗?这是 Debian Squeeze 附带的 logrotate 中的错误,还是我只是错过了一些非常简单的东西?
你有没有试过这个:
看一下delaycompress选项,当然没有“*”HTH
以防万一有人想知道,无论手册页怎么说,压缩都会在旋转后触发。