journald を使用せずにシステムロギングを設定する
更新 -
Red Hat Enterprise Linux は、デフォルト設定で共存できる 2 つのロギングソリューション (systemd-journald と rsyslog) を提供します。パフォーマンスが重要なユースケースの場合、このセットアップにおけるデータスループットとメモリー消費は最適ではありません。
これを軽減するために、rsyslog をソケット専用モードで実行することを選択できます。この方法にはパフォーマンス上の利点がありますが、ログメッセージがプレーンテキストであるため、journald のフォーマットは失われます。このため、構造化された systemd ログにアクセスする必要があり、それらのメタデータを使用する場合は、これはお客様のシナリオの解決策にはなりません。
- /etc/rsyslog.conf rsyslog 設定ファイルを編集し、imuxsock ローカルメッセージの使用を「オン」にし、imjournal モジュールのロードをコメントアウトして imklog モジュールのロードのコメントを解除します。
module(load="imuxsock" # provides support for local system logging (e.g. via the logger command)
SysSock.Use="on")
# module(load="imjournal" # provides access to the systemd journal
# StateFile="imjournal.state") # file to store the position in the journal
module(load="imklog") # reads kernel messages (the same are read from journald)
- /etc/systemd/journald.conf で journald 設定を編集します。
[Journal]
Storage=none
ForwardToSyslog=yes
- ソケットの作成とリンクを確認するために、/etc/systemd/system/rsyslog.service.d/override.conf で、rsyslog ユニット設定ファイルのドロップインファイルを以下の内容で作成します。
[Unit]
Requires=syslog.socket
[Install]
Alias=syslog.service
- システムを再起動して変更を適用します
Comments