Форум русскоязычного сообщества Ubuntu


Автор Тема: Неправильно работает logrotate  (Прочитано 1830 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн El Scorpio

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
Неправильно работает logrotate
« : 18 Февраль 2013, 01:34:33 »
Добрый день.
После настройки сервера обнаружилось, что некоторые логи - пустые.
Запуск команды lsof показал, что запись логов производится в файлы, обработанные и удалённые функцией logrotate.

sudo lsof | grep \(deleted\)
rsyslogd  26425        syslog    5w      REG              252,6   105730       5312 /var/log/auth.log.1 (deleted)
rsyslogd  26425        syslog    7w      REG              252,6     6830       5310 /var/log/daemon.log.1 (deleted)
rsyslogd  26425        syslog    8w      REG              252,6       81       5311 /var/log/kern.log.1 (deleted)
rsyslogd  26425        syslog    9w      REG              252,6        0       5314 /var/log/lpr.log.1 (deleted)
rsyslogd  26425        syslog   10w      REG              252,6   711836       5309 /var/log/mail.log.1 (deleted)
rsyslogd  26425        syslog   11w      REG              252,6        0       5313 /var/log/user.log.1 (deleted)
rsyslogd  26425        syslog   12w      REG              252,6   711836       5306 /var/log/mail.info.1 (deleted)
rsyslogd  26425        syslog   13w      REG              252,6        0       5307 /var/log/mail.warn.1 (deleted)
rsyslogd  26425        syslog   14w      REG              252,6        0       5308 /var/log/mail.err.1 (deleted)
rsyslogd  26425        syslog   18w      REG              252,6        0       5315 /var/log/debug.1 (deleted)
rsyslogd  26425        syslog   19w      REG              252,6      359       5316 /var/log/messages.1 (deleted)
Нормальная работа (запись логов в существующие, а не в удалённые файлы) начинается только после перезапуска сервиса rsyslog, который "держал" старые файлы логов

Содержимое файла /etc/logrotate.d/rsyslog
/var/log/syslog
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
reload rsyslog >/dev/null 2>&1 || true
endscript
}

/var/log/mail.info /var/log/mail.warn /var/log/mail.err /var/log/mail.log /var/log/daemon.log /var/log/kern.log /var/log/auth.log /var/log/user.log /var/log/lpr.log /var/log/cron.log /var/log/debug /var/log/messages {
rotate 356
missingok
ifempty
compress
delaycompress
sharedscripts
postrotate
reload rsyslog >/dev/null 2>&1 || true
endscript
daily
}

В чём может быть проблема?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #1 : 18 Февраль 2013, 09:30:52 »
Попробуйте сменить ifempty на noifempty

И не проблема, конечно, но в году 365 суток, а не 356 ;)
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Онлайн El Scorpio

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #2 : 19 Февраль 2013, 03:04:52 »
Попробуйте сменить ifempty на noifempty
Параметр noifempty неизвестен
Пока просто удалил ifempty. Завтра посмотрю, что получится

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #3 : 19 Февраль 2013, 09:09:29 »
notifempty
извините

P.S. что-то я частенько букауки пропускаю... надо быть внимательней
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Онлайн El Scorpio

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #4 : 20 Февраль 2013, 01:09:15 »
Всё равно ошибка продолжается - сегодня ночью, пока вручную сервис rsyslog не перезапустил, файл mail.log оставался пустым, а сообщения записывались в уже "ротированный" файл mail.log.1.
А завтра продолжали бы записываться в удалённый файл

P.S.
По-умолчанию ротация логов настроена на полночь

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13750
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #5 : 20 Февраль 2013, 08:06:58 »
Попробуйте вручную сделать
sudo service rsyslog reloadНа что будет ругаццо?
Попробуйте > /dev/null 2>&1 заменить на >> /var/log/logrotate.log 2>&1
И после срабатывания посмотрите на что жалуется.
Только предварительно создайте этот файл.
Принимаю благодарности в WMR и WMZ на кошельки:
R158160676909 и Z313280060764

Онлайн El Scorpio

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
Re: Неправильно работает logrotate
« Ответ #6 : 21 Февраль 2013, 08:35:46 »
Цитировать
Попробуйте вручную сделать
sudo service rsyslog reload
На что будет ругаццо?
Ни на что не ругается.

Изменил вывод сообщений в файл. Завтра посмотрю результат.

 

Страница сгенерирована за 0.214 секунд. Запросов: 24.