Это странная проблема.
Я тестировал сервисы chrony / ntp на виртуальной машине RHEL7 и сбрасывал время и хост. Как только я был удовлетворен этим, я проверил /var/log/messages
и понял, что это не было изменено некоторое время.
Теперь независимо от того, что я делаю, ничего не регистрируется, за исключением случаев, когда я перезапускаю сам сервис rsyslog; когда я получаю это:
Apr 15 13:59:43 mymachine1 rsyslogd: [origin software="rsyslogd" swVersion="7.4.2" x-pid="2847" x-info="http://www.rsyslog.com"] exiting on signal 2.
Apr 15 13:59:59 mymachine1 rsyslogd: [origin software="rsyslogd" swVersion="7.4.2" x-pid="2853" x-info="http://www.rsyslog.com"] start
Apr 15 14:00:11 mymachine1 rsyslogd-3000: sd_journal_get_cursor() failed: 'Cannot assign requested address'
Попытка logger test
сделать что-то вроде « не регистрировать», кажется, ничего кроме собственных сообщений rsyslog. Когда я запускаю rsyslog вручную в -n -N1
качестве аргументов, я получаю:
rsyslogd: version 7.4.2, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye
Просто кажется, что ничто не может войти в систему через rsyslog по какой-то причине. И вторая идентичная виртуальная машина на том же хосте (которая не проходила одинаковый круг многократного отключения ntp, меняя дату и перезагружаясь несколько раз) с теми же файлами журналов rsyslog.conf, просто отлично.
На данный момент дата / время верны, хрония включена и работает, и я несколько раз перезагружался - после 30 секунд сообщений ядра больше ничего не регистрируется снова.
Мысли?
/etc/rsyslog.conf
и/etc/rsyslog.d
каталоги. Похоже, у вас ничего не настроено для маршрутизации в конкретный файл журнала. Вы также можете попытаться указать сообщение системного журнала сEMERG
приоритетом, чтобы проверить, получится ли это. Пример:logger -p EMERG not really an emergency
systemd
( для которого RHEL7 мигрировал, IIRC). Можете ли вы проверить,journalctl -b
попадают ли ваши журналы в журнал systemd?Ответы:
Не прямое решение, но я бы позволил некоторую отладку, чтобы увидеть, что происходит за кулисами.
Идея № 1 - отладчик журнала
Для начала, когда вы запускаете свои
logger
команды, вы можете делать их так, выводя сообщения в STDERR.Идея № 2 - проверить ваш файл конфигурации
Вы также можете попробовать проверить ваш конфигурационный файл rsyslog:
Идея № 3 - Включите отладку rsyslogd
Также я бы попробовал включить отладку
rsyslogd
демона для дальнейшего понимания.Подтверждение информации о версии
Подтвержденная ошибка и обходной путь
ОП представил это как ошибку в Red Hat.
Ошибка была охарактеризована следующим образом:
На что один из разработчиков ответил:
источник
В моем случае
systemctl restart systemd-journald
помогло, потому чтоисточник
Попробуйте проверить rsyslog conf с помощью: rsyslogd -f /etc/rsyslog.conf -N 1
Если все в порядке, попробуйте перезапустить systemd-journald.socket с помощью: systemctl, перезапустите systemd-journald.socket,
чтобы проверить команду «logger». если rsyslog работает или нет: регистратор "привет"
источник