Windows イベントログフィルターの拡張された機能

以下ドキュメントはすでに内容が古くなっています。以下 URL より最新のドキュメントをご参照ください。

https://www.miraclelinux.com/support

 

[概要]

本ドキュメントでは、MIRACLE ZBX 2.2.7-1 以降の 2.2 系バージョン、2.0.12-1 以降の 2.0 系バージョン、および 1.8.19-2 以降の 1.8 系バージョンで提供されている、Windows イベントログフィルター機能の拡張された機能について解説します。

 

[詳細]

本機能では、正規表現メニューへの Windows イベントログ用のフィルター形式の追加、および、新規アイテムキー eventlog_ext[] の追加により、Agent 側で Windows イベントログを『イベントログ本文』、『深刻度』、『ソース』、『イベント ID』の複合条件によってフィルターすることを可能にします。

フィルターには、条件に合致するイベントログについて、『含める』、もしくは、『含めない』を指定する 2 種類のフィルターが存在し、それぞれ複数回フィルターを掛けることが可能です。

 

以下手順でフィルター作成とeventlog_ext[] アイテム作成を行うことにより監視が可能になります。

 

[動作環境]

本機能は MIRACLE ZBX Server、MIRACLE ZBX Agent の両方を MIRACLE ZBX 2.2.7-1 以降の 2.2 系バージョン、2.0.12-1 以降の 2.0 系バージョン、もしくは 1.8.19-2 以降の 1.8 系バージョンにすることによって利用可能です。MIRACLE ZBX Server および、本機能を利用する Agent 環境のみ該当バージョンへアップデートし、他の Agent 環境は古いバージョンを使用し続けることも可能です。

 

[手順]

 

1. Windows イベントログの正規表現フィルター設定

本機能拡張では、Windows イベントログのフィルター設定を記述する記法を正規表現メニューの機能へ追加しています。

正規表現メニューとは、Web インターフェイスのメニュー [管理] - [一般設定] - [正規表現] で表示されるメニューのことを指します。

1.1. 正規表現フィルターの作成

MIRACLE ZBX の Web インターフェイスから、メニュー [管理] - [一般設定] - [正規表現]を開き、『正規表現の作成』ボタンをクリック。

1.2. 正規表現フィルターの設定

正規表現作成の画面において、以下項目を設定する。

 

正規表現フィルター設定項目
項目 説明
名前(必須項目) フィルターの名前を入力。
テスト文字列(必須項目) この画面では『結果』欄には常に真と表示されるが、必ずテスト文字列を入力する必要がある。

条件式

(必須項目)

条件式の形式  Windows イベントログ向けのフィルター作成時は、『対象のイベントログを指定する』、もしくは『除外するイベントログを指定する』を選択する。
条件式 『イベントログ本文,深刻度,ソース名,イベント ID』(区切り文字が『,』の場合)の形式でフィルターを記入する。『イベントログ本文』、『深刻度』、『ソース名』、『イベント ID』は正規表現として評価される。
区切り文字 『条件式』における区切り文字として使用される文字を『,』、『#』、『/』から選択する。
大文字小文字を区別 条件式の『イベントログ本文,深刻度,ソース名,イベント ID』について、大文字小文字を区別して判定するか指定する。

 

 

<設定例>

以下設定例では、『全ての "Warning" 深刻度のイベントログを取得』し、そこから『ソース名 "Sophos Anti-Virus"、イベントID "6" のイベントログを除外』し、さらに『イベントログ本文に "通信に失敗しました" を含むイベントログを除外』している。

 

1.3. 『対象のイベントログを指定する』、『除外するイベントログを指定する』の動作について

  • 設定保存時に条件式の形式でソートされ、必ず『対象のイベントログを指定する』、『除外するイベントログを指定する』の順に表示され、さらにそれぞれの形式内で文字列順でソートされる。
  • 条件判定の処理は必ず『対象のイベントログを指定する』、『除外するイベントログを指定する』の順に上から下へ向かって行われる。
  • 複数の『対象のイベントログを指定する』、および『除外するイベントログを指定する』の条件が存在する場合、最初に複数の『対象のイベントログを指定する』をOR条件で結合し、その結果から、複数の『除外するイベントログを指定する』をOR条件で結合した条件を除外する。以下ベン図にあるように、『対象のイベントログを指定する』合成したもの(青地)から、『除外するイベントログを指定する』を合成したもの(赤地)を除外している。

 

『対象のイベントログを指定する』条件A、B、C、『除外するイベントログを指定する』条件D、E、F

= (A ∨ B ∨ C) ∧ ¬(D ∨ E ∨ F)

 

<ベン図>

 

 

2. evetlog_ext[] のアイテム設定

『eventlog_ext[]』のアイテム設定方法について記載する。

 

evetlog_ext[] アイテム設定項目
項目 説明
キー eventlog_ext[イベントログタイプ,@フィルタ名,Eventlog APIバージョン,maxlines,mode]
イベントログタイプ

eventlog[]キー同様に、Application、System などを指定可能。

入力必須。省略した場合は、アイテムのステータスが「取得不可」となる。

なお、第 3 引数に『6』を指定した場合に限り、『アプリケーションとサービス ログ』のパスも指定可能となる。

フィルタ名

前項で作成した正規表現メニューのフィルター名に『@』を付けて指定する。

『test_filter』という名で作成したフィルターは、『@test_filter』と指定する。

省略した場合は、フィルターされずに全てのログが取得される。

Eventlog API バージョン (5 もしくは 6)

『5』を指定した場合は既存のeventlog[]キーと同等の動作をする。

『6』を指定した場合は既存のeventlog6[]キーと同等の動作をする。

Windows2008 以降においては『6』を使用することが望ましい。

デフォルトは『5』。

maxlines 既存のeventlog[]キーと同じように、1秒間に処理するログ数の上限を指定する。
mode eventlog[]キー同様に、『all』(デフォルト)、『skip』を指定可能。『skip』指定時には、古いデータを読み込まず、監視アイテム設定時点以降のデータのみを読み込む。

 

<eventlog_ext[]設定例>

イベントログタイプ『Application』について『eventlog_test_a』という名の正規表現フィルターが適用されている

以上の設定により、フィルターされた Windows イベントログを収集可能になります。