【ジャーナルシーティーエル】

journalctl とは?

公開:
💡 Linuxの「航海日誌」を検索・閲覧できるログビューア
📌 このページのポイント
journalctl:systemd ログの閲覧 systemd サービス nginx sshd mysql cron すべてのログが集約 journald バイナリログ 一括管理 journalctl -u nginx → サービス指定 -p err → 優先度フィルタ --since today → 日時フィルタ $ journalctl -u nginx --since today $ journalctl -fu nginx リアルタイム監視 $ journalctl -p err -b 今回起動以降のエラー 従来の /var/log/syslog に代わるモダンなログ管理
journalctlによるsystemdログの閲覧イメージ
ひよこ ひよこ
Linuxのログってどこに保存されてるの?
ペンギン先生 ペンギン先生
最近のLinuxではsystemdの「journald」というサービスがログを一括管理しているよ。そのログを見るのがjournalctlコマンドなんだ。昔は/var/log/以下のテキストファイルを見てたけど、今はjournalctlの方がずっと便利だよ
ひよこ ひよこ
特定のサービスのログだけ見たいときは?
ペンギン先生 ペンギン先生
「journalctl -u nginx」みたいにサービス名を指定するんだ。Webサーバーが動かないときに「journalctl -u nginx --since today」と打てば、今日のnginxのログだけ絞り込めるよ
ひよこ ひよこ
リアルタイムでログを監視するには?
ペンギン先生 ペンギン先生
「journalctl -f」でtail -fみたいにリアルタイム表示できるよ。「journalctl -fu nginx」ならnginxのログだけリアルタイムで追いかけられるんだ
ひよこ ひよこ
エラーだけを表示したいときはどうすればいいの?
ペンギン先生 ペンギン先生
「journalctl -p err」で優先度がerror以上のログだけ表示できるよ。優先度はemerg、alert、crit、err、warning、notice、info、debugの8段階あるんだ。さらに「journalctl --disk-usage」でログがどれくらいディスクを使っているか確認して、「journalctl --vacuum-size=500M」で500MBに制限する、なんてストレージ管理もできるんだよ。サーバーのディスクがログで溢れるのはあるあるだから、覚えておくと助かるね
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「journalctl」って出てきたら「systemdのログを見る・検索するコマンド」と思えればだいたいOK!
📖 おまけ:英語の意味
「journal control」 = ジャーナル(日誌)制御
💬 「journal(日誌)」を「control(制御・操作)」するという意味だよ。systemdのログ管理機能「journald」と対になるコマンドなんだ
← 用語集にもどる