Rodar logs haproxy

2

Eu tentei algumas coisas, mas ainda não consegui rodar os logs do haproxy eficientemente. Eu preciso para girar os logs quando os arquivos de log cruzam 500 MB de tamanho. Considerando haproxy está servindo grande não. de conexões tcp estáticas, não consigo reiniciar o processo haproxy, embora seja possível fazer uma recarga. O tamanho diário do arquivo de log haproxy normalmente ultrapassa 3 GB na minha máquina. Aqui está um exemplo de uma das máquinas mais recentes em que o tamanho do arquivo de log está crescendo além do limite definido:

ubuntu@server:/mnt/log/haproxy$ ls -lsh
total 4.3G
85M -rw-r----- 1 syslog adm  85M Jun  2 07:13 haproxy.log
2.9G -rw-r----- 1 syslog adm 2.9G Jun  2 06:37 haproxy.log.1
460M -rw-r----- 1 syslog adm 460M Jun  1 06:32 haproxy.log.2.gz
469M -rw-r----- 1 syslog adm 469M May 31 06:42 haproxy.log.3.gz
384M -rw-r----- 1 syslog adm 384M May 30 06:49 haproxy.log.4.gz

ubuntu@server:/mnt/log/haproxy$ cat /etc/logrotate.d/haproxy
/mnt/log/haproxy/haproxy.log {
missingok
copytruncate
notifempty
rotate 50
size 500M
compress
delaycompress
}
    
por Jagbir 02.06.2014 / 09:26

1 resposta

3

O Logrotate não monitora continuamente seus arquivos de log. Normalmente, o logrotate é executado como parte da tarefa cron diária especificada em /etc/crontab , que executa os scripts em /etc/cron.daily . Como tal, está a funcionar como esperado quando é executado, se os ficheiros forem > 500M e forem rodados.

Você precisará executar logrotate com mais freqüência se quiser pegar os arquivos de log mais próximos de 500M. Você pode fazer isso copiando o script /etc/cron.daily/logrotate para /etc/cron.hourly/logrotate .

Isso também significa que outros arquivos de log podem ser rotacionados antecipadamente também.

    
por 02.06.2014 / 10:00