# メッセージ出力のフィルター機能

条件を指定して、注目したいメッセージだけをメッセージログに出力できます。これをメッセージ出力のフィルター機能と呼びます。メッセージ出力のフィルター機能には以下のものがあります。

- メッセージレベルごとのフィルター

- メッセージ番号ごとのフィルター

各機能の設定方法について以下で説明します。

## メッセージレベルごとのフィルター

出力されるメッセージは、以下のレベルに分類されます。

- インフォメーション

- ワーニング

- エラー

システム動作環境設定の「メッセージログへの出力（MLOG）」を設定すると、メッセージレベルごとにメッセージを出力するかどうかを指定できます。

メッセージレベルの詳細は以下を参照してください。

HULFT10 for IBMi エラーコード・メッセージ : ヘッダ部

「メッセージログへの出力（MLOG）」の詳細は、「メッセージログ関連設定」を参照してください。

## メッセージ番号ごとのフィルター

メッセージログに出力されるメッセージには、一意のメッセージ番号が割り当てられています。

このメッセージ番号ごとにメッセージを出力するかどうかを設定できます。

メッセージ番号ごとのフィルターはメッセージレベルごとのフィルターより優先されるため、以下のように運用することができます。

- あるメッセージレベルのメッセージは原則としてすべて出力しないが、特定のメッセージ番号のメッセージだけは出力する

- あるメッセージレベルのメッセージは原則としてすべて出力するが、特定のメッセージ番号のメッセージだけは出力しない

メッセージ番号ごとのフィルターは、メッセージフィルタファイルで設定します。

### ファイル名

メッセージフィルタファイルのファイル名は「LOGIDFIL(LOGIDFIL)」です。このファイル名は変更できません。

メッセージフィルタファイルはHULFTがインストールされているライブラリーに置きます。

### 記述フォーマット

行の先頭に「*」があるときは、コメント行とみなされます。空行が存在していても構いません。

項目と項目の間に1つ以上のスペースを挿入してください。

### レコードレイアウト

メッセージフィルタファイル（LOGIDFIL(LOGIDFIL)）はSEUで編集できます。

以下のフォーマットでメッセージ番号ごとに記述してください。

    メッセージ番号 出力有無

表3.13 レコードレイアウト

項目名 | 項目長 (バイト) | 記述値
--- | --- | ---
メッセージ番号 | 7 | 1文字目英字、2～7文字目数字
出力有無 | 1 | 0または1

注意

- 以下の場合、指定したレコードは無視されます。

  - レコードレイアウトに合っていなかった場合

  - 「メッセージ番号」にメッセージ番号の形式に合わない値を指定した場合

  - 存在しないメッセージ番号を指定した場合

- 「出力有無」に“0”または“1”以外の値を指定した場合、そのレコードは無視されます。

- 同じメッセージ番号のレコードが複数あった場合、最後のレコードの設定が有効になります。

### 各項目の説明

メッセージ番号

  出力するかどうかを指定するメッセージ番号を指定します。

  メッセージ番号については、以下を参照してください。

  HULFT10 for IBMi エラーコード・メッセージ : ヘッダ部

出力有無

  「メッセージ番号」で指定したメッセージを出力するかどうかを指定します。

  0

    : メッセージを出力しない

  1

    : メッセージを出力する

### 設定例

    * HULFT MESSAGE LOG LOGID FILTER LIST FILE
    *
    *      MESSAGE LOG ID
    *      MESSAGE LOG 0: NO OUTPUT  1: OUTPUT
    *
    * LOGID MESSAGE LOG
    I000011 0
    W100006 0
    E200003 0

= 備考 =

メッセージレベルごとのフィルターの指定と異なる動作をさせたいメッセージ番号のみを記述します。

メッセージフィルタファイルに記述しないメッセージ番号は、メッセージレベルごとのフィルターの指定に従います。

## 運用例

インフォメーションレベルのメッセージは原則として出力しないが、配信の開始と終了、および集信の開始と終了だけは出力する場合、以下のように設定します。

システム動作環境設定

「メッセージログへの出力（MLOG）」に“011”を指定します。

    MLOG=011

メッセージフィルタファイル

メッセージ番号がI100002、I100003、I400001、I400003のメッセージを出力するように指定します。

    * HULFT MESSAGE LOG LOGID FILTER LIST FILE
    *
    *      MESSAGE LOG ID
    *      MESSAGE LOG 0: NO OUTPUT  1: OUTPUT
    *
    * LOGID MESSAGE LOG
    I100002 1
    I100003 1
    I400001 1
    I400003 1