CentOS7で/var/log/maillogを作るrsyslogのインストールと設定
KagoyaのVPSの最小構成で作成したCentOS7がmaillogを作ってくれず、しばらく放置していたけど、rsyslogをインストール/設定したときの覚書。
環境: CentOS 7.6, rsyslog 8.24.0
rsyslogのインストール
# yum install rsyslog
設定の確認
# less /etc/rsyslog.conf
# less /etc/rsyslog.d/listen.conf
初期設定でjournalを監視してくれている。
サービス起動と自動起動設定。
# systemctl start rsyslog
# systemctl enable rsyslog
前に設定したjournaldの設定変更。
# less /etc/systemd/journald.conf
サービス再起動
# systemctl restart systemd-journald
rsyslogの稼働状況を確認
# systemctl status rsyslog
メッセージが捨てられているようなログ。
Ratelimit.Interval(デフォルトで600秒)の間にRatelimit.Burst(デフォルトで20000)のメッセージ数を超えていると出力されるらしい(参考:imjournal: Systemd Journal Input Module | rsyslog 80488ad docs)。
この設定を変更する。
# less /etc/rsyslog.conf
$imjournalRatelimitIntervalをOffにするのはお勧めしないと公式ドキュメントに書いてあるので60秒にしてみた。
サービス再起動して確認
# systemctl restart rsyslog
メール送信してみて確認。
# mail hoge@gmail.com
# systemctl status rsyslog
# less /var/log/maillog
無事出力を確認。
ログローテーションの確認
# less /etc/logrotate.d/syslog
【関連記事】
環境: CentOS 7.6, rsyslog 8.24.0
rsyslogのインストール
# yum install rsyslog
設定の確認
# less /etc/rsyslog.conf
# less /etc/rsyslog.d/listen.conf
初期設定でjournalを監視してくれている。
サービス起動と自動起動設定。
# systemctl start rsyslog
# systemctl enable rsyslog
前に設定したjournaldの設定変更。
# less /etc/systemd/journald.conf
#Storage=persistent
サービス再起動
# systemctl restart systemd-journald
rsyslogの稼働状況を確認
# systemctl status rsyslog
rsyslogd[12874]: imjournal: begin to drop messages due to rate-limiting
rsyslogd[12874]: imjournal: 198872 messages lost due to rate-limiting
メッセージが捨てられているようなログ。
Ratelimit.Interval(デフォルトで600秒)の間にRatelimit.Burst(デフォルトで20000)のメッセージ数を超えていると出力されるらしい(参考:imjournal: Systemd Journal Input Module | rsyslog 80488ad docs)。
この設定を変更する。
# less /etc/rsyslog.conf
# @see https://www.rsyslog.com/doc/v8-stable/configuration/modules/imjournal.html「$ModLoad imjournal」のあとに記述する。
$imjournalRatelimitInterval 60
$imjournalRatelimitBurst 200000
$imjournalRatelimitIntervalをOffにするのはお勧めしないと公式ドキュメントに書いてあるので60秒にしてみた。
サービス再起動して確認
# systemctl restart rsyslog
メール送信してみて確認。
# mail hoge@gmail.com
# systemctl status rsyslog
# less /var/log/maillog
無事出力を確認。
ログローテーションの確認
# less /etc/logrotate.d/syslog
【関連記事】