Erro de logrotate: nenhum arquivo encontrado

1

Um dos nossos servidores tem uma mensagem de erro recorrente para o Logrotate.

/etc/cron.daily/logrotate: ERROR No file found for /usr/local/Zend/apache2/logs/error_log

A rotação do log está funcionando normalmente para a pasta em que ele deve procurar. O erro menciona uma pasta que não é monitorada.

/var/log/apache2/*.log /var/log/apache2/*/*.log {
  daily
  rotate 50
  compress
  delaycompress
  missingok
  notifempty
  sharedscripts
  postrotate
        /usr/local/Zend/apache2/bin/apachectl graceful
  endscript
}

Quando eu pego error_log na pasta do apache, encontro o seguinte:

conf/extra/httpd-ssl.conf: ErrorLog "/usr/local/Zend/apache2/logs/error_log"
conf/extra/httpd-vhosts.conf: ErrorLog /www/phones/logs/error_log

Essas duas pastas não são monitoradas pelo script httpd logrotate. Nós não usamos SSL, então não há log lá. O log de telefones está lá, mas não foi girado atualmente. Eu grepped a pasta logrotate.d para ver se algum outro arquivo de configuração logrotate monitora a pasta do apache, mas nenhum resultado.

Abaixo do 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
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}

Saída de /usr/sbin/logrotate /etc/logrotate.conf -d

reading config file /etc/logrotate.conf
including /etc/logrotate.d
reading config file dirmngr
reading config info for /var/log/dirmngr/dirmngr.log 
reading config file fail2ban
reading config info for /var/log/fail2ban.log 
reading config file httpd
reading config info for /var/log/apache2/*.log /var/log/apache2/*/*.log 
reading config file ppp
reading config info for /var/log/ppp/connect-errors 
reading config file psacct
reading config info for /var/account/pacct 
reading config file rpm
reading config info for /var/log/rpmpkgs 
reading config file rsyslog
reading config info for /var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron 
reading config file snmpd
reading config info for /var/log/snmpd.log 
reading config file wpa_supplicant
reading config info for /var/log/wpa_supplicant.log 
reading config file yum
reading config info for /var/log/yum.log 
reading config info for /var/log/wtmp 
reading config info for /var/log/btmp 

Handling 12 logs

rotating pattern: /var/log/dirmngr/dirmngr.log  weekly (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/dirmngr/dirmngr.log
  log /var/log/dirmngr/dirmngr.log does not exist -- skipping

rotating pattern: /var/log/fail2ban.log  30720 bytes (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/fail2ban.log
  log does not need rotating
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/apache2/*.log /var/log/apache2/*/*.log  after 1 days (50 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/apache2/access.log
  log does not need rotating
considering log /var/log/apache2/voip-access.log
  log does not need rotating
considering log /var/log/apache2/voip-error.log
  log does not need rotating
considering log /var/log/apache2/zoo-access.log
  log does not need rotating
considering log /var/log/apache2/zoo-error.log
  log does not need rotating
considering log /var/log/apache2/error.log
  log does not need rotating
considering log /var/log/apache2/trs_error.log
  log does not need rotating
considering log /var/log/apache2/market-access.log
  log does not need rotating
considering log /var/log/apache2/market-error.log
  log does not need rotating
considering log /var/log/apache2/shop/staging-access.log
  log does not need rotating
considering log /var/log/apache2/shop/staging-error.log
  log does not need rotating
considering log /var/log/apache2/shop/shop-access.log
  log does not need rotating
considering log /var/log/apache2/shop/shop-error.log
  log does not need rotating
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/ppp/connect-errors  after 1 days (5 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/ppp/connect-errors
  log /var/log/ppp/connect-errors does not exist -- skipping

rotating pattern: /var/account/pacct  after 1 days (31 rotations)
empty log files are not rotated, old logs are removed
considering log /var/account/pacct
  log does not need rotating
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/rpmpkgs  weekly (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/rpmpkgs
  log does not need rotating

rotating pattern: /var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron  weekly (4 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/messages
  log does not need rotating
considering log /var/log/secure
  log does not need rotating
considering log /var/log/maillog
  log does not need rotating
considering log /var/log/spooler
  log does not need rotating
considering log /var/log/boot.log
  log does not need rotating
considering log /var/log/cron
  log does not need rotating
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/snmpd.log  weekly (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/snmpd.log
  log /var/log/snmpd.log does not exist -- skipping
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/wpa_supplicant.log  30720 bytes (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/wpa_supplicant.log
  log /var/log/wpa_supplicant.log does not exist -- skipping

rotating pattern: /var/log/yum.log  yearly (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/yum.log
  log does not need rotating

rotating pattern: /var/log/wtmp  monthly (1 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/wtmp
  log does not need rotating

rotating pattern: /var/log/btmp  monthly (1 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/btmp
  log /var/log/btmp does not exist -- skipping

O que causa esse erro? Eu não tenho ideia de onde procurar.

    
por SPRBRN 21.01.2015 / 10:10

1 resposta

1

Vou começar do começo:

  1. Verifique a chamada para logrotate dentro de /etc/cron.daily/logrotate para ver se algum arquivo conf especial é usado. Tradicionalmente, /etc/logrotate.conf é usado.
  2. Dentro do seu arquivo .conf , procure pela diretiva include . Você deve ter um: include /etc/logrotate.d e grep este diretório para error_log . Além disso, verifique se não há registros específicos do sistema declarados dentro do arquivo .conf .

Você encontrou alguma coisa?

Se você não fez isso, sugiro que execute o comando logrotate encontrado dentro de /etc/cron.daily/logrotate , adicionando a opção -d a ele.

    
por 21.01.2015 / 11:10