Coloquei um logrotate
arquivo de configuração /etc/logrotate.d/
e esperava que os logs girassem em um tempo consistente; no entanto, eles não ... os tempos de rotação do log são aparentemente aleatórios +/- uma hora.
Por que os tempos de início da rotação do log são aleatórios e como posso mudar isso?
Informativo: meu arquivo de configuração do logrotate fica assim ...
/opt/backups/network/*.conf {
copytruncate
rotate 30
daily
create 644 root root
dateext
maxage 30
missingok
notifempty
compress
delaycompress
postrotate
## Create symbolic links in daily/
PATH=`/usr/bin/dirname $1`;
FILE=`/bin/basename $1`;
/bin/ln -s $1 $PATH/daily/$FILE
endscript
}
Não é a resposta, mas recentemente eu estava tentando descobrir isso por outro motivo e não consegui encontrar nenhuma documentação sobre como o Redhat 6, Centos, etc, executa o cron. Aqui está o que eu fiz engenharia reversa:
crond
ainda é executado na inicialização do sistema - ele carrega todos os arquivos no/etc/cron.d
/etc/cron.d/0hourly
executa todos os arquivos em/etc/cron.hourly
/etc/cron.hourly/0anacron
correanacron
/etc/anacrontab
/etc/anacrontab
pistas (VIArun-parts
)/etc/cron.daily
,/etc/cron.weekly
e/etc/cron.monthly
Portanto, é mais complicado do que nas versões anteriores.
É possível restaurar o comportamento antigo adicionando as entradas horárias, semanais e mensais novamente
/etc/crontab
(que agora estão vazias), masanacrontab
também precisará ser atualizado. Isso pode ou não interromper futuras atualizações ...fonte
Outras respostas abrangem como, mas não necessariamente, o porquê . O motivo é impedir que tarefas agendadas noturnas simultâneas matem sua infraestrutura. (Imagine armazenamento compartilhado, ou talvez 1000 servidores em execução em um host de VM ou apenas trabalhos noturnos que atinjam algum serviço em rede.)
Eu sempre resolvo esse problema para a rotação de logs em específico em meus sistemas, movendo o trabalho específico de rotação de logs de
cron.daily
para uma entrada com um tempo embutidocron.d
. Dessa forma, você ainda obtém execuções escalonadas para serviços como updatedb, onde o tempo realmente não é essencial, mas sim tempos consistentes para a rotação de logs.Obviamente, quando você chegar a um determinado tamanho, todos os seus logs serão enviados do host para um servidor de logs de qualquer maneira e, em seguida, o tempo de rotação dos arquivos nos nós individuais será menos importante, pois eles existem apenas para conveniência (geralmente seguindo o final do arquivo) ou como um recurso de último recurso. Definitivamente , você definiria a rotação no servidor de log como sistemática.
fonte