Meu servidor despeja por causa de enormes arquivos de log do sistema. Ouvi dizer que poderíamos limitar o tamanho do log do sistema adicionando essa linha size 100m
ao arquivo /etc/logrotate.d/rsyslog
para fazer isso.
Agora meu /etc/logrotate.d/rsyslog
fica como abaixo:
/var/log/syslog
{
rotate 7
daily
size 100m
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
Minha pergunta é: como size 100m
funciona com rotate 7
?
Sem size 100m
, rotate 7
e daily
juntos significam que o log do sistema será rotacionado diariamente e manterá 7 dias de pendências. Agora se eu somar size 100m
e algum log diário for maior que 100m
, ele vai rodar imediatamente? Em caso afirmativo, isso significa que posso obter 7 pendências em um dia se algum log diário crescer muito (mais de 700mb
)?
Espero que você perceba que o uso do
logrotate
mecanismo NÃO controla o tamanho do arquivo syslog, apenas o fará todos os dias sempre que o logrotate for executado, pegue o/var/log/syslog
arquivo atual e, se tiver mais de 100 MBytes, compacte e salve o resultado. Um novo/var/log/syslog
arquivo é então criado que começa a receber mensagens desse ponto em diante.