Я заметил, что сообщения журнала дублируются в 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
Из Документация Red Hat с использованием журнала
Журнал - это компонент systemd, который отвечает за просмотр и управление файлами журнала. Его можно использовать параллельно или вместо традиционного демона системного журнала, такого как rsyslogd.
Из У Red была документация, взаимодействие журнала rsyslog
По умолчанию rsyslogd использует модуль imjournal в качестве режима ввода по умолчанию для файлов журнала.
Из Документация Red Hat, хранилище журналов
При включенном постоянном ведении журнала файлы журнала хранятся в / var / log / journal, что означает, что они сохраняются после перезагрузки. Затем журнал может заменить rsyslog для некоторых пользователей (но см. Введение в главу).
Основываясь на этом, я бы сказал, что rsyslog является избыточным, если включено постоянное хранилище journald и нет приложений, которые зависят от конкретных файлов и формата, создаваемых rsyslog, содержимое остается тем же.
Мы решили это, не создавая / var / log / journal (чтобы материал journalctl был эфемерным) и настроив rsyslog для хранения всего, начиная с journald, в новом файле журнала. Нам часто приходится отлаживать наши развертывания после смерти, и просмотр файлов журнала (для нас, старожилов) намного проще, чем изучение нового малоизвестного командного языка.
: syslogtag, начинается с "systemd" /var/log/systemd.log
Мы также узнали, что "/etc/rsyslog.d/listen.conf", который устанавливает systemd, является важной частью клея; один из наших компонентов нечаянно уничтожил
$ IncludeConfig /etc/rsyslog.d/*.conf
и мы ничего не получили от journald.