logrotate: não roda nem comprime arquivos vazios

1

Acabei de configurar um servidor syslog (r) para receber os logs de vários clientes, o que funciona bem.

apenas o logrotate ainda não está se comportando como intencionado. Eu quero logrotate para criar um novo arquivo de log para cada dia, mas apenas para manter e armazenar ou seja, comprimir arquivos não vazios.

minha configuração logrotate parece atualmente como esta

# sample configuration for logrotate being a remote server for multiple clients
/var/log/syslog
{
rotate 3
daily
missingok
notifempty
delaycompress
compress
dateext
nomail
postrotate
reload rsyslog >/dev/null 2>&1 || true
endscript
}
# local i.e. the system's very own logs: keep logs for a whole month
/var/log/kern.log
/var/log/kernel-info
/var/log/auth.log
/var/log/auth-info
/var/log/cron.log
/var/log/cron-info
/var/log/daemon.log
/var/log/daemon-info
/var/log/mail.log
/var/log/rsyslog
/var/log/rsyslog-info
{
rotate 31
daily
missingok
notifempty
delaycompress
compress
dateext
nomail
sharedscripts
postrotate
reload rsyslog >/dev/null 2>&1 || true
endscript
}
# received i.e. logs from the clients
/var/log/path-to-logs/*/*
{
rotate 31
daily
missingok
notifempty
delaycompress
compress
dateext
nomail
}

o que eu acabo tendo é algum tipo de arquivo "resumido", como filename-datestampDay-Day e arquivos .gz correspondentes. O que eu tenho são arquivos vazios, que são eventualmente zipados.

a diretiva notifempty é de fato responsável por esses arquivos do DayX-DayY, dias em que realmente nada aconteceu?

qual seria uma maneira eficiente de eliminar arquivos de log vazios e seus arquivos .gz, de modo que, eventualmente, só mantenha arquivos de registros / compactados que realmente contenham dados?

    
por Andrew Tobey 20.08.2014 / 11:07

1 resposta

0

Notifempty funciona corretamente, remova o delaycompress da sua configuração.

Eu testei no computador local e ele deve funcionar do jeito que você quer.

Também é um bom comando:

logrotate -d /etc/logrotate.d/<CONFIG_FILE>

Ele mostrará como os logs serão processados sem o processamento real de registros.

    
por 20.08.2014 / 18:48