我在logrotate.d/varnish文件中有这个:
/var/log/varnish/*log { create 640 http log compress postrotate /bin/kill -USR1 `cat /var/run/varnishncsa.pid 2>/dev/null` 2> /dev/null || true endscript }
这在我的/etc/rc.local文件中:
varnishncsa -a -w /var/log/varnish/access.log -D -P /var/run/varnishncsa.pid
但是当logrotate创build一个新的access.log文件时,它仍然是空白的。 我必须做sh /etc/rc.local来保存日志。 由于logrotation每周都会发生,我必须每周执行一次rc.local来获取保存在access.log文件中的日志。 这里可能是什么问题?
我对清漆一无所知,但它确实看起来应该发送一个SIGHUP做日志旋转,而不是SIGUSR1。
一个新的空白日志文件是一个非常好的指标,守护进程没有得到它应该closures它的旧日志文件并切换到新的日志文件的消息。