systemd-journald は、Linux で systemd 環境のログを収集・保存する仕組みです。
アプリやサービスのログをジャーナルとしてまとめて持ち、journalctl から確認されます。
昔ながらのテキストログ管理では、/var/log/*.log を logrotate で回す構成が中心でした。
一方で systemd-journald は、ジャーナルファイルとして保持し、容量上限や保持量を設定で管理する考え方です。
まず押さえたいポイント
- systemd 環境のログ収集と保存を担当する
journalctlから読むことが多いSystemMaxUse=などの設定で保持量を管理できる
どんな場面で使うか
- systemd サービスのログ確認
- サーバー全体の起動・停止・異常確認
- ジャーナル容量の調整
初心者が混乱しやすい点
logrotate と systemd-journald は別です。
前者は主にテキストログ、後者はジャーナルログを見る仕組みなので、どちらを対象にしているのかを分けて考える必要があります。
最重要:既定では再起動でログが消えることがある
見落とされやすい最大の落とし穴が保存先です。ジャーナルの保存方式には揮発性(メモリ上・/run)と永続(ディスク上・/var/log/journal)があり、ディストリビューションや設定によっては、再起動するとログが消えます。
「サーバーが落ちたので再起動したら、原因を調べるログが無い」——という事故はこれが原因です。原因調査を前提にするなら、journald.conf の Storage を永続に設定し、/var/log/journal を用意しておく必要があります。
実務で見るポイント
容量制御は journald.conf(SystemMaxUse など)で行います。永続化すると当然ディスクを食うので、上限をセットで設定するのが基本です。上限なしで運用してディスクを埋めてしまうのは、典型的な自滅パターンです。
また、テキストログ(logrotate で管理)とジャーナルを併用している構成では、どのログをどちらで管理するかの方針を混ぜないことが大切です。両方で同じログを二重に持つと、容量も調査コストも無駄に増えます。確認は journalctl から行います。