# log(filter)

モード
  グローバルコンフィグモード
カテゴリー
  運用・管理 / ログ

## 構文

コマンド構文

`(config)# [no] log DESTINATION {level LEVEL & facility FACILITY & program PROGRAM & msgtext TEXTLINE}`

## コマンド説明

指定したログ出力先定義にメッセージフィルターのエントリーを追加し、ログメッセージの出力条件を指定・変更する。
no形式で実行した場合は、ログ出力先定義からメッセージフィルターのエントリーを削除する。
メッセージフィルターの各エントリーでは、出力条件としてlevel、facility、program、msgtextの4つのパラメーターから少なくとも1つ以上を必ず指定する。各エントリーにおいて指定しなかったパラメーターは「すべてマッチ」（any）となる。
logコマンドでログ出力先を定義または有効化しても、メッセージフィルターのエントリーが設定されていないと、該当出力先にはメッセージが出力されないので注意。

## パラメーター

`DESTINATION`
  ログメッセージの出力先。hostログとemailログの場合は、logコマンドで定義した出力先を指定すること
  `buffered`
    ランタイムメモリー
  `permanent`
    フラッシュメモリー
  `monitor`
    ターミナルモニター（terminal monitorコマンド）
  `console`
    コンソール＋仮想端末
  `host {A.B.C.D|X:X::X:X} [vrf VRFNAME]`
    syslogサーバー。サーバーのIPv4アドレス（A.B.C.D）またはIPv6アドレス（X:X::X:X）を指定する。また非グローバルVRFインスタンス（作成したVRFインスタンス）上のsyslogサーバーを使用するときはvrfパラメーターでVRFインスタンス名を指定する（省略時はグローバルVRFインスタンスを使用する）
  `email TOADDRESS`
    電子メールアドレス。TOADDRESSにメールアドレスを指定する
`level LEVEL`
  メッセージのレベル（重要度）。各出力先には、指定したレベル以上のメッセージだけが出力される。`LEVEL`には以下の名称または番号を指定する。省略時はすべてのレベルが出力対象となる
  `emergencies`
    レベル0。システムが使用不能であることを示す
  `alerts`
    レベル1。ただちに対処を要する状況であることを示す
  `critical`
    レベル2。重大な問題が発生したことを示す
  `errors`
    レベル3。一般的なエラーメッセージ
  `warnings`
    レベル4。警告メッセージ
  `notices`
    レベル5。エラーではないが、管理者の注意を要するかもしれないメッセージ
  `informational`
    レベル6。通常運用における詳細情報
  `debugging`
    レベル7。きわめて詳細な情報
  `<0-7>`
    レベル番号。0～7は、上記のemergencies（0）～debugging（7）に対応しており同じ意味。0がもっとも重要度が高く、7がもっとも低い
`facility FACILITY`
  メッセージのファシリティー。各出力先には、指定したファシリティーのメッセージだけが出力される。`FACILITY`には以下のいずれかを指定する。省略時はすべてのファシリティーが出力対象となる
  `auth`
    認証サブシステム
  `authpriv`
    認証サブシステム（機密性の高いもの）
  `cron`
    定期実行デーモン（crond）
  `daemon`
    システムデーモン
  `ftp`
    ファイル転送サブシステム
  `kern`
    カーネル
  `local5`
    UTM関連機能
  `lpr`
    プリンタースプーラーサブシステム
  `mail`
    メールサブシステム
  `news`
    ネットニュースサブシステム
  `syslog`
    syslogデーモン（syslogd）
  `user`
    ユーザープロセス
  `uucp`
    UUCPサブシステム
`program PROGRAM`
  メッセージの生成元プログラム。各出力先には、指定したプログラムの生成したメッセージだけが出力される。省略時はすべてのプログラムが出力対象となる。プログラム名の一覧・詳細はコマンドラインの「?」ヘルプで確認すること
  `WORD`
    プログラム名。show logコマンド、show log permanentコマンドなどで<program>欄に表示される。大文字小文字を区別する
`msgtext TEXTLINE`
  メッセージの内容。各出力先には、指定した文字列を含むメッセージだけが出力される。大文字小文字を区別する。省略時はメッセージの内容には関知しない。`TEXTLINE`は行末までがその値と見なされるため、スペースを含んでいてもよい（本パラメーターはコマンドラインの最後に指定すること）

## 使用例

syslogサーバー10.100.10.100宛てのhostログを定義し、さらにメッセージフィルターを作成して、すべてのメッセージを出力するよう設定する。すべてのメッセージを出力させるには「level debugging」を指定すればよい。

    awplus(config)# log host 10.100.10.100
    awplus(config)# log host 10.100.10.100 level debugging

syslogサーバー192.168.10.2宛てのhostログを定義し、さらにメッセージフィルターを作成して、errorsレベル以上（レベル0～3）のすべてのログメッセージ、および、UTM関連のログメッセージを出力するよう設定する。

    awplus(config)# log host 192.168.10.2
    awplus(config)# log host 192.168.10.2 level errors
    awplus(config)# log host 192.168.10.2 facility local5

なお、メッセージフィルターのエントリーを削除するには、本コマンドをno形式で実行する。たとえば、前記の「facility local5」というエントリーを削除するには次のようにする。

    awplus(config)# no log host 192.168.10.2 facility local5

電子メールアドレスadmin@example.com宛てのemailログを定義し、さらにメッセージフィルターを作成して、「FAILED LOGIN」という文字列を含むすべてのログメッセージを出力するよう設定する。msgtextパラメーターは、msgtextキーワード以降行末までが値と見なされるため、必ずコマンドラインにおける最後のパラメーターとして指定すること。

    awplus(config)# log email admin@example.com
    awplus(config)# log email admin@example.com msgtext FAILED LOGIN

## コマンドツリー

## 関連コマンド