新Linux入門|syslogとrsyslogの違い:Linuxにおけるログ管理の基本

Linuxシステムでは、日々さまざまなイベントが発生します。
 ユーザーのログイン、アプリケーションの動作、ネットワーク接続の記録、エラーメッセージなど…。
こうした情報を一元的に管理してくれるのが 「ログ管理システム」 です📝

その代表的な仕組みが syslogrsyslog です。
どちらもシステムのログを収集・保存・転送するための基盤となりますが、
rsyslogはsyslogをベースに進化した高機能なシステムです✨

ここでは、syslogとrsyslogの違いや役割を詳しく見ていきましょう。

🧭 syslogとは?

syslog はUNIX系システムで古くから利用されている、標準的なログメッセージ処理システムです。
 アプリケーションやシステムが出力するログを一か所に集めて、ログファイルへ保存する仕組みを提供します。

主な特徴

  • ログメッセージを一元管理できる。
  • ログレベル(優先度)によって出力先を振り分けられる。
  • ログをファイルに保存したり、リモートへ転送したりできる。

💡 syslogの主な役割

項目内容
ログの収集カーネルやアプリケーションのメッセージを受信する。
ログの分類“重要度(priority)” によってフィルタリング
出力の制御ファイル保存・メール通知・リモート転送が可能

📘 代表的なログファイル

ログファイル内容
/var/log/messagesシステム全般のログ
/var/log/secure認証やアクセス関連ログ
/var/log/cron定期ジョブ(cron)関連
/var/log/maillogメール関連

🚀 rsyslogとは?

rsyslog は、syslogの後継として開発された高機能なログ管理デーモンです。
syslogと互換性を保ちながら、より柔軟で高速・安全なログ処理を実現しています。
 AlmaLinux 9.6(およびRHEL系ディストリビューション)では、標準でrsyslogが採用されています。

rsyslogの進化ポイント

改良点説明
高速化大量のログを効率的に処理できる(非同期I/O・マルチスレッド対応)
柔軟なフィルタリングルール設定で複雑な条件分岐が可能
セキュリティ強化TCP・TLSによる安全なリモートログ転送をサポート
キュー機能一時的な障害時にログを保持し、後で再送できる。
互換性維持syslogの設定を引き継ぎ可能(/etc/rsyslog.conf)

💬 AlmaLinux 9.6では、rsyslogサービスが起動中であり、
システムログの収集・転送をリアルタイムで行っています。

📘 サービス管理例

[root@AlmaLinux ~]# systemctl status rsyslog
● rsyslog.service - System Logging Service
     Loaded: loaded (/usr/lib/systemd/system/rsyslog.service; enabled; preset: >
     Active: active (running) since Mon 2025-12-08 22:35:39 JST; 1h 45min ago
       Docs: man:rsyslogd(8)
(省略)

⚙️ rsyslogの設定ファイル構成

rsyslogの設定ファイルは以下の場所にあります👇

ファイル役割
/etc/rsyslog.confメイン設定ファイル(ログの振り分けルールなど)
/etc/rsyslog.d/*.conf個別のサービス用追加設定ファイル
/var/log/実際のログファイル保存場所

📘 設定例:/etc/rsyslog.conf の一部

*.info;mail.none;authpriv.none;cron.none    /var/log/messages
authpriv.*                                 /var/log/secure
mail.*                                     -/var/log/maillog

🔍 ポイント

  • 「ファシリティ(facility)」と「優先度(priority)」でログを分類
  • 「 ; 」で複数条件を指定可能
  • ファイルの前に「 - 」を付けるとバッファリング書き込み(パフォーマンス向上)

💡 syslogとrsyslogの違いまとめ

項目syslogrsyslog
種類従来のログデーモン改良版ログデーモン
パフォーマンス単一スレッドで処理マルチスレッド・非同期I/O対応で高速
フィルタリング基本的な機能のみ高度な条件指定が可能
リモート転送UDPのみ対応TCP・TLS対応(暗号化可)
拡張性制限ありプラグイン機構で柔軟に拡張可能
AlmaLinuxでの標準非採用標準(rsyslogがデフォルト)

🧪 実際にコマンドで確認してみよう

rsyslogサービスの状態確認

[root@AlmaLinux ~]# systemctl status rsyslog

rsyslogサービスの再起動

[root@AlmaLinux ~]# systemctl restart rsyslog

rsyslogの設定をチェック

[root@AlmaLinux ~]# cat /etc/rsyslog.conf | grep -v '^#'

ログ出力のテスト(loggerコマンド)

[suzuki@AlmaLinux ~]$ logger "テストメッセージ from suzuki"

🔍 loggerコマンドは、任意のメッセージをsyslog/rsyslogに送るテストツールです。
/var/log/messages に記録されているか確認してみましょう👇

[root@AlmaLinux ~]# tail -n 3 /var/log/messages
Nov 25 10:12:33 AlmaLinux suzuki: テストメッセージ from suzuki

🌟 まとめ

syslogは、Linuxにおけるログ管理の「原点」とも言える仕組みです。
 そしてrsyslogは、そのsyslogを土台に、パフォーマンス・セキュリティ・柔軟性を大幅に強化した進化版です🚀

AlmaLinux 9.6 では、rsyslogが標準で採用されており、
システム全体のログを効率的かつ安全に管理できます。

ログは、システムトラブルの発見やセキュリティ監査に欠かせない大切な情報です。
ぜひ、rsyslogの仕組みを理解して、ログ管理の“見える化”を進めていきましょう📊