Provided by: manpages-ja_0.5.0.0.20110915-1_all bug

名前

       syslog.conf - syslogd(8) の設定ファイル

説明

       syslog.conf は UNIX ライクなシステムでそのシステムメッセージを記録する syslogd(8) のための
       設定ファイルである。このファイルは記録のルールを規定する。固有の            機能については
       sysklogd(8) の man ページを参照すること。

       ルールは selector フィールドと action フィールドの二つのフィールドで構成する。これらの二つ
       のフィールドは 一つ以上の空白文字か TAB 文字で区切られる。selector フィールドは指定さ れた
       action を適用する facility と priority のパターンを規定する。

       シャープ記号(``#'')で始まる行と空行は無視する。

       このバージョンの  syslogd  は拡張された文法を認識することができる。 行の末尾にバックスラッ
       シュ(``\'')を置くことによって、 ひとつのルールを複数行に分けることができる。

SELECTORS

       selector フィールドはさらにピリオド(``.'')で区切られる facilitypriority の二つの部分で
       構成する。 どちらの部分も文字の大文字小文字は区別しない。また、数字を用いることも 可能であ
       るが、これは使用しない方がよい。使用した時には警告がなされる。 facility と priority につい
       ては syslog(3) に記述されている。以下に記述する各種の名前は /usr/include/syslog.h における
       LOG_-values の同じ名前のものに対応する。

       facility は次のキーワードのいずれかである: authauthprivcrondaemonkernlprmailmarknewssecurity (auth と同じ)、 sysloguseruucplocal0からlocal7。 こ
       のうち security は今後は利用するべきでなく、また、 mark は内部利用のためのものなので、アプ
       リケーションレベルで用いるべきではない。  ただし利用できないわけではない。 facility はメッ
       セージを生成するサブシステムを規定する、すなわち(例えば)全てのメ  イルプログラムは  syslog
       を用いてログを記録する場合は mail facility (LOG_MAIL) を用いる。

       priority  は以下のキーワードのいずれかである(昇順):  debug,  info, notice, warning, warn (
       warning と同じ), err, error (err と同じ), crit, alert, emerg, panic (emergと同じ).  このう
       ちキーワード errorwarnpanic については、同等のものがあるので今後は利用するべきでない。
       priority はメッセージの重要性を定義する。

       オリジナルの BSD システムの syslogd の動作は、指示された priority とそれ  よりも順位の高い
       全てのメッセージが与えられた action に沿って記録される、 というものである。この syslogd(8)
       もそれと同じ動作であるが、いくつかの拡張機能も有する。

       上述の名前に加え、 syslogd(8) は以下の拡張についても理解する: アスタリスク(``*'')は、 それ
       が用いられている場所  (すなわちピリオドの前か後ろか) に応じて、 全ての facility かまたは全
       ての priority を表わす。  キーワード  none  は、それが与えられた  facility  についてはどの
       priority も 指定しないことを意味する (つまり除外される)。

       コンマ(``,'')を用いて、同じ  priority を示す一文のなかに複数の facility を指定することが可
       能である。facility の個数に制限はない。ただしこのよ うな記述が可能なのは facility について
       のみで、 priority についてのその ような記述は無視するので注意すること。

       セミコロン(``;'')を区切りに用いて複数の  selector について同一の action を指定することがで
       きる。  selector  フィールドの  selector  は先行するものを上書きしてしまうことに注意するこ
       と。この動作を用いて特定の priority を除外することも可能である。

       この syslogd(8) はオリジナルの BSD のソースを拡張する構文を持っていて、より直観的な利 用を
       可能にしている。イコール記号(``='')を priority に接頭すると、その priority  のもののみを記
       録するようにすることができる。エクスクラメーショ  ンマーク(``!'')を接頭するとその priority
       とそれよりも高い priority の もののすべてを無視させることができる(イコール記号とエクスクラ
       メーショ  ンマークの両方を同時に指定することは可能である)。この拡張の両方を同時 に用いる場
       合、イコール記号の前にエクスクラメーションマークを置くことで その priority のみ無視する。

ACTIONS

       ルールの action フィールドには ``logfile'' を指示する。``logfile'' は 実存するファイルでな
       くてもかまわない。 syslogd(8) は以下の動作を用意している。

   通常のファイル
       メッセージはそのファイルに記録される。ファイル名は ``/'' で始まるフル パスで指定すること。

       マイナス記号 ``-'' を接頭すると、記録の際のファイルシステムバッファの フラッシュ動作を抑制
       する。これを用いると、書き込み動作の直後にシステム  に障害が発生した場合、情報を失なう可能
       性があることに注意すること。しか  しながらこの機能は特に騒々しくロギングするプログラムを動
       作させる際のい くらかの性能改善には役に立つ。

   名前付きパイプ
       この syslogd(8) は名前付きパイプ(FIFO)への出力機能を備えている。  ファイル名の先頭にパイプ
       記号  (``|'') を書くと、 メッセージの出力先をその名前の FIFO にできる。 これはデバッグ作業
       に役立つ。FIFO は syslogd(8) のスタートに先立ち、 mkfifo(1) コマンドにより生成される必要が
       あることに注意すること。

   ターミナルとコンソール
       ファイルとして tty を指示した場合は、tty 用の処理がなされる。 /dev/console も同じ。

   リモートコンピュータ
       この syslogd(8) は完全なリモートロギング機能も提供する。すなわちメッセージを syslogd(8) の
       動作するリモートのホストに送信することができ、またリモートのホストか  らのメッセージを受信
       することもできる。リモートのホストはメッセージをそ      れ以上他のホストへ転送することはせ
       ず、その機械にローカルに記録するはずだ。    他のホストへメッセージを送信するにはアットマー
       ク(``@'')をそのホスト名 に接頭する。

       この機能を用いると、他の全てのコンピュータにリモートに記録させることで、  すべての  syslog
       メッセージを一台のホストで制御することができる。これは 管理上の困難を解消する。

   ユーザ名のリスト
       通常、特に重要なメッセージはそのコンピュータの ``root''  にも宛てられる  ものである。login
       しているときにメッセージを受けとるべきユーザのリスト          を指示することができる。コン
       マ(``,'')で区切って複数のユーザを指定する     こともできる。メイルで送ろうと思ってはいけな
       い。それでは手遅れになって しまうかもしれない。

   ログインしている誰でも
       システムになにか具合が悪いことが発生することを通知するために、緊急のメッ  セージはしばしば
       その時オンラインになっている全てのユーザに通知される。 この wall(1)的機能 を利用するために
       はアスタリスク(``*'')を用いる。

       ここに実在する   site   の実際の設定例の一部を用いたいくつかの設定例を挙げ  る。うまくいけ
       ば、たぶん、これで設定上の疑問はすべて解消できると思うが、 なにかあったら筆者( Joey  )宛て
       に連絡いただきたい。

              # 危機的状況を /var/adm/critical に保存する。
              #
              *.=crit;kern.none            /var/adm/critical

       priority       が       crit      の、カーネルメッセージを除くすべてのメッセージをファイル
       /var/adm/critical に保存する。

              # カーネルメッセージは /var/adm/kernel に
              # 保存し、さらに critical 以上の重要度の
              # メッセージは他のホストへ配信しコンソー
              # ルにも表示する。
              #
              kern.*                       /var/adm/kernel
              kern.crit                    @finlandia
              kern.crit                    /dev/console
              kern.info;kern.!err          /var/adm/kernel-info

       一番目のルールにより、facility が kern のメッセージはファイル  /var/adm/kernel  に記録され
       る。

       二番目の文により、  priority  が  crit  かそれよりも高い全てのメッセージはリモートのホスト
       finlandia へ送信さ  れる。これは、ホストの障害が生じて保存されたメッセージを読みだすことが
       できなくなるような回復不能エラーがディスク装置に発生した際に有効である。  リモートのホスト
       に残されたメッセージで障害の原因調査に取り掛ることもで きる。

       三番目のルールはそのコンピュータで作業している誰かがそのメッセージを得  ることができるよう
       に、実際のコンソールに表示する。

       四行目は、syslogd    にpriorityが   info   から   warning   のカーネルメッセージをファイル
       /var/adm/kernel-info に保存するよう指示する。 err よりも高い priority を持つものは除外され
       る。

              # tcp wrapper は mail.info でロギングする、
              # すべての接続を tty12 に表示する。
              #
              mail.=info                   /dev/tty12

       この例は  mail.info (ソースコード上では LOG_MAIL | LOG_INFO) を用いる全てのメッセージを 第
       12 コンソール /dev/tty12 に表示する。例えば tcpwrapper tcpd(8)  はこの設定を既定値として用
       いている。

              # メイル関係は一つのファイルへ保存する。
              #
              mail.*;mail.!=info           /var/adm/mail

       このパターンは facility が mail の全てのメッセージから priority が info であるものを除くこ
       とを示す。これらのメッセージはファイル /var/adm/mail に記録する。

              # mail.info と news.info を /var/adm/info ヘ記録する。
              #
              mail,news.=info              /var/adm/info

       この例は mail.infonews.info の両方の全てのメッセージを抜き出し、ファイル /var/adm/info
       に保存する。

              # info と notice は /var/log/messages へ記録する。
              #
              *.=info;*.=notice;\
                   mail.none  /var/log/messages

       この例は syslogd に
        facility  が  mail  であるのものを除く他の 全て infonotice の両方の priority の全ての
       メッセージをファイル /var/log/messages に保存するよう指示する。

              # info メッセージは /var/log/messages へ記録する。
              #
              *.=info;\
                   mail,news.none       /var/log/messages

       この指示により syslogd は priority info の全てのメッセージをファイル /var/log/messages  に
       記録する。ただし facility が mailnews の両方のメッセージは保存しない。

              # 緊急メッセージを wall で表示する。
              #
              *.=emerg                     *

       このルールは  syslogd に全ての緊急のメッセージをその時ログインしている全てのユーザに伝える
       よ う指示する。これが wall action である。

              # priority が alert のメッセージは管理担当へ
              # 送る。
              *.alert                      root,joey

       このルールは priority が alert  かそれよりも高い全てのメッセージを操作者、すなわちユーザ名
       ``root'' と ``joey'' がログインしていればその端末に表示する。

              *.*                          @finlandia

       このルールは全てのメッセージを finlandia と呼ばれるリモートのホストに 転送する。これは特に
       一群のコンピュータの全ての syslog メッセージを一台 のコンピュータに保存するのに役に立つ。

設定ファイル文法の相違点

       syslogd   の設定は   オリジナルの    BSD    ソースによるものとは少し異なる文法を使用する。
       元々は、指示された  priority とそれよりも高い priority の全てのメッセージが ログファイルに
       記録されていた。この syslogd  には、より柔軟で直観的にわかりやすい設定が可能となるように修
       飾子 ``=''、 ``!''、``-''が追加されている。

       オリジナルの BSD の syslogd では selector フィールドと action フィールドの区切りの文字とし
       て空白文字を利用することはできない(TAB 文 字でなければならない)。

ファイル

       /etc/syslog.conf
              syslogd の設定ファイル

バグ

       複数の  selector  を指示するとしばしば直観的でなくなる。例えば、  ``mail.crit,*.err''   は
       facility が ``mail'' のメッセージのうち ``crit'' より 高い priority 、ではなくて``err'' よ
       りも高い priority を指示していることに なる。

関連項目

       sysklogd(8), klogd(8), logger(1), syslog(2), syslog(3)

著者

       syslogd は Greg Wettstein (greg@wind.enjellic.com) が BSD のソースコードから Linux  で動作
       するように移植し、Matin  Schulze (joey@linux.de) がいくつかのバグ フィックスと新しい機能の
       追加をした。