Включен ли rsyslog при использовании journald?

Я заметил, что сообщения журнала дублируются в journald и / var / log / messages в моей системе CentOS 7. Сначала я думал, что это был параметр журнала ForwardToSyslog (который по умолчанию имеет значение «да» в установленной версии), который вызвал такое поведение, но установка для него значения «нет» не имела значения.

Очевидно, что если я остановлю службу rsyslog, запись будет в / var / log / messages (и, возможно, некоторые другие журналы останавливаются, но меня беспокоит, когда я это делаю, если rsyslog регистрирует вещи, которых нет в journald.

Rsyslog регистрирует только то, что он читает из journald, или регистрирует другое тоже?

Выдержка из /etc/rsyslog.conf:

# The imjournal module bellow is now used as a message source instead of imuxsock.
$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal # provides access to the systemd journal

...

# Turn off message reception via local log socket;
# local messages are retrieved through imjournal now.
$OmitLocalLogging on
1
задан 26 March 2019 в 10:29
2 ответа

Из Документация Red Hat с использованием журнала

Журнал - это компонент systemd, который отвечает за просмотр и управление файлами журнала. Его можно использовать параллельно или вместо традиционного демона syslog, такого как rsyslogd.

Из Red имел документацию, взаимодействие журнала rsyslog

По умолчанию rsyslogd использует модуль imjournal в качестве режима ввода по умолчанию для файлов журнала.

Из Документация Red Hat, хранилище журналов

При включенном постоянном ведении журнала файлы журнала хранятся в / var / log / journal, что означает, что они сохраняются после перезагрузки. Затем журнал может заменить rsyslog для некоторых пользователей (но см. Введение в главу).

На основании этого я бы сказал, что rsyslog является избыточным, если включено постоянное хранилище journald и нет приложений, которые зависят от конкретных файлов и формата, создаваемых rsyslog, содержимое такое же.

1
ответ дан 3 December 2019 в 23:06

Мы решили эту проблему, не создавая /var/log/journal (чтобы содержимое journalctl было эфемерным) и настроив rsyslog для хранения всего из journald в новом файле журнала. Нам часто приходится отлаживать наши развертывания после смерти, и поиск по файлам журналов (для нас, старожилов) намного проще, чем изучение нового непонятного командного языка.

:syslogtag, startswith, "systemd" /var/log/systemd.log

Мы также узнали, что файл "/etc/rsyslog.d/listen.conf", устанавливаемый systemd, является неотъемлемой частью связующего; один из наших компонентов случайно уничтожил

$IncludeConfig /etc/rsyslog.d/*.conf

, и мы ничего не получили от journald.

1
ответ дан 19 August 2020 в 20:28

Теги

Похожие вопросы