1

Один из наших серверов имеет повторяющееся сообщение об ошибке для Logrotate.

/etc/cron.daily/logrotate: ОШИБКА Не найден файл для /usr /local /Zend /apache2 /logs /error_log

Ротация журнала работает нормально для папки, в которую он должен смотреть. В ошибке упоминается папка, которая не отслеживается.

/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
}

Когда я grep для error_log в папке apache, я нахожу следующее:

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

Обе эти папки не отслеживаются сценарием httpd logrotate. Мы не используем SSL, поэтому там нет журнала. Журнал телефонов есть, но в данный момент он не повернут. Я извлек папку «logrotate.d», чтобы проверить, контролирует ли какой-либо другой файл конфигурации logrotate папку apache, но результата нет.

Ниже содержание /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
}

Вывод /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

Что вызывает эту ошибку? Я понятия не имею, где искать.

1 ответ1

1

Начну с самого начала:

  1. Проверьте вызов logrotate внутри /etc/cron.daily/logrotate чтобы увидеть, используется ли какой-то специальный файл conf. Традиционно используется /etc/logrotate.conf .
  2. Внутри вашего файла .conf найдите директиву include . У вас должно быть одно: include /etc/logrotate.d и grep этого каталога для error_log . Также убедитесь, что в файле .conf нет объявленных системных журналов.

Вы нашли что-нибудь?

Если вы этого не сделали, я предлагаю вам запустить команду logrotate в /etc/cron.daily/logrotate , добавив в нее ключ -d .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .