イベント

イベント

概要

Pandora FMS のイベントシステムでは、監視対象のシステムで発生するすべてのイベントのリアルタイムの記録を見ることができます。 表示される情報は、モジュールのステータス変更、発生または復旧したアラート、システムの再起動、カスタムイベントです。 デフォルトでは、イベントビューに、その時点で何が起こっているかを示す スクリーンショット が表示されます。

イベントは重要度に応じて分類されます。

  • メンテナンス(Maintenance) (グレー)
  • 情報(Informational) (青)
  • 正常(Normal) (緑)
  • 警告(Warning) (黄)
  • 障害(Critical) (赤)
  • メジャー(Major) (茶)
  • マイナー(Minor) (ピンク)

イベントでは次の処理を実行できます。

  • 状態の変更 (承諾または処理中)
  • 所有者の変更
  • 削除
  • 追加情報の表示
  • コメントの追加
  • カスタム応答の適用

一般情報

イベントは、次の通り “イベント(Events) > イベント表示(View Event)” から管理できます。

以下は、デフォルトのイベントビューワの例です。

Pandora FMS バージョン 726 以降では、イベントを ID、状態、名前などで並べ替えることができます。

イベントビューワには、イベントの問題の説明、それの発生元(エージェント)、および発生日時が表示されます。場合によっては、他の関連データがあります(例えば、イベントを生成したエージェントのモジュール、グループ、モジュールに関連付けられたタグなど)。

detalle_evento_1.jpg

虫眼鏡をクリックすると、イベントの詳細が表示されます。

detalle_evento_2.jpg

デフォルトでは、イベントは特定の検索によって表示されます。これを変更し、さまざまなフィルタリングオプションを使用して興味のある情報を表示することができます。

ユーザは "すべて" グループ に属していない場合、自身が属するグループのみ参照できます。

ここでわかるように、デフォルトでは(設定オプションで変更することはできますが)、Pandora FMS は最大 8時間以内のイベントを表示し、承諾されていないイベントのみを表示します。 1つのグループにしかアクセスできないユーザーは、そのグループのイベントのみ表示できます。 デフォルトではイベントはグループ化されます。同じ発生元と同じタイプの複数のイベントがある場合、イベントは 1つだけ表示されます。イベントの詳細表示では、リストの 1つの項目にグループ化された同じイベントがいくつあるかを確認できます。

フィルタは保存したり、以前に作成したフィルタを適用することができます。

我々のビデオチュートリアル "Event management in Pandora FMS" もご確認ください。

イベントは記録システムであり、監視システムの重要な部分です。

イベント操作

イベントの承諾と状態、自動承諾

イベントは、4つの異なる状態を持ちます。

  • 処理中(In process)
  • 新規(New)
  • 未承諾(Not validated)
  • 承諾済(Validated)

モジュール状態の変更によりイベントが発生した場合、通常は 2つのイベントが発生します。最初のイベントは通常状態から “障害” 状態への変化であり、2番目のイベントは問題が解決すると正常に戻るイベントです。 このような場合、障害状態(障害または警告)になっているイベントは、通常に戻ったときに自動的に承諾されます。 これはいわゆるイベント自動承諾であり、非常に便利な機能です。

手動で作業する場合、イベントを承諾できます。これにより、システムは日付とイベントを承諾したユーザを保存します。コメントを残すことも可能です。

承諾ボタンをクリックすると画面が更新され、承諾されたイベントが “消えます”。

イベントは、以下のように、応答(Responses) タブで 処理中(in process) としてマークすることができます。

これにより、イベントは自動承諾されず、保留のままになります。 次のようなアクションが可能です: ホストへの ping、それらに名前を付けるなどのカスタム対応の実行

対応するアイコンをクリックして、イベントを個別に検証、“処理中(in process)” としてチェックしたり削除できます。

または、選択して一括対応もできます。

カスタム応答に関しては、操作が適用されるイベントの最大数は 10に制限されています。

イベントのフィルタリング

フィルタリングオプションは イベントコントロールフィルタ(Event control filter) にあり、詳細オプションは 詳細オプション(Advanced options) にあります。

event6.jpg

