ログ管理
syslogとその周辺 応用編
back top next
応用編
[入門編] では、ログ管理の概要として、syslog とその解析ツールについて簡単に紹介しました。
この [応用編] では、昨年リリースされた RFC3164 を元に、syslog を詳しく見ていくことにします。

■syslog について  ・・・syslog とは・・・

syslog は 4.2BSD(1983/9) から導入されました。動作しているサービスについて、さまざまな情報を行単位で出力します。20年ほどの歴史がありますが、昨年ようやく RFC になりました。RFC3164 です。

ログを出力するときには、syslog(3) という関数を利用します。
FreeBSD では、syslogd(8) がそのログを受け取り、syslog.conf(5) の設定に従ってファイルに記録していきます。

syslog にはアクターとして 図1のような概念があります。

  図1     syslog に関わるアクター
sender
 ログを送信
device
 ログを生成します
relay
 ネットワークを介してログを他のコンピュータに中継します
receiver
 ログを受信
collector (syslogサーバ)
 ログを収集します

sender は複数に送ることが出来ますし、relay は途中にいくつあっても構いません。また、collector はログを受け取った後には他に中継することはできません。

syslogd は relay と collector の役割を持ち、device から socket 経由でログを受信します。特にオプションを与えずに起動したときには、UNIX ドメインと INET ドメインの両方で待ち受けています。

  表1     receiver としての syslogd
ドメイン sender の種類 受信方法
UNIX ドメイン syslog() 関数 カーネルの場合 /dev/klog
それ以外 /var/run/log (/dev/log)
INET ドメイン ネットワーク経由 514/UDP

back top next
Copyright(C) 1995-2003 Infoscience Corporation. All rights reserved. 
※このページの内容は 『FreeBSD PRESS No.14 (2003 JANUARY) 毎日コミュニケーションズ刊』 に掲載されたものです。