Logrotate não roda logs

1

Eu quero usar logrorate . Os logs são gravados em /var/log/curLog/log.log . Conforme mencionado na documentação, eu crio um novo arquivo em /etc/logrotate.d/ com o nome currentLog . O conteúdo de currentLog é:

/var/log/curLog/log.log{
    size 100k,
    rotate 10,
    daily,
    compress,
    notifempty
    missingok
}

Mas os logs aumentam acima do tamanho de 100k e nada acontece. Devo reiniciar algum serviço ou fazer algumas outras operações?

    
por Or Smith 25.08.2014 / 10:22

1 resposta

0

Você tem 3 opções que ditam quando a rotação ocorre.

size 100k   # if size > 100k
daily       # once a day
notifempty  # not if == 0k

Remova o daily e ele deve ocorrer mais regularmente quando o arquivo for > 100k

Segundo, se o processo que cria o arquivo de log for um daemon que mantém o arquivo aberto, você provavelmente precisará reiniciar esse processo ou, pelo menos, sinalizá-lo para abrir um novo arquivo de log assim que o logrotate mover o antigo.

Por exemplo, o Apache httpd pode graciosamente recarregar a configuração e reabrir os arquivos de log com o comando kill -SIGUSR1 <pid> ou /usr/sbin/apachectl graceful em vez de ser completamente reiniciado.

postrotate
        /usr/sbin/apachectl graceful > /dev/null
endscript
    
por 25.08.2014 / 10:55

Tags