この機能の重要な要素は次の通りです。

  • フィルタは保存して、後で再び使用することができます。
  • Pandora FMS はデフォルトで繰り返されるイベントをグループ化しますが、この設定を変更してイベントを個別に表示することができます。
  • 古いイベントの制限はカスタマイズでき(最大経過時間(Max. hours old)、特定の期間内のイベントを要求することもできます。開始(日時) および 終了(日時) の詳細オプションを参照してください。

イベントの削除

不要となったイベントは削除することができます。それには、'イベント削除(deleting events)' オプションを使います。'操作(Operation)' および 'イベント参照(View Events)' をクリックすると、イベント一覧からイベントを削除する 2つの方法があります。

'アクション(Action)' カラム内にある、グレーのごみ箱アイコンをクリックします。

自動イベント削除

設定にてイベントの最大保持期間を定義することができます。削除は、1時間ごとに実行されるデータベース(Pandora DB)の自動メンテナンス処理によって行われます。

event_purge.jpg

イベント履歴

Enterprise 版の機能で “イベント履歴(event history)” があります。これは、削除期限が来たイベントをヒストリデータベースに保存することができます。これらのイベントはイベント表示からはアクセスできず、特別なイベント履歴レポートからのみ利用できます。

event_history.jpg

イベントを参照するその他の方法

イベント参照は、'イベント(Events)' および 'イベント参照(View events)' をクリックすることにより行うことができ、文字を流すニュースチャネルのような表示 (ブラウザ上で黒い背景画面上に文字を動かす)もできます。

view_events1.jpg

RSS イベント

Pandora FMS には RSS イベントプロバイダーがあります。好きなニュースリーダーでイベントを読むことができます。 ニュースチャネルや RSS でイベント参照するには、'イベント(Events)' および 'RSS' をクリックし、ニュースリーダで購読してください。

RSS リーダ が必要です。また Pandora FMS の通知を受け取るように登録する必要があります。そうでないと、XML のコードが表示されます。

RSS イベントへアクセスするには、アクセスを許可する IP アドレスを設定する必要があります。設定は、設定 メニューの APIアクセスを許可するIPアドレスリスト にて行います。

イベントの画面表示(スクリーンセーバ)

最新のイベントを文字でスクロールして表示します。このオプションにより、最新のイベントを画面に視覚的に表示することができます。operation/events/events_marquee.php を編集することにより、表示するイベントの数、大きさ、色、メッセージフィルタを設定することができます。

イベントサウンドコンソール

イベントが発生したときにサウンドアラートを鳴らすことができます。サウンドイベントを一時停止するか、OK ボタンを押すまで、曲が再生されます。

sound_console.jpg

音を発生させるデフォルトのサウンドイベント一覧は次の通りです。(カスタマイズできます。)

  • アラート発生
  • モジュールが 警告 状態になった場合
  • モジュールが 障害 状態になった場合
  • モジュールが 不明 状態になった場合

イベント(Events)サウンドイベント(Sound Events) へ行きます。

これにより、すべてのサウンドイベントをコントロールするポップアップウィンドウが開きます。 この例では Google Chrome を使用しており、ポップアップウィンドウを開くように設定する必要があります。

サウンドイベントは非同期で 10秒ごとに探索されます。イベントが発生すると、ウィンドウが赤で点滅し始めます。さらに、ブラウザまたはオペレーティングシステムの設定に応じて、ウィンドウは他のウィンドウの上に位置しフォーカスを維持します。

そのウィンドウが開いている間、選択したアイテムと一致し、アラートが設定されているイベントについてのみ、サウンドアラートが表示されます。

拡張設定

新たな音をつくかするには、WAV フォーマット のファイルを以下のディレクトリに追加します。

/var/www/pandora_console/include/sounds/

それぞれの音はブラウザに送られ、帯域を使うことに注意してください。以下をお勧めします。

  • 音の長さは数秒にします。音は繰り返し再生されます。
  • 音は、モノラルにします。
  • 16ビット 以下のエンコーディングにします。音質は落ちますが、容量は小さくなります。
  • 音を編集したり作成したりするには、Audacity のようなツールの利用をお勧めします。

イベントの CSV へのエクスポート

他のアプリケーションで利用するために、イベントリストを CSV ファイルにエクスポートすることができます。

イベントを CSV へエクスポートするためには、操作メニューの イベント参照(View events) → CSVファイル(CSV File) をクリックします。

export_to_csv.jpg

イベント統計

イベント(Events) → 統計(statistics) で、グラフィック形式で現在のイベントに関する簡単なレポートをリアルタイムで表示する、イベント統計にアクセスできます。グラフは以下の 4種類あります。

イベントグラフ(Event graph)

状態ごとのイベントのパーセンテージ。

ユーザごとのイベントグラフ(Event graph by user)

ユーザごとのパーセンテージ。

エージェントごとのイベントグラフ(Event graph by agent)

イベントを生成したエージェントごとのパーセンテージ。

承諾済イベント数(Number of validated events)

承諾されたイベント。

いずれかのセクションをクリックすると、詳細情報が表示されます。

estadisticas_eventos.jpg

イベントアラート、イベント相関

Pandora FMS リリース 741 以降、イベント関連のアラートパフォーマンスを改善することを目的とした一連の変更を行いました。これに関する詳細は、アラート相関: イベントおよびログアラート を参照してください。

コマンドラインからのイベント

コマンドラインからのイベント生成

Pandora FMS 外部 API は、/include/api.php ファイルの(HTTPS を通した)リモート呼び出しによって利用します。これは、サードパーティのアプリケーションを統合するために Pandora FMS で定義されている方法です。これは、Pandora FMS を操作するための値または値のリストを受け取るフォーマットされたパラメータと共に行う呼び出しで構成されます。

WEB API を利用することにより、データベースへの接続が出来ない場合や Pandora FMS やエージェントをインストールしていなくても、リモートのサイトから Pandora FMS を操作することができます。

Pandora FMS の API を有効化するには 3つのポイントがあります。

  1. コマンドの実行元 IP の API アクセスを有効にします。すべての IP の場合は、'*' です。
  2. API パスワードを設定します。
  3. ログインもしくは、API アクセス用のユーザの ユーザ名/パスワード を使います。

Pandora FMS API を介したイベントの作成または検証用のパスワードは、以下からコピーできます。

/usr/share/pandora_server/util/pandora_revent.pl

クライアントデバイスからパラメータ無しで実行すると、書式を見ることができます。

Pandora FMS Remote Event Tool Copyright (c) 2013 Artica ST
This program is Free Software, licensed under the terms of GPL License v2
You can download latest versions and documentation at https://www.pandorafms.org

Options to create event:

  ./pandora_revent.pl -p <path_consoleAPI> -u <credentials> -create_event <opts> 

Where the options are:

 -u <credentials>:
     API credentials separated by comma: <api_pass>,<user_name>,<user_pass>
 -name <event_name>:
   Free text
 -group <id_group>:
   Group identifier (use 0 for 'all')  
 -agent:
   Specify agent by identifier.
 
Optional parameters:
 
 [-status <status>]  : 0 New, 1 Validated, 2 In process
 [-user <id_user>]   : Comment user (combine with -comment)
 [-type <event_type>] : unknown, alert_fired, alert_recovered, alert_ceased
         alert_manual_validation, system, error, new_agent
         configuration_change, going_unknown, going_down_critical,
         going_down_warning, going_up_normal
 [-severity <severity>] : 
        0 Maintenance,
        1 Informative,
        2 Normal,
        3 Warning,
        4 Critical,
        5 Minor,
        6 Major.
 [-am <id_agent_module>]       : ID del modulo de agente origen del evento
 [-alert <id_alert_am>]        : ID de la alerta/modulo origen del evento
 [-c_instructions <critical_instructions>]
 [-w_instructions <warning_instructions>]
 [-u_instructions <unknown_instructions>]
 [-user_comment <comment>]
 [-owner_user <owner event>]   : Event proprietary, use login name
 [-source <source>]            : ('Pandora' by default)
 [-tag <tags>]                 : Tag (must already exist in the system)
 [-custom_data <custom_data>]  : Custom data must be a 64 base 
                                 encoded JSON document (>=6.0)
 [-server_id <server_id>]      : Server node ID (>=6.0)
        [-id_extra <id extra>] : Extra ID
 [-agent_name <Agent name>]    : Agent name, do not mistake with alias.
 [-force_create_agent<0 o 1>]  : It forces agent creation if it does not exist that 
                                 is why the parameter is 1 and it must have the option 
                                 agent_name.

イベント生成の例: (\はインデントのために使用しています)

./pandora_revent.pl \
     -p https://$path_consoleAPI/pandora_console/include/api.php \
     -u $api_pass, $user_name, $user_pass \
     -create_event \
                   -name "SampleEvent" \
                   -group 2 -agent 189 \
                   -status 0 \
                   -user "admin" -type "system" \
                   -severity 3 \
                   -am 0 \
                   -alert 9 \
                   -c_instructions "Critical instructions" \
                   -w_instructions "Warning instructions" 

イベントを承諾するオプション:

./pandora_revent.pl -p <path_to_consoleAPI> -u <credentials> -validate_event <options> -id <id_event>

イベント承諾のサンプル:

./pandora_revent.pl \
    -p https://$path_consoleAPI/pandora/include/api.php \
    -u $api_pass, $user_name, $user_pass \
    -validate_event \
                   -id 234

生成されたイベントの詳細にunknowncritical または warningフィールドを表示するには、そのイベントがgoing_unknowngoing_down_critical、または going_down_warning である必要があります。

コマンドライン (pandora_revent_create) からのイベントのみの生成

イベントの承諾を除き、pandora_revent スクリプトど同じ機能です。

/usr/share/pandora_server/util/pandora_revent_create.pl

このツールは、Pandora FMS いイベントを作成するために、リモート HTTP/HTTPS 接続を利用します。引数無しで実行すると、書式を参照できます。

Pandora FMS Remote Event Tool Copyright (c) 2013 Artica ST
This program is Free Software, licensed under the terms of GPL License v2
You can download latest versions and documentation at http://www.pandorafms.org

Options to create event: 

	./pandora_revent_create.pl -p <path_to_consoleAPI> -u <credentials> -create_event <options> 

Where options:

	-u <credentials>			: API credentials separated by comma: <api_pass>,<user>,<pass>
	-name <event_name>			: Free text
	-group <id_group>			: Group ID (use 0 for 'all') 
	-agent					: Agent ID
	
Optional parameters:
	
	[-status <status>]			: 0 New, 1 Validated, 2 In process
	[-user <id_user>]			: User comment (use in combination with -comment option)
	[-type <event_type>]			: unknown, alert_fired, alert_recovered, alert_ceased
							  alert_manual_validation, system, error, new_agent
							  configuration_change, going_unknown, going_down_critical,
							  going_down_warning, going_up_normal
	[-severity <severity>] 		: 0 Maintance,
						  1 Informative,
						  2 Normal,
						  3 Warning,
						  4 Crit,
						  5 Minor,
						  6 Major
	[-am <id_agent_module>]		: ID Agent Module linked to event
	[-alert <id_alert_am>]			: ID Alert Module linked to event
	[-c_instructions <critical_instructions>]
	[-w_instructions <warning_instructions>]
	[-u_instructions <unknown_instructions>]
	[-user_comment <comment>]
	[-owner_user <owner event>]		: Use the login name, not the descriptive
	[-source <source>]			: (By default 'Pandora')
	[-tag <tags>]				: Tag (must exist in the system to be imported)
	[-custom_data <custom_data>]		: Custom data should be a base 64 encoded JSON document (>=6.0)
	[-server_id <server_id>]		: The pandora node server_id (>=6.0)

Example of event generation:

	./pandora_revent_create.pl -p http://localhost/pandora_console/include/api.php -u 1234,admin,pandora 
		-create_event -name "SampleEvent" -group 2 -agent 189 -status 0 -user "admin" -type "system" 
		-severity 3 -am 0 -alert 9 -c_instructions "Critical instructions" -w_instructions "Warning instructions"

最初に、API アクセスを有効にする設定を行う必要があります。それには、次の 3つのステップを行います。

  1. . API アクセスを許可する IP を設定します (* を指定すると全 IP アドレスになります)
  2. . API パスワードを設定します
  3. . 通常のユーザ/パスワードまたは、API 用に定義したユーザを利用します

イベント詳細の不明、障害、警告の手順フィールドを設定するには、イベントタイプが、going_unknown, going_down_critical または going_down_warning のいずれかでなければいけません。

例:

/pandora_revent_create.pl -p http://192.168.50.12/pandora_console/include/api.php -u pandora12,admin,pandora 
-create_event -name "Another nice event" -group 0 -type "system" -status 0 -severity 4
-user "davidv" -owner_user "admin" -source "Commandline" -comment "Prueba de comentario"

イベントのカスタムフィールド

カスタムフィールドのあるイベントは、Pandora FMS の CLI から生成できます。例えば、イベントは次のコマンドで生成されます。

perl pandora_manage.pl /etc/pandora/pandora_server.conf --create_event 'Custom event' system Firewalls 'localhost' 'module' 0 4  'admin'     '{"Location": "Office", "Priority": 42}'

これは、次のようになります。

イベント設定

Pandora FMS コンソールの管理画面のイベントセクション('イベント(Events)' > 'イベント参照(View events)' > 'イベント管理(Manage evnets)' では、イベントに関する次の設定ができます。

  • イベントフィルタリング
  • イベント応答
  • イベント表示

configuracion_eventos.jpg

カスタムイベント表示

イベントビューワにデフォルトで表示されるフィールドをカスタマイズすることができます。それには、イベント(Events)'カスタムイベント(Custom Events) をクリックし、表示するフィールドを選択することができます。

イベント(Events) > カスタムイベント(Custom events) からもアクセスできます。

デフォルトのフィールドは次の通りです。

  • 簡易重要度(Severity mini): 簡易フォーマットでのイベントの重要度。
  • イベント名(Event name): イベント名。
  • エージェント ID(Agent ID): エージェント ID。
  • 状態(Status): イベントの状態。
  • タイムスタンプ(Timestamp): イベントが作成された日時。

ただし、デフォルトで表示されているもの以外にも多くのフィールドがあり、“選択済フィールド” に追加することができます。

  • イベントID(Event ID) : イベントID
  • エージェント名(Agent name) : エージェント名
  • ユーザ(User) : イベント作成ユーザ
  • グループ(Group) : モジュールが所属するグループ
  • イベントタイプ(Event type) : イベントタイプ
  • モジュール名(Module name) : モジュール名
  • アラート(Alert) : イベントに紐づいているアラート
  • 重要度(Severity) : イベントの重要度
  • コメント(Comment) : イベントのコメント
  • タグ(Tags) : モジュールタグ
  • ソース(Source) : イベントソース
  • 拡張ID(Extra ID) : 拡張ID
  • 所有者(Owner) : 所有者
  • ACKタイムスタンプ(ACK Timestamp) : イベントが承諾された日時
  • 手順(Instructions) : 障害または警告時の手順
  • サーバ名(Server name) : イベント発生元サーバの名前
  • データ(Data) : イベントで報告された数値データ
  • モジュールの状態(Module status) : モジュールの現在の状態
  • モジュールカスタム ID(Module custom ID): モジュールのモジュールカスタムIDフィールドの値。

表示したいフィールドを矢印を使って “存在するフィールド(Fields available)” 一覧から、“選択済フィールド(Fields selected)” へ移動します。選択したら、“更新(Update)” ボタンをクリックします。

イベントフィルタの作成

ここでは、フィルタを作成、削除、編集できます。

フィルタの作成(Create Filter) ボタンをクリックすると、以下のようなイベントフィールドを入力できます。

フィルタを保存したら、イベントビュー自体からすぐにフィルタをロードして、毎回フィルタを再設定しなくても目的の情報をすばやく表示できます。

event1.jpg

イベント応答

概要

ここでは、イベント応答を作成、編集、削除できます。 イベント応答は、イベントに対して実行できるパーソナライズされたアクションです。たとえば、イベントの関連情報と統合した Integria IMS でのチケットの作成です。Integria IMS については、インシデント管理も参照してください。

名前、説明、使用するパラメータ、コンマ区切のパラメータ、使用するコマンド(マクロを使用できます)、タイプ、およびコマンドを実行するサーバを入力する必要があります。

イベント応答マクロ

利用可能なマクロは次の通りです。

  • エージェントの別名: _agent_alias_
  • エージェント名: _agent_name_
  • エージェントアドレス: _agent_address_
  • エージェント ID: _agent_id_
  • イベントに関連するアラート ID: _alert_id_
  • イベントが発生した日付: _event_date_
  • 拡張 ID: _event_extra_id_
  • イベント ID: _event_id_
  • イベント手順: _event_instruction_
  • イベント重要度 ID: _event_severity_id_
  • イベント重要度 (文字列表示): _event_severity_text_
  • イベントソース: _event_source_
  • イベントの状態 (new, validated または event in process): _event_status_
  • カンマ区切りのイベントタグ: _event_tags_
  • イベントの全テキスト: _event_text_
  • イベントタイプ (System, going into Unknown Status…): _event_type_
  • utimestamp 形式でのイベントが発生した日時: _event_utimestamp_
  • グループ ID: _group_id_
  • データベース内におけるグループ名: _group_name_
  • イベントに関連付けられたモジュールアドレス: _module_address_
  • イベントに関連付けられたモジュール ID: _module_id_
  • イベントに関連付けられたモジュール名: _module_name_
  • イベント所有者ユーザ: _owner_user_
  • ユーザ ID: _user_id_
  • 応答を実行したユーザの ID: _current_user_
  • コマンド応答時間(秒): _command_timeout_