logrotate a cada 2 horas

4

Estou tentando fazer registros de httpry a cada 2 horas. Eu adicionei isso ao meu arquivo logrotate.conf :

/var/log/httpry/*.log {
    rotate 1
    weekly
    create 640 root admin
    missingok
    notifempty
}

Eu tentei mudar semanalmente para a hora (ainda preciso a cada 2 horas), mas não funciona. Eu li para copiar um script de cron.daily para cron.hourly, mas todos os meus arquivos cron estão vazios.

Como posso criar um novo arquivo de log a cada 2 horas?

    
por o.o 04.08.2015 / 21:01

1 resposta

3

Eu já vi esse truque usado antes em um blog :

Crie um arquivo de configuração para logrotate, vamos chamá-lo de httpry.conf

/var/log/httpry/*.log {
    size 2
    rotate 84
    compress
    missingok
    copytruncate
}

Então, do cron (pode ser necessário estar no crontab do root, dependendo das permissões e propriedade dos arquivos de log), um crontab de:

0 */2 * * * logrotate -f /path/to/httpry.conf

EDIT: para descrever a edição de crontab para OP

Um crontab pode ser criado para sua conta de usuário emitindo crontab -e . Se você deseja editar um crontab de um usuário específico, como root: crontab -e user ou em alguns sistemas crontab -e -u user . Você será então colocado em um EDITOR que permitirá que você edite o crontab, e o processamento do arquivo irá checar erros do crontab (dando um erro se incorreto) ou instalando o crontab se estiver correto.

A opção rotate 84 , como ele descreve no blog, é manter uma semana de registros. (Intervalos de 24/2 horas = 12 logs por dia, 12 * 7 = 84 .. ou 1 semana no valor de logs).

    
por 04.08.2015 / 21:10