rsyslog.confの編集

rsyslogの設定は、/etc/rsyslog.confに記述します。
前回の記事(続・CentOS 6.8にrsyslogをソースインストールする)では特にrsyslog.confの設定を行いませんでしたが、ちゃんとログを収集できていました。

これは、CentOS 6.8インストール時にいっしょにパッケージインストールされたrsyslogの設定が残っていたからです。

ここでは、白紙の状態からrsyslog.confファイルの作成を行います。
バージョンは、rsyslog-8.21.0です。

なお、rsyslogdのマニュアルを読むと設定ファイルのデフォルト値は/etc/rsyslog.confですが、変更する場合は、-f オプションで行うとあります。

(例)

# rsyslogd -f /etc/my_rsyslog.conf/

なんでもかんでもログを収集

以下のファイルを作成すれば、とりあえず何でもかんでもログを受け入れて、/var/log/messagesに書き出します。

(ファイル名) /etc/rsyslog.conf

$ModLoad imuxsock     # ローカルログを収集する
*.* /var/log/messages # すべてのログの書き出しファイル

imuxsockは、ローカルログを受け付けるためのモジュールです。
これを組み込まないとローカルで発生したログ、例えばカーネルやデーモンが出力したログがログファイルにかかれなくなります。
昔のrsyslogは、imuxsockの機能はrsyslog本体に組み込まれていましたが、バージョンアップに伴いモジュール化されたようです。

rsyslogdの自動起動設定

パッケージインストールされた/etc/inid.d/rsyslogを修正します。
29行目あたりのシェル変数execの値をrsyslogのインストール先ディレクトリに変更します。

(変更前)

exec=/sbin/rsyslogd

(変更後)

exec=/usr/local/sbin/rsyslogd

参考文献

・rsyslog実践ログ管理入門 (鶴長鎮一 著)