Dockerでrsyslogの設定

DockerでCentOS7を設定した時にrsyslogが動いてなくてはまりました。
そのときに行ったメモです。

インストール

そもそもrsysogが入ってませんでした。

yum install rsyslog

起動と終了

systemctlが使えないので手動で起動させます。

起動はこれだけでOK。

rsyslogd

終了するときはPIDを調べます。

ps -C rsyslogd

調べたpidを入れてkillします。

kill -TERM pid

rsyslogの設定

containerには余分なものが入っていないので、設定をシンプルにしなければなりません。
対象のファイルは以下の2つ。

/etc/rsyslog.conf
/etc/rsyslog.d/listen.conf

rsyslog.confを次のように変更します。

$ModLoad imuxsock
# $ModLoad imjournal 
$OmitLocalLogging off
# $IMJournalStateFile imjournal.state

listen.confをコメントアウトします。

# $SystemLogSocketName /run/systemd/journal/syslog

設定の反映

設定ができたら、上記のコマンドで再起動します。

動作確認にはloggerコマンドが便利です。

logger "test"
cat /var/log/messages

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です