我正在考虑切换我的日志旋转设置为每小时旋转日志,而不是每天。我想我已经准备好了配置,但想检查配置是否会触发重新加载/重新启动进程的后置选项?
我在ubuntu16.04上运行这个命令,并将我的配置从/etc/cron.day复制到/etc/cron.hourly。
下面是logrotate.d/nginx文件中的配置:
/var/log/nginx/*/*.log {
hourly
missingok
rotate 720
compress
delaycompress
notifempty
create 640 nginx adm
sharedscripts
postrotate
if [ -f /var/run/nginx.pid ]; then
kill -USR1 `cat /var/run/nginx.pid`
fi
endscript
}
如果这确实扼杀了这个过程,有什么方法可以绕过这个步骤吗?
发布于 2019-01-27 11:41:20
您可以看到的命令:
kill -USR1 `cat /var/run/nginx.pid`
实际上并不会扼杀这个过程。
相反,kill
向nginx发送具有特定含义的特定信号“USR1
“,并告诉nginx主进程重新打开它的日志文件。
这实际上意味着nginx开始写入新的日志文件。
对于其他一些程序,这些程序不是作为适当的守护进程设计的,并且不理解这个信号,这可能是一个问题,您必须杀死它们并重新启动它们。这不适用于NGinx。
https://serverfault.com/questions/950978
复制相似问题