イベントフィルターは,イベントIDや発行元ユーザー名などをキーにして,JP1イベントをフィルタリングします。イベントフィルターを設定する個所を次に示します。
注※ 詳細については,「付録J.4 JP1/SESイベントをJP1イベントに変換する」を参照してください。
イベントフィルターの書式
イベントフィルターは一つ以上の「条件文群」の集まりです。条件文群は一つ以上の「条件文」の集まりです。条件文は1行で表され,条件文を並べることで条件文群が構成されます。条件文群同士の間には「OR」とだけ記述した行を挿入します。なお,1行の最大長は1,024バイトです。一つのイベントフィルター全体の最大長は,64キロバイトです。
条件文群は条件文群を構成する条件文がすべて成立すると成立します。イベントフィルターは,イベントフィルターを構成する条件文群のどれか一つが成立すると成立します。
イベントフィルターの書式の概念を次の図に示します。
図14-1 イベントフィルターの書式の概念
JP1/Base 08-50以降では,イベントフィルターに除外条件を記述できます。
抽出条件が成立するJP1イベントのうち,特定のJP1イベントを除外したい場合に記述します。
抽出条件と除外条件の間には「EXCLUDE」とだけ記述した行を挿入します。「EXCLUDE」は,一つのフィルターに一つだけ記述でき,「EXCLUDE」より前に記述された条件文群は抽出条件,「EXCLUDE」より後ろに記述された条件文群は除外条件となります。除外条件に記述する条件文の書式は,抽出条件と同じです。
除外条件は省略できるため,以前のバージョンで作成したフィルターをJP1/Base 08-50以降でもそのまま使用できます。
条件文の書式
条件文の書式は次の形式で記述します。
属性名△比較キーワード△オペランド1△オペランド2△…
△は区切りで,一つ以上の連続した半角のスペースまたはタブを示します。オペランドを複数指定した場合は,どれか一つに当てはまるときに条件文が成立します。オペランドとして,半角スペース,タブ,CR,LFおよび%は通常の方法では使用できませんが,次に示すように2桁の16進数で表現できます。
また,半角スペース,タブ,CR,LFおよび%以外の文字も16進数で表現できます。
属性名
条件文の属性名を次の表に示します。
表14-2 条件文の属性名
属性名 | 内容 | 型および形式 |
---|---|---|
B.SEQNO | イベントDB内通し番号 | 数値(0~2,147,483,647) |
B.ID | イベントID | イベントID※1 |
B.PROCESSID | 発行元プロセスID | 数値(0~2,147,483,647) |
B.TIME | 登録時刻 | 数値 (0~2,147,483,647 =UTC1970年1月1日00:00:00からの秒数) |
B.ARRIVEDTIME | 到着時刻 | 数値 (0~2,147,483,647 =UTC1970年1月1日00:00:00からの秒数) |
B.REASON | イベントDBへの登録要因 | 数値(1~4) |
B.USERID | 発行元ユーザーID | 数値(-1~2,147,483,647) |
B.GROUPID | 発行元グループID | 数値(-1~2,147,483,647) |
B.USERNAME | 発行元ユーザー名 | 文字列※3 |
B.GROUPNAME | 発行元グループ名 | 文字列※3 |
B.SOURCESERVER | 発行元イベントサーバ名 | 文字列※3 |
B.DESTSERVER | 送信先イベントサーバ名 | 文字列※3 |
B.SOURCESEQNO | 発行元別通し番号 | 数値(0~2,147,483,647) |
B.CODESET | コードセット | 文字列※3 |
B.MESSAGE | メッセージ | 文字列※3 |
E.拡張属性名※2 | 拡張属性 | 文字列※3 |
注※1 イベントIDは,文字列型,数値型と異なります。詳細については,「表14-3 条件文の比較キーワード」の条件内の属性値がイベントIDの場合を参照してください。
注※2 拡張属性名の形式については,「15.1.2 拡張属性」を参照してください。
注※3 文字列は,英字の大小文字を区別します。
比較キーワード
条件文の比較キーワードを次の表に示します。
表14-3 条件文の比較キーワード
比較キーワード | オペランドの数 | 条件 |
---|---|---|
IN | 1以上 | 属性値が,オペランドのどれかと一致する。 属性値が文字列型の場合,オペランドは任意の文字列。 属性値が数値型の場合,オペランドは10進数(符号可)と見なせる文字列。そうでないオペランドは常に不一致。 属性値がイベントIDの場合,オペランドはx:yまたはx(xとyは1~8桁の16進数)の形式の文字列。xがイベントID基本部に,yがイベントID拡張部に対応。そうでないものは常に不一致。 |
NOTIN | 1以上 | 比較キーワードINの否定。 |
BEGIN | 1以上 | 属性値が文字列型であり,オペランドに指定した文字列のどれかで始まると成立。属性値が数値型またはイベントIDの場合は常に不成立。 |
RANGE | 2 |
|
TRANGE | 2 | 次の条件を満たすと成立する。
|
DEFINED | 0 | 属性名が拡張属性名を表し,指定の拡張属性が定義されていると成立。定義されていないと不成立。属性名が基本属性を表す場合は常に成立。 |
NOTDEFINED | 0 | 比較キーワードDEFINEDの否定。 |
SUBSTR | 1以上 | 属性値が文字列型であり,オペランドに指定した文字列のどれかが含まれていると成立。 属性値が数値型,またはイベントIDの場合は常に不成立。 |
NOTSUBSTR | 1以上 | 比較キーワードSUBSTRの否定。 |
REGEX※1 | 1以上 | 正規表現記述用比較キーワード。 属性値が文字列型であり,オペランドに指定した正規表現のどれかと一致すると成立。 正規表現については「付録F 正規表現の文法」を参照のこと。 |
WITHIN※2 | 2 |
|
注※1 REGEXは06-71から追加された比較キーワードです。このため,06-71以降のJP1/Base以外でREGEXを定義したファイルを利用した場合,REGEXの定義部分は無視されます。なお,機種依存文字を正規表現に指定した場合でも通常文字列と同様に処理されます。
注※2 WITHINは07-00から追加された比較キーワードです。jevexportコマンドで指定するフィルターファイルでだけ指定できます。このため,07-00以降のJP1/Baseで提供するjevexportコマンド以外でWITHINを定義したファイルを利用した場合,WITHINの定義がエラーとなり,06-71以前と同じ動作となります。
イベントフィルターの記述例
イベントフィルターの記述例を示します。
B.ID IN 111:0
または
B.ID IN 111
または
B.ID IN 00000111:00000000
B.USERID IN 103
または
B.USERID RANGE 103 103
B.SOURCESERVER IN reysol
B.MESSAGE BEGIN KAJP KAVA
B.MESSAGE BEGIN Hello,%20world
B.ID NOTIN 222
B.USERNAME IN hanako
E.TASK_NAME IN 在庫管理
E.TASK_NAME DEFINED
B.TIME TRANGE 20020616000000 99999999999999
E.SEVERITY IN Warning Error
E.PRODUCT_NAME DEFINED
OR
B.SOURCESERVER IN www.hitachi.co.jp
E.PRODUCT_NAME IN /HITACHI/JP1/AJS
B.TIME WITHIN M 30
(B.TIME TRANGE 20030716010000 20030716013000と同意)
B.TIME WITHIN H 24
(B.TIME TRANGE 20030715012121 20030716012121と同意)
B.TIME WITHIN D 2
(B.TIME TRANGE 20030715000000 20030716235959と同意)
B.ID IN 101 102
OR
E.SEVERITY IN Error
EXCLUDE
B.SOURCESERVER IN host3
注※ イベントサーバ環境での時刻を基にしています。