syslogdによりシステムのログを管理できます。
目次
- syslog.confの設定(/etc/syslog.conf)
- syglogdでの外部接続の許可(/etc/default/syslogd)
- syglogdの再起動
syslog.confの設定(/etc/syslog.conf)
syslogdの設定は/etc/syslog.confにて行います。
syslog.confの各行にはセレクタとアクションを記述します。セレクタにより出力対象のログを選び、アクションにより出力先を決定します。
以下はsyslog.confの例です。
auth.* /var/log/auth.log
mail.info @192.168.1.100
cron.info nattou
上記の例では、「auth.*」や「cron.info」がセレクタで、「/var/log/auth.log」や「nattou」がアクションです。
セレクタにはファシリティ(ログの分類)とプライオリティ(ログの重要度を)を「.」で区切って指定します。
ファシリティには以下のような値を指定します。
ファシリティ |
対象サービス |
auth |
認証サービス |
cron |
cron |
mail |
メールサービス |
また、プライオリティには以下のような値を指定します。
プライオリティ |
対象の重要度 |
debug |
デバッグ情報 |
info |
情報 |
notice |
通知 |
warn |
警告 |
err |
エラー |
アクションの指定方法
アクションには以下のような出力先を指定できます。
出力先の種類 |
指定値の例 |
ファイル |
/var/log/auth.log |
他のホスト |
@192.168.1.100 |
ユーザ |
nattou |
デバイス |
/dev/pts/1 |
他のホストにログを出力した場合、出力先ホストがsyslogdがそのログを処理します。ただし、処理が行われるのは、出力先ホストのsyslogdが外部接続を許可している場合だけです。
ユーザやデバイスにログを出力した場合、指定したユーザの画面ややデバイス上にログが表示されます。
/etc/syslog.confや/etc/default/syslogdの変更を反映するには、syslogdの再起動が必要です。(もしくは、プロセスへのSIGHUPの送信でも変更は反映されます。)
sudo /etc/init.d/sysklogd restart
svcadm restart system-log