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に重複してはいけませんか?
サイクルを終了するためにログ管理環境を計画しており、ログをどこからインポートするかに関する問題に直面していたので、今この時点に来ました。
事前に感謝し、私を助けてくれることを願っています。