Problema de logrotate do Varnish

2

Eu tenho isso em logrotate.d/varnish file:

/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
        }

E isso no meu arquivo /etc/rc.local :

varnishncsa -a -w /var/log/varnish/access.log -D -P /var/run/varnishncsa.pid

Mas quando o logrotate cria um novo arquivo access.log , ele permanece em branco. Eu tenho que fazer sh /etc/rc.local para logs a serem salvos nesse arquivo. Como o logrotation acontece semanalmente, eu tenho que executar esse rc.local toda semana para obter os logs salvos no arquivo access.log . Qual pode ser o problema aqui?

    
por nixnotwin 09.08.2011 / 17:09

1 resposta

2

Não sei absolutamente nada sobre verniz, mas com certeza parece que você deve enviar um SIGHUP para fazer a rotação do log, não um SIGUSR1.

Um novo arquivo de log em branco é um bom indicador de que o daemon não está recebendo a mensagem de que deveria fechar seu antigo arquivo de log e mudar para um novo.

    
por 11.08.2011 / 03:27