【RHEL】journaldサービスのログについて解説

D:\hidenori\Pictures\Screenpresso\Journald Linuxサーバ
スポンサーリンク

journaldで閲覧できるログの種類について

journaldはlinuxサーバのすべてのログをjournal専用のDBに保管しています。
厳密に言うとRHEL(OS)で管理されている以下のログをまとめて参照することができます。
journaldのイメージ図
journaldのイメージ図
1.カーネルのログ

起動時に出力されるログを指します。

例えば
dmesgコマンド実行して閲覧できるログがカーネルのログにあたります。

2.プロセスのログ

syslogで設定をして管理されているログを指します。

例えば
/var/log/messages
/var/log/secure
/var/log/maillog
などがsyslogにあたります。

3.systemdのログ

linuxのシステムとサービスを管理するログを指します。

例えば
「systemctl status サービス名」などで閲覧できるログがsystemdのログを指します。

journaldで取得できないログについて

httpd、nginxなどのサービスを起動させて出力される「access.log」「error.log」などアプリケーションが出力する独自のログはjournaldのログには保管されません。

しかし
postfixサービスのmaillogのように、syslogデーモンへ送信できるものであればjournalのログに保管することができます。

journaldのログ閲覧方法について

journaldのログを閲覧するには以下のコマンドを実行します。

journalctl

journaldとrsyslogの違いについて

rsyslogはjournaldが受け取ったログからファイル分割(messages、secure、maillogなど)したり、必要な情報だけに加工(ファシリティー設定、プライオリティ設定)して出力しているログになります。
ということは、「Journal DB」と「rsyslogのログ」と2カ所でログが保管されていることになります。

【まとめ】journalとは

journalはログファイルを表示したり管理したりするものです。
ログデータはjournalのjournald(systemd-journald.service)サービスがログの収集、journal専用のDBに保管、処理したりします。
journal専用のDB(Journal DB)に保管されたログにアクセスするために、「journalctl」コマンドを利用します。
「journalctl」コマンドを利用して時間指定、サービス指定などさまざま方法でログを閲覧することができます。

journal専用のDB(Journal DB)に保管されたログ情報は、デフォルトの設定だとサーバが再起動するとログ情報は、すべて消えてしまいます。

コメント

タイトルとURLをコピーしました