Estou trabalhando no programa que cria um grande arquivo de log.
Eu quero lidar com isso com logrotate.
Esta é uma configuração que eu coloquei para /etc/logrotate.d/
:
/var/log/myproject.log {
hourly
maxsize 1
rotate 6
missingok
notifempty
compress
nocreate
copytruncate
su www-data www-data
}
( /var/log/myproject.log
tem dono www-data
)
Comandos
sudo logrotate -vf /etc/logrotate.conf
e
sudo logrotate -vf /etc/logrotate.d/myproject
gire o log corretamente.
No entanto, depois de chamá-los /etc/cron.hourly
está vazio. O que significa que logrotate não é chamado a cada hora.
Tenho a garantia de ter um
logrotate
script/etc/cron.daily
?O script verifica a frequência da atualização dos arquivos de log. Ou seja, se eu tiver um
logrotate
script/etc/cron.daily
e para algum arquivo de logX
em que/etc/logrotate.d/
eu defino aweekly
configuração, seráX
girado diariamente ou semanalmente?Posso apenas copiar e colar
/etc/cron.daily/logrotate
para/etc/cron.hourly/
? Posso recortar e colar?Devo adicionar
0anacron
arquivo/etc/cron.hourly/
?Devo fazer outra coisa para ativar o registro por hora?
grep -r logrotate /etc/cron*
Respostas:
Não.
De
man logrotate
:Então sim.
Novamente, na página de manual:
Então, sim, você deve mover o script. Inspecionando o
cron.daily
script no meu sistema, acho que movê-lo deve funcionar bem.fonte