ログ(メッセージ)出力をフィルタする設定

ログ(メッセージ)を出力するかどうかを、メッセージレベルやメッセージ番号ごとに設定できます。この設定によって、確認したいメッセージだけを監視しやすくできます。

ここでは、各設定の方法および運用例について説明します。

(1) メッセージレベルごとにフィルタする

メッセージレベルごとに、トレースログおよびsyslogに出力するかどうかのフィルタ設定ができます。

メッセージレベルは、「インフォメーション」、「ワーニング」、「エラー」の3つがあります。

メッセージレベルについては、「エラーコード・メッセージ」を参照してください。

設定方法

システム動作環境設定の以下の項目で指定してください。

  • トレースログに出力するメッセージレベルの指定

    「トレースログへの出力(tracelog)」

    初期値は、”001”(メッセージレベル「エラー」だけを出力する)です。

  • syslogに出力するメッセージレベルの指定

    「システムログへの出力(syslog)」

    初期値は、”000”(すべてのメッセージレベルを出力しない)です。

各項目の設定の詳細と設定例については、「その他設定」を参照してください。

注意

メッセージレベルごとの設定がされていても、メッセージフィルタファイル(msgfilter.info)で指定された設定が優先されます。メッセージフィルタファイルについては、「(2) メッセージ番号ごとにフィルタする」を参照してください。

(2) メッセージ番号ごとにフィルタする

HULFTが出力するメッセージのうち、特定のログ(メッセージ)だけをトレースログおよびsyslogに出力するかどうかのフィルタ設定ができます。このフィルタ設定は、メッセージ番号ごとに指定します。

フィルタ設定は「メッセージフィルタファイル」というファイルで記述します。

 

ここでは、メッセージフィルタファイルの設定方法について説明します。

注意

「(1) メッセージレベルごとにフィルタする」でメッセージレベルごとにログ出力するかどうかを設定できますが、メッセージフィルタファイルで設定したメッセージについては、メッセージフィルタファイルの設定が優先されます。

a) ファイル名

メッセージフィルタファイルの名称は「msgfilter.info」です。この名称は変更できません。

メッセージフィルタファイルはHULFTが使用するシステムファイルが存在するパス「HULPATH」に置きます。

b) 記述フォーマット

メッセージ番号 tracelog syslog

  • 行の先頭に「#」があるときは、コメント行とみなされます。

  • 行頭のスペースコードおよびタブコードは読み飛ばします。

  • 項目と項目の区切りは、スペースコード(0x20)またはタブコード(0x09)を使用します。

    スペースコードとタブコードが連続していても1つの区切り文字とみなします。

  • メッセージ番号が重複して記述されている場合は、後に記述された設定が有効となります。

  • 以下のレコードが検出された場合、そのレコードを読み飛ばします。

    • 不正なフォーマットで記述されている

    • メッセージ番号が不正である

    • 許容しない文字または数値が指定されている

c) レコードレイアウト

メッセージフィルタファイル(msgfilter.info)はバイナリデータを含まないため、メモ帳などのエディタで作成できます。また、レコードはメッセージ番号ごとに記述します。1行につき、1メッセージ番号で記述してください。

1行(レコード)の最大長は1024バイトです。

d) 各項目の説明

各項目の説明を以下に示します。

メッセージ番号

定義するメッセージ番号を指定します。

メッセージ番号については、「エラーコード・メッセージ」を参照してください。

tracelog

指定したメッセージ番号のトレースログへの出力有無を指定します。

0

: ログを出力しない

1

: ログを出力する

syslog

指定したメッセージ番号のsyslogへの出力有無を指定します。

0

: ログを出力しない

1

: ログを出力する

e) 設定例

【記述例】

# HULFT8 Message Filter
#
#       ID          Message number
#       tracelog    0: No Output 1: Output
#       syslog      0: No Output 1: Output
#
# ID        tracelog      syslog
# E1234567  1             0         #このIDはコメントアウトされている
E001002     0             0         #このメッセージを無視
I200789     1             1         #このメッセージを強制的に両方出力
A111111     1             1         #無効レコード
W001003     9             8         #無効レコード

(3) 運用例

メッセージレベルごとのフィルタ設定とメッセージ番号ごとのフィルタ設定を組み合わせて、ログ出力するログ(メッセージ)を設定します。

特定のメッセージ番号のログ(メッセージ)だけをトレースログへ出力

例)

すべてのメッセージレベルのログ(メッセージ)をトレースログおよびsyslogへ出力しない設定をし、メッセージ番号「W1002002」のログ(メッセージ)だけをトレースログへ出力する

  • システム動作環境設定のトレースログへの出力(tracelog)およびシステムログへの出力(syslog)に“000”を指定

    tracelog=000
    syslog=000
    

  • メッセージフィルタファイル(msgfilter.info)でメッセージ番号「W1002002」をトレースログへ出力する記述を追加

    # HULFT8 Message Filter
    #
    #       ID               Message number
    #       tracelog         0: No Output 1: Output
    #       syslog           0: No Output 1: Output
    #
    # ID            tracelog    syslog
    W1002002        1            0
    

特定のメッセージ番号のログ(メッセージ)だけはトレースログおよびsyslogへ出力しない

例)

すべてのメッセージレベルのログ(メッセージ)をトレースログおよびsyslogへ出力する設定をし、メッセージ番号「I0001001」のログ(メッセージ)だけを出力しない

  • システム動作環境設定のトレースログへの出力(tracelog)およびシステムログへの出力(syslog)に“111”を指定

    tracelog=111
    syslog=111
    

  • メッセージフィルタファイル(msgfilter.info)でメッセージ番号「I0001001」をトレースログおよびsyslogへ出力しない記述を追加

    # HULFT8 Message Filter
    #
    #       ID               Message number
    #       tracelog         0: No Output 1: Output
    #       syslog           0: No Output 1: Output
    #
    # ID            tracelog    syslog
    I0001001        0            0