特集
2003/09/08 18:00 更新
UNIX USER2003年10月号「Pragmatic UNIX」より転載
シスログの仕組み (3/7)
UNIX USER 2003年10月号より転載
シスログの使用に慣れてくると、不便に思うところが出てくるのではないでしょうか。とくにセレクタの動作に関して、
・あるレベルのメッセージだけを残したいのに指定したレベルより高いものまで全部ログに出力してしまう
・ファシリティ単位ではなく、プログラム単位でログを採取したい
などは、よく聞かれる質問です。LinuxとFreeBSDでは、これらの要求に応える拡張仕様があります。Solarisにはそういう余計なものを付けずに、ただオリジナルのシスログ仕様に従うだけです。よって、これから説明するセレクタの書き方は、Linux固有、FreeBSD固有の書き方です。ほかのOSに対して互換性はありませんので、注意して使ってください。
●Linux固有のセレクタ指定
Linuxでは、指定したレベルだけを意味し、それより高いレベルを含みたくないときに「=」を使います。また、「!」を前に付ければ「そのレベル以上を含まない」という意味になります。この2つと一般の記述を合わせれば、さまざまなレベルを指定できるようになります。指定例と意味を表3にまとめておきます。
なお、「!=」にすると「そのレベル以外」になるので気を付けましょう。
表3 Linux固有のセレクタ指定
指定例 |
意味 |
daemon.=warning |
warningレベルだけのメッセージ |
daemon.warning;daemon.!crit |
warningとerrレベルのメッセージ |
daemon.warning;daemon.!=err |
warningレベル以上で err を除く |
|
|
●FreeBSD固有のセレクタ指定
FreeBSDでは、Linuxと同じようなレベルの選択(ただし記述方法は違います)に加えて、ファシリティ名称の代わりにプログラム名称を利用できます。指定したレベルより高いもの、指定したレベルより低いもの、指定したレベルに等しいものは、それぞれ「<、>、=」で指定できます。基本的に数式と同じなので覚えやすいですね。指定例と意味を表4にまとめておきます。
表4 FreeBSD固有のセレクタ指定
指定例 |
意味 |
daemon.>=warning |
warning レベル以上のメッセージ |
daemon.>warning |
warning レベルより上(err以上)のメッセージ |
daemon.=warning |
warning レベルだけ |
daemon.<warning |
warning レベルより下(notice以下)のメッセージ |
daemon.<=warning |
warning レベル以下のメッセージ |
このほか、ファシリティ名称の代わりにプログラム名称を使いたいときは、「!」を使ったパラグラフをsyslog.confの中に指定します。次の「!」が現れるかファイルの終わりまでがそのパラグラフとして扱われます。たとえば、namedはdaemonファシリティに属し、sshdはデフォルトでauthファシリティに属するので、この2つのデーモンをほかのプログラムと分けて抜き出すには、リスト1の設定をsyslog.confの最後に追加します。
リスト1 プログラム名称でメッセージを分ける
|
!named
*.* /var/log/named
!sshd
*.* /var/log/sshd
←(空白行が必要)
|
関連リンク
UNIXUSER
定期購読のご案内
バックナンバー販売協力店
読者モニターレポート
|
UNIX USER 10月号
第1特集:オリジナル1CD Linux講座
第2特集:今日から始めるグリッドコンピューティング
第3特集:仮想環境によるシステム構築術
付録CD-ROM 2枚組み
・オリジナル1CD Linux
・Globus Toolkit 2.4/3.0
・VisualuRuby 030817、Ruby 1.8.0 ほか
|
|
前のページ | 1 2 3 4 5 6 7 | 次のページ
[山下 哲典,UNIX USER]
Copyright © ITmedia, Inc. All Rights Reserved.