Eu tinha um arquivo de configuração logrotate
configurado para um log (vamos chamá-lo Log1 ). Está funcionando bem e o log está girando todos os dias conforme o esperado.
Ontem eu clonei esta configuração e a modifiquei para mais três arquivos de log Log2, Log3 e Log4 . Esses arquivos de log já existem no disco e estão sendo ativamente gravados em.
No entanto, quando marcado hoje, os três arquivos de log não foram girados. Eu esperava que eles rodassem junto com o primeiro arquivo de log Log1 . Mas apenas Log1 foi girado, e o restante ( Log2 para Log4 ) não foi tocado.
Se eu colocar novos arquivos de configuração para logrotate
, eu tenho que executar um comando para "ativá-los", então logrotate
começará a rotacionar os arquivos de log? Eu acho que é uma cron
trabalho rodando às 4 da manhã todos os dias, ele irá automaticamente pegar os novos arquivos e rodar os arquivos. Existe algum tipo de ativação manual necessária?
O que é estranho é que o arquivo /var/lib/logrotate.status
parece mostrar (com a data de hoje) que todos os quatro arquivos de log foram observados por logrotate
. Então, por que logrotate
pulou os três novos arquivos de log que obviamente precisam ser rotacionados?
Arquivo de configuração:
/path/to/Log1.log {
compress
compresscmd /usr/bin/bzip2
compressext .bz2
compressoptions -9
copytruncate
daily
dateext
delaycompress
extension .log
notifempty
missingok
nomail
olddir Log1
rotate 100
maxage 60
}
Não deve haver nada de errado com o arquivo de configuração, pois funciona bem para Log1 . O diretório olddir
já está criado para todos os registros.
Ao executar logrotate -d
(modo de depuração), ele diz log does not need rotating
para todos os quatro logs. Eu entendo que isso está correto para Log1
já que ele já foi girado, mas e os outros?
Isso tem algo a ver com after 1 days
? O logrotate
marca primeiro a data do novo arquivo no arquivo logrotate.status
, então só gira quando um dia já passou desde a última marca? Como o arquivo de status é usado por logrotate
?