O cron não estava sendo executado. Depois de um reinício, o cron funcionou e o logrotate também começou a funcionar.
Temos o logrotate funcionando para vários servidores Centos. Um novo servidor tem uma configuração um pouco diferente e, por algum motivo, o logrotate não funciona para o serviço httpd. Quando eu inicio manualmente, funciona como esperado. Eu configurei isso na semana passada, e isso não aconteceu uma vez em quatro dias.
O arquivo /etc/cron.daily/logrotate existe, então eu acho que o cron job deve rodar diariamente.
Conteúdo do /etc/logrotate.conf
# see "man logrotate" for details # rotate log files weekly weekly # keep 4 weeks worth of backlogs rotate 4 # create new (empty) log files after rotating old ones create # use date as a suffix of the rotated file dateext # uncomment this if you want your log files compressed #compress # RPM packages drop log rotation information into this directory include /etc/logrotate.d # no packages own wtmp and btmp -- we'll rotate them here /var/log/wtmp { monthly create 0664 root utmp minsize 1M rotate 1 } /var/log/btmp { missingok monthly create 0600 root utmp rotate 1 } # system-specific logs may be also be configured here.
Conteúdo do /etc/logrotate.d/httpd. Suponho que isso substitua as configurações do logrotate.conf.
/var/log/httpd/*log { daily compress rotate 20 missingok notifempty sharedscripts delaycompress postrotate /sbin/service httpd reload > /dev/null 2>/dev/null || true endscript }
Por que isso não funciona?