Journald から rsyslog への転送の混乱

Journald から rsyslog への転送の混乱

Journald から Rsyslog への転送がよくわかりません。

基本的に、私は「パイプライン」が次のように構築されることを理解しました。

カーネルは printk() を介してログを記録します → /proc/kmesg ← rsyslog → rsyslog.conf のルールに従ってログファイルに書き込みます

ユーザースペースログ → /dev/log ← rsyslog → rsyslog.conf のルールに従ってログファイルに書き込みます

これにより、/var/log/syslog などのさまざまなログ ファイルが作成されます。

rsyslog.conf スニペットと同様に、ファシリティ 'user' からのメッセージも syslog に書き込まれるため、2 回保存されることになりますか?

#
# First some standard log files.  Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log

ここまでは、私の理解が正しければ、明らかです。

しかし、/dev/logは次のようにリンクされているようです

$ ls -lah /dev/log
lrwxrwxrwx 1 root root 28 Apr 15 16:30 /dev/log -> /run/systemd/journal/dev-log

何故ですか?

本当の質問に戻ります。Journald はログをどこから取得するのでしょうか? 私が知っているのは systemd-cat だけです。または、/dev/log // /run/systemd/journal/dev-log からも取得できますか?

Journaldはログをsyslogに転送します(Debianでは標準です)。https://manpages.debian.org/testing/manpages-de/journald.conf.5.de.html)。すべてのメッセージが syslog に複製されるべきではないでしょうか?

最後に、私がこの時点でいるのは、ログ管理環境を計画しており、ログをどこから取得するかという問題に直面しているためです。

あらかじめ感謝し、ご協力いただければ幸いです。

関連情報