Dependendo do seu sistema operacional. Algumas distribuições Linux (todas?) Têm um diretório no /etc/cron.hourly
qual você pode colocar tarefas cron para serem executadas a cada hora.
Outros têm um diretório /etc/cron.d/
. Lá você pode colocar cron-jobs que devem ser executados como qualquer usuário especial com as configurações usuais de cron de uma entrada do crontab (e você deve especificar o nome de usuário).
Se você usar um desses em vez do script de rotação padrão do log /etc/cron.daily/
, copie esse script cp /dev/null
para a posição original. Caso contrário, ele será reativado por uma atualização de patch de logrotate.
Para uma rotação horária adequada, verifique também se a dateext
diretiva não está definida. Nesse caso, por padrão, o primeiro arquivo girado obterá a extensão da data atual como AAAAMMDD. Em seguida, na segunda vez em que o logrotate for ativado no mesmo dia, ele simplesmente ignora a rotação, mesmo que o size
limite tenha excedido.
O motivo é que o novo nome do arquivo a ser rotacionado já existe e o logrotate não anexa o conteúdo ao arquivo antigo existente. Por exemplo, no RHEL e no CentOS, a dateext
diretiva é fornecida por padrão em /etc/logrotate.conf
. Depois de remover ou comentar essa linha, os arquivos girados simplesmente obterão um número em execução como extensão até atingir o rotate
valor. Dessa forma, é possível realizar várias rotações por dia.