Digamos que eu queira logrotate quando o tamanho do arquivo for 1kb. Antes da execução, se o tamanho do arquivo de log for 4kb, espero que o logrotate crie 4 arquivos de log diferentes.
Antes:
something.log (4kb)
O que eu espero que aconteça.
something.log (0kb)
something.log.1 (1kb)
something.log.2 (1kb)
something.log.3 (1kb)
something.log.4 (1kb)
Mas atualmente o que está acontecendo é
something.log (0kb)
something.log.1 (4kb)
Mesmo que eu tenha dado o tamanho para ser 1k.
O programa que lê os logs não pode lidar com arquivos maiores que um determinado tamanho, então quero usar o logrotate para manter o tamanho sob controle.
Exemplo de arquivo confing logrotate que estou usando
/pathme/something/data/*/logs/*.log {
su username1 username1
missingok
rotate 10
notifempty
size 1k
copytruncate}
O Logrotate será, por padrão, executado apenas pelo cron uma vez por dia, observe sua configuração e aja de acordo. Se um arquivo de log exceder o tamanho máximo que você disse para ter na configuração do logrotate durante (digamos) a tarde, o logrotate não fará nada a respeito até que seja executado. Isso normalmente acontece por volta da meia-noite.
Se você precisar de precisão nos tamanhos dos arquivos de log, sugiro que execute o logrotate com mais frequência (a cada 30 minutos ou o que for) e, em seguida, configure o logrotate com um valor menor do que o tamanho máximo necessário para evitar que os arquivos de log fiquem muito grandes para o programa que precisa lê-los.
Você não especificou o sistema operacional, mas os trabalhos cron diários do sistema geralmente estão incluídos
/etc/cron.daily
ou semelhantes.