説明

インシデント・プールの管理方法、システムおよびコンピュータ・プログラム

【課題】インシデント・プールを管理する。
【解決手段】インシデントのプールであって、所定の初期期間を有するプールを作成すること、受信されたインシデントそれぞれをプールに割り当てること、インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てること、インシデントの1つ以上に関して、インシデントに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかを判断すること、プールをクローズする条件が満たされた場合、プール内の各インシデントに関して、インシデントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、インシデントが、その所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めることを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の分野は、データ処理であり、さらに具体的に言い換えると、分散処理システムにおける、イベントおよびアラート抑制に関連した適切なアラートの配信、ならびにイベントおよびアラート分析のためのインシデント・プール(incident pool)の管理のための方法、システムおよび製品である。
【背景技術】
【0002】
1948年のEDVACコンピュータ・システムの開発は、コンピュータ時代の幕開けとして言及されることが多い。そのとき以来、コンピュータ・システムは、非常に複雑なデバイスへと発達してきた。今日のコンピュータは、EDVACなどの初期のシステムよりも大幅に高度化されている。典型的には、コンピュータ・システムは、ハードウェアおよびソフトウェア・コンポーネントの組み合わせ、アプリケーション・プログラム、オペレーティング・システム、プロセッサ、バス、メモリ、入出力デバイスなどを含む。半導体加工およびコンピュータ・アーキテクチャの進歩がコンピュータのパフォーマンスのさらなる向上を推進していくにつれて、ハードウェアの向上したパフォーマンスを生かすよう、より高度なコンピュータ・ソフトウェアが発達し、今日では、わずか数年前よりも大幅に強力なコンピュータ・システムがもたらされている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
集中的な計算用の現代の分散処理システムは、多数のデバイスを有し、多くのプロセスが各デバイス上で実行されることもあり、それらはすべて、自動エラー回復のため、システム管理者へのレポーティングのため、およびその他の理由による、エラーおよびステータス・レポーティングを行うことができる。多くの場合、例えばエラーの場合には、そのようなエラー・レポートおよびステータス・レポートの多さに圧倒され、それらを意味のある形で扱うことができない。例えば、10万のエラー・レポートを受信するシステム管理者は、そのようなレポートの多さに圧倒されると考えられ、その結果、全体としてそうしたレポートの有益さおよび適切さはいっそう失われていく。
【課題を解決するための手段】
【0004】
分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理する方法、システム、およびコンピュータ・プログラムが提供され、分散処理システムの1つ以上のコンポーネントからの複数のインシデント(incident)を、インシデント・アナライザ(incident analyzer)によってインシデント・キューから受信すること、インシデントのプールであって、所定の初期期間を有するプールを、インシデント・アナライザによって作成すること、受信されたインシデントそれぞれを、インシデント・アナライザによってプールに割り当てること、インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てること、インシデント・アナライザによって、インシデントの1つ以上に関して、そのインシデントに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする(close)条件が満たされたかどうかを、インシデント・アナライザによって判断すること、プールをクローズする条件が満たされた場合、プール内の各インシデントに関して、そのインシデントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、インシデントが、その所定の最短時間プールに入っていた場合、クローズされたプールにインシデントを含めること、インシデントが、その所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し(evict)、インシデントを次のプールに含めることが含まれる。
【0005】
本発明の前述およびその他の目的、特徴、および利点が、添付の図面に表す本発明の例示の実施形態の、より詳しい以下の記載から明らかになる。添付の図面では、同じ参照番号は、概して本発明の例示の実施形態の同じ部分を表現する。
【図面の簡単な説明】
【0006】
【図1】本発明の実施形態による、分散処理システムにおけるイベントおよびアラート抑制を用いた適切なアラートの配信のための例示のシステムを表す。
【図2】本発明の実施形態による、イベントおよびアラート抑制を用いた適切なアラートの配信で有用な例示のコンピュータを含む自動計算機(automated computing machinery)のブロック図を示す。
【図3】本発明の実施形態による、分散処理システムにおけるイベントおよびアラート抑制を用いた適切なアラートの配信のための例示のシステムのブロック図を示す。
【図4】本発明の実施形態による、イベント・プールへのイベントの割り当てを表す図を示す。
【図5】本発明の実施形態による、アラート・プールへのアラートの割り当てを表す図を示す。
【図6】本発明の実施形態による、イベントおよびアラート抑制を用いた適切なアラートの配信方法の例を表すフローチャートを示す。
【図7】本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理する例示の方法を表すフローチャートを示す。
【図8】本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するさらなる方法を表すフローチャートを示す。
【図9】本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するさらなる方法を表すフローチャートを示す。
【発明を実施するための形態】
【0007】
分散処理システムにおいて、本発明の実施形態に従い、イベントおよびアラート分析ならびに適切なアラートの配信のためにインシデント・プールを管理するための例示の方法、システム、およびコンピュータ・プログラムについて、添付の図面を参照して記載される。図1より開始する。図1は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析ならびに適切なアラートの配信のために、インシデント・プールを管理する例示のシステムを表す。分散処理システムは、典型的には、コンピュータ・ネットワークを介して通信する複数の自律コンピュータまたは半自律コンピュータ(semi−autonomous computer)として実装される。そのような分散処理システムの例では、コンピュータは、共通の目的を達成するために相互に対話することが多い。そのような、例としての分散システムで実行されるコンピュータ・プログラムは、典型的には分散プログラムと呼ばれ、そのようなプログラムを書くプロセスを表現するには、分散プログラミングが用いられることが多い。
【0008】
図1の例では、分散処理システム(101)は、並列コンピュータ・ネットワーク(100)、データ記憶デバイス(118)の形態のコンピュータの不揮発性メモリ、プリンタ(120)の形態のコンピュータの出力デバイス、およびコンピュータ端末(122)の形態のコンピュータの入出力デバイスとして実装されている。図1の例の並列コンピュータ・ネットワーク(100)は、複数の計算ノード(102)も含む。各計算ノードは、1つ以上のコンピュータ・プロセッサ、専用のコンピュータ・メモリ、および専用の入出力機能性から成る、自動計算デバイスである。計算ノード(102)は、データ通信のために、いくつかの独立したデータ通信ネットワークによって結合されており、このデータ通信ネットワークには、高速イーサネット(R)ネットワーク(174)、ジョイント・テスト・アクション・グループ(「JTAG:Joint Test Action Group」)ネットワーク(104)、共同動作向けに最適化されたツリー・ネットワーク(106)、およびポイント・ツー・ポイント動作向けに最適化されたトーラス・ネットワーク(108)が含まれる。ツリー・ネットワーク(106)は、計算ノードをツリー構造として編成するように計算ノードに接続されたデータ通信リンクを含む、データ通信ネットワークである。各データ通信ネットワークは、計算ノード(102)間のデータ通信リンクを用いて実装される。データ通信リンクは、並列コンピュータの計算ノード間の並列動作のためのデータ通信を提供する。
【0009】
並列コンピュータ・ネットワーク(100)は、計算ノードに加えて、データ通信ネットワークの1つ(174)を介して計算ノード(102)に結合された入出力(「I/O:input/output」)ノード(110、114)を含む。I/Oノード(110、114)は、計算ノード(102)と、I/Oデバイス(118、120、122)との間のI/Oサービスを提供する。I/Oノード(110、114)は、ローカル・エリア・ネットワーク(「LAN:local area network」)(130)を介して、データ通信のために接続されている。さらに、並列コンピュータ・ネットワーク(100)は、ネットワークの1つ(104)を介して計算ノードに結合されたサービス・ノード(116)を含む。サービス・ノード(116)は、プログラムを計算ノードへロードすること、計算ノード上でのプログラム実行を開始すること、計算ノード上でのプログラム動作の結果を回収することなど、複数の計算ノードに共通するサービスを提供する。サービス・ノード(116)は、イベントおよびアラート分析モジュール(124)を実行し、コンピュータ端末(122)上で実行されているサービス・アプリケーション・インターフェース(126)を介してシステム管理者(128)と通信する。
【0010】
図1の分散処理システムのコンポーネント、すなわち、分散処理システムのデバイスまたは図1の分散処理システムのデバイス上で実行されているプロセスの多くは、イベントを介して何らかの形態のエラーまたはステータス・レポーティングを行うことができ、上記のコンポーネントの多くはさらに、そのようなイベントの1つ以上に応答してアラートを受信できる。本発明の実施形態による有用な分散処理システムでは、多くの場合、何十万または何百万ものコンポーネントが、多くの場合はイベントの形態のインシデントの提供またはアラートの受信を行うことができる。
【0011】
インシデントとは、本明細書で使用される総称であり、以下に記載されるイベントなど、分散処理システムのコンポーネント上での特定の事象(occurrence)の識別情報もしくは通知、または、以下に記載されるアラートなど、多くの場合イベントに基づく、事象の純化された識別情報、または、当業者が想到するであろうその他の通知を指す。
【0012】
インシデントは、本発明の実施形態によるイベントおよびアラート分析のためにプールにおいて管理される。インシデントのプールは、インシデントの発生時間、インシデント・キューへの記録時間、インシデント・プールに含められた時間、または当業者が想到するであろうその他の時間に基づいて整理されたインシデントの集合である。
【0013】
図1のサービス・ノード(116)には、イベントおよびアラート分析モジュール(124)がインストールされており、イベントおよびアラート分析モジュール(124)は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理できるイベント・アナライザおよびアラート・アナライザとして実装された、少なくとも2つのインシデント・アナライザを含む。イベントおよびアラート分析モジュール(124)は、分散処理システムの1つ以上のコンポーネントからの複数のインシデントを受信すること、インシデントのプールであって、所定の初期期間を有するプールを作成すること、受信されたインシデントそれぞれをプールに割り当てること、各インシデントに、プールに含められるべき所定の最短時間を割り当てること、インシデントの1つ以上に関して、そのインシデントに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかを判断すること、プールをクローズする条件が満たされた場合、プール内の各インシデントに関して、そのインシデントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、インシデントが、その所定の最短時間プールに入っていた場合、クローズされたプールにインシデントを含めること、ならびにインシデントが、その所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めることができる自動計算機として実装される。
【0014】
さらに、イベントおよびアラート分析モジュール(124)は、本発明の実施形態による分散処理システムにおいて、イベントおよびアラート抑制を用いた適切なアラート配信を行うことができる。図1のイベントおよびアラート分析モジュール(124)は、分散処理システムの1つ以上のコンポーネントからの複数のイベントを、イベント・キューにおいて受信すること、イベント到着ルール(event arrival rules)、イベント・プール動作ルール(events pool operation rules)、イベント抑制ルール(event suppression rules)、およびイベント・プール・クローズ・ルール(events pool closure rules)を含むイベント分析ルールを含むイベント・アナライザによって、イベント・プールに、受信されたイベントそれぞれを割り当てること、イベント到着ルールと、イベント・プールに割り当てられているイベントとに基づき、イベント・アナライザによって1つ以上のアラートを特定すること、イベント・アナライザによって、イベント・プール動作ルールに基づき、イベント・プールをクローズすること、クローズされたイベント・プール内の1つ以上のイベントを抑制するかどうかを、イベント・アナライザによってイベント抑制ルールに基づき判断すること、ならびに、イベント・アナライザによって、イベント・プール・クローズ・ルールと、イベント・プールに割り当てられている任意の抑制されないイベントとに基づき、1つ以上の追加のアラートを特定すること、イベント・アナライザによって特定されたすべてのアラートを、イベント・アナライザによってアラート・アナライザに送信すること、特定されたアラートを、アラート・アナライザによってアラート・プールに割り当てること、任意のアラートを抑制するかどうかを、アラート・アナライザによって、アラート分析ルールと、アラート・プール内のアラートとに基づき判断すること、ならびに、抑制されないアラートを、分散処理システムの1つ以上のコンポーネントに送ることができる自動計算機として実装される。
【0015】
一部の実施形態では、抑制されないアラートは、分散処理システムの1つ以上のコンポーネントに送られる。そのようなコンポーネントの1つは、システム管理者に表示するために、コンピュータ端末(122)としてもよい。他のコンポーネントには、イベントを生成したコンポーネント、エラー・レポーティング用のコンポーネント、自動エラー回復用のコンポーネント、またはそのほか当業者が想到するであろう任意のコンポーネントが含まれ得る。
【0016】
図1のイベントおよびアラート分析モジュール(124)は、任意の時点で、受信されるイベントおよび生成されるアラートなど、発生するインシデントの数を、分散処理システムにおける問題または事象を特定しようと試みるシステム管理者(128)にとって、より扱いやすいものにすることを可能にする。本発明の実施形態による、イベントおよびアラート分析、ならびにイベントおよびアラート抑制を用いる適切なアラートの配信のためのインシデント・プールの管理は、分散処理システムに関連する機能およびエラーの管理方法を判断する際にユーザにとってより意味のあるアラートを提供する。
【0017】
図1に表されている例示の分散処理システムを構成するノード、ネットワーク、およびI/Oデバイスの構成は、説明のみのためのものであり、本発明を制限するものではない。本発明の実施形態によるイベントおよびアラート分析、ならびに適切なアラートの配信のためにインシデント・プールを管理できる分散データ処理システムは、当業者が想到するであろうように、図1に示されていないさらなるノード、ネットワーク、デバイス、およびアーキテクチャを含んでもよい。図1の例の並列コンピュータ・ネットワーク(100)は、16の計算ノード(102)を含む。本発明の実施形態による適切なアラートの配信を行うことができる並列コンピュータは、何千もの計算ノードを含むこともある。上記のデータ処理システムにおけるネットワークは、イーサネットおよびJTAGに加えて、例えばTCP(Transmission Control Protocol:伝送制御プロトコル)、IP(Internet Protocol:インターネット・プロトコル)、および当業者が想到するであろう他のものを含む、多数のデータ通信プロトコルをサポートし得る。本発明の様々な実施形態は、図1に表されているものに加えて、様々なハードウェア・プラットフォーム上に実装され得る。
【0018】
本発明による、イベントおよびアラート分析、ならびにイベントおよびアラート抑制を用いる適切なアラートの配信のためのインシデント・プールの管理は、概して、コンピュータ、すなわち自動計算機を用いて実装される。例えば、図1のシステムでは、並列コンピュータのすべてのサービス・ノード、I/Oノード、計算ノードが、少なくともある程度、コンピュータとして実装される。したがって、さらなる説明のために、図2は、本発明の実施形態による適切なアラートの配信で有用な例示のコンピュータ(152)を含む自動計算機のブロック図を示す。図2のコンピュータ(152)は、少なくとも1つのプロセッサ(156)、すなわち「CPU」、ならびにランダム・アクセス・メモリ(168)(「RAM:random access memory」)を含み、RAM(168)は、高速メモリ・バス(166)およびバス・アダプタ(158)を介して、プロセッサ(156)と、コンピュータ(152)の他のコンポーネントとに接続され、さらに、分散処理システム(101)の他のコンポーネントとの通信用のアダプタに、拡張バスを介して接続されている。
【0019】
RAM(168)には、本発明の実施形態による適切なアラートの配信のための自動計算機のモジュールである、イベントおよびアラート分析モジュール(124)が記憶されている。イベントおよびアラート分析モジュール(124)は、本発明の実施形態による2つのインシデント・アナライザを含む。インシデント・アナライザは、イベント・アナライザ(208)およびアラート・アナライザ(218)を含む。イベント・アナライザ(208)およびアラート・アナライザは、それぞれ、本発明の実施形態による分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理することができる。本発明の実施形態によれば、イベント・アナライザは、分散処理システムの1つ以上のコンポーネントからの複数のイベントを、イベント・アナライザによってイベント・キューから受信すること、イベントのプールであって、所定の初期期間を有するプールを、イベント・アナライザによって作成すること、受信されたイベントそれぞれを、イベント・アナライザによってプールに割り当てること、イベント・アナライザによって、各イベントに、プールに含められるべき所定の最短時間を割り当てること、イベント・アナライザによって、イベントの1つ以上に関して、そのイベントに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかをイベント・アナライザによって判断すること、プールをクローズする条件が満たされた場合、プール内の各イベントに関して、そのイベントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、イベントが、その所定の最短時間プールに入っていた場合、クローズされたプールにイベントを含めること、ならびにイベントが、その所定の最短時間プールに入っていない場合、クローズされたプールからイベントを取り出し、イベントを次のプールに含めることによって、イベントのプールの管理を行う。
【0020】
本発明の実施形態によれば、アラート・アナライザは、分散処理システムの1つ以上のコンポーネントからの複数のアラートを、アラート・アナライザによってアラート・キューから受信すること、アラートのプールであって、所定の初期期間を有するプールを、アラート・アナライザによって作成すること、受信されたアラートそれぞれを、アラート・アナライザによってプールに割り当てること、アラート・アナライザによって、各アラートに、プールに含められるべき所定の最短時間を割り当てること、アラート・アナライザによって、アラートの1つ以上に関して、そのアラートに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかをアラート・アナライザによって判断すること、プールをクローズする条件が満たされた場合、プール内の各アラートに関して、そのアラートが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、アラートが、その所定の最短時間プールに入っていた場合、クローズされたプールにアラートを含めること、ならびにアラートが、その所定の最短時間プールに入っていない場合、クローズされたプールからアラートを取り出し、アラートを次のプールに含めることによって、アラートのプールの管理を行う。
【0021】
図2のイベント・アナライザは、受信されたイベントに基づきアラートを特定できる、自動計算機のモジュールである。すなわち、イベント・アナライザは、主として、イベントを受信し、アラートを生成する。多くの実施形態において、複数のイベント・アナライザが並行して実装される。上記のイベント・アナライザは、イベントの特定のプールに割り当てられることが多く、特定のコンポーネントからのイベントまたは特定の事象に起因するイベントに集中して、より簡潔なアラートのセットを生成してもよい。
【0022】
図2のアラート・アナライザは、送るべきアラートをイベントおよび他のアラートから特定すること、送るべき追加のアラートを特定すること、およびイベント・アナライザによって特定された、不要な、または不適切な、またはその他の理由で望ましくないアラートを抑制することができる、自動計算機のモジュールである。すなわち、アラート・アナライザは、主として、アラートおよびイベントを受信し、そのアラートおよびイベントに基づきアラートを生成または転送する。多くの実施形態において、複数のアラート・アナライザが並行して実装される。上記のアラート・アナライザは、アラートの特定のプールに割り当てられることが多く、特定の属性を持つアラートに集中して、より簡潔なアラートのセットを生成してもよい。
【0023】
図2のイベントおよびアラート分析モジュール(124)は、分散処理システム(101)の1つ以上のコンポーネント(例えば100、182、181、180および170)からの複数のイベントを、イベント・キューにおいて受信すること、受信されたイベントそれぞれをイベント・アナライザ(208)によってイベント・プールに割り当てること、イベント到着ルールと、イベント・プールに割り当てられているイベントとに基づき、イベント・アナライザ(208)によって1つ以上のアラートを特定すること、イベント・アナライザ(208)によって、イベント・プール動作ルールに基づき、イベント・プールをクローズすること、クローズされたイベント・プール内の1つ以上のイベントを抑制するかどうかを、イベント・アナライザ(208)によってイベント抑制ルールに基づき判断すること、イベント・アナライザ(208)によって、イベント・プール・クローズ・ルールと、イベント・プールに割り当てられている任意の抑制されないイベントとに基づき、1つ以上の追加のアラートを特定すること、イベント・アナライザによって特定されたすべてのアラートを、イベント・アナライザ(208)によってアラート・アナライザ(218)に送信すること、特定されたアラートを、アラート・アナライザ(218)によってアラート・プールに割り当てること、任意のアラートを抑制するかどうかを、アラート・アナライザ(218)によって、アラート分析ルールと、アラート・プール内のアラートとに基づき判断すること、ならびに、抑制されないアラートを、分散処理システムの1つ以上のコンポーネントに送ること(428)のコンピュータ・プログラム命令を含む。
【0024】
RAM(168)には、オペレーティング・システム(154)も記憶されている。本発明の実施形態による適切なアラートの配信に有用なオペレーティング・システムには、UNIX(TM)、Linux(TM)、Microsoft XP(TM)、AIX(IBM社の登録商標)、IBMのi5/OS(IBM社の登録商標)、および当業者が想到するであろう他のものが含まれる。図2の例のオペレーティング・システム(154)、イベントおよびアラート分析モジュール(124)、イベント・アナライザ(208)、アラート・アナライザ(218)は、RAM(168)内に示されているが、そのようなソフトウェアの多くのコンポーネントは、典型的には、例えばディスク・ドライブ(170)などの不揮発性メモリにも記憶される。
【0025】
図2のコンピュータ(152)は、拡張バス(160)およびバス・アダプタ(158)を介して、プロセッサ(156)と、コンピュータ(152)のその他のコンポーネントとに結合された、ディスク・ドライブ・アダプタ(172)を含む。ディスク・ドライブ・アダプタ(172)は、不揮発性データ記憶装置を、ディスク・ドライブ(170)の形態でコンピュータ(152)に接続する。本発明の実施形態による適切なアラートの配信のためのコンピュータで有用なディスク・ドライブ・アダプタには、統合ドライブ・エレクトロニクス(「IDE:Integrated Drive Electronics」)アダプタ、小型コンピュータ・システム・インターフェース(「SCSI:Small Computer System Interface」)アダプタ、および当業者が想到するであろう他のものが含まれる。さらに、不揮発性コンピュータ・メモリは、当業者が想到するであろうように、光ディスク・ドライブ、電気的消去可能プログラム可能読み取り専用メモリ(いわゆる「EEPROM:electrically erasable programmable read−only memory」または「フラッシュ」メモリ)、RAMドライブなどとして実装されてもよい。
【0026】
図2のコンピュータ(152)の例は、1つ以上の入出力(「I/O」)アダプタ(178)を含む。I/Oアダプタは、例えば、コンピュータ・ディスプレイ画面などのディスプレイ・デバイスへの出力、ならびにキーボードおよびマウスなどのユーザ入力デバイス(181)からのユーザ入力を制御するソフトウェア・ドライバおよびコンピュータ・ハードウェアを介して、ユーザ指向の入出力を実装する。図2のコンピュータ(152)の例は、ビデオ・アダプタ(209)を含み、これは、ディスプレイ画面またはコンピュータ・モニタなどのディスプレイ・デバイス(180)へのグラフィック出力用に特別に設計されたI/Oアダプタの例である。ビデオ・アダプタ(209)は、高速ビデオ・バス(164)、バス・アダプタ(158)、および、同じく高速バスであるフロント・サイド・バス(162)を介してプロセッサ(156)に接続されている。
【0027】
図2の例示のコンピュータ(152)は、その他のコンピュータ(182)とのデータ通信および並列コンピュータ・ネットワーク(100)とのデータ通信用の通信アダプタ(167)を含む。上記のデータ通信は、RS−232接続を介してシリアル方式で、ユニバーサル・シリアル・バス(「USB:Universal Serial Bus」)などの外部バスを介して、IPデータ通信ネットワークなどのデータ通信ネットワークを介して、および当業者が想到するであろう他の方法で実行され得る。通信アダプタは、ハードウェア・レベルのデータ通信を実装し、それを介して1つのコンピュータが別のコンピュータへ直接またはデータ通信ネットワークを介してデータ通信を送信する。本発明の実施形態による適切なアラートの配信に有用な通信アダプタの例には、有線ダイヤルアップ通信用のモデム、有線データ通信ネットワーク通信用のイーサネット(IEEE 802.3)アダプタ、および無線データ通信ネットワーク通信用の802.11アダプタが含まれる。
【0028】
さらなる説明のために、図3は、本発明の実施形態による、分散処理システム(101)におけるイベントおよびアラート分析ならびに適切なアラートの配信のために、インシデント・プールを管理する例示のシステムのブロック図を示す。図3の方法は、イベント・キュー(206)において、分散処理システム(101)の1つ以上のコンポーネントからの複数のイベント(202)を受信することを含む。本発明の実施形態による分散処理システムのコンポーネントは、分散処理システムのデバイス、または分散処理システムのデバイス上で実行されているプロセスであってもよい。上記のコンポーネントは、多くの場合はエラーまたはステータス・レポーティングのために、何らかの形態のイベント送信ができることが多い。
【0029】
本発明の実施形態によるイベントは、分散処理システムのコンポーネント内またはコンポーネント上での特定の事象の通知である。本発明によれば、そのようなイベントは、事象が発生したコンポーネントまたは別のレポーティング・コンポーネントから、イベントおよびアラート分析モジュールに送信される。イベントは、データ処理システムのコンポーネントにおいて発生するエラーの通知であることが多い。イベントは、データ通信ネットワークまたは共有メモリのいずれかを介して送信されるメッセージとして実装されることが多い。本発明の実施形態によるイベントおよびアラート分析に関する典型的なイベントは、発生時間、記録時間、イベント・タイプ、イベントID、レポーティング・コンポーネント、およびソース・コンポーネント、ならびにその他の属性を含む。発生時間は、コンポーネント上でイベントが発生した時間である。記録時間は、イベント・キュー(206)にイベントが含められた時間であり、典型的には、図3の例にあるモニタ(204)によってイベントに挿入される。イベント・タイプは、当業者が想到するであろうように、例えば電源エラー、リンク障害エラー、メッセージの未受信またはパケット損失に関するエラーなどの一般的なイベントのタイプである。イベントIDは、イベントの固有の識別情報である。レポーティング・コンポーネントは、イベントをレポートしたコンポーネントの識別情報である。ソース・コンポーネントは、イベントが発生したコンポーネントの識別情報である。すべてではないが、多くの場合、レポーティング・コンポーネントと、ソース・コンポーネントとは、分散処理システムの同一コンポーネントである。
【0030】
図3の例では、イベントおよびアラート分析モジュール(124)は、分散処理システムのコンポーネントからイベントを受信し、受信されたイベント(202)をイベント・キュー(206)に入れるモニタ(204)を含む。図3のモニタ(204)は、分散処理システムのコンポーネントから、その合図に応じてイベントを受信してもよく、分散処理システムのコンポーネントの1つ以上に定期的にポーリングを行ってもよく、または当業者が想到するであろうその他の方法でコンポーネントからイベントを受信してもよい。
【0031】
図3のシステムは、イベント・アナライザ(208)を含む。図3のイベント・アナライザ(208)は、受信されたイベントに基づきアラートを特定できる、自動計算機のモジュールである。すなわち、イベント・アナライザは、主として、イベントを受信し、アラートを生成する。多くの実施形態において、複数のイベント・アナライザが並行して実装される。イベント・アナライザは、イベントの特定のプールに割り当てられることが多く、特定のコンポーネントからのイベントまたは特定の事象に起因するイベントに集中して、より簡潔なアラートのセットを生成してもよい。
【0032】
図3のイベント・アナライザ(208)は、受信されたイベント(202)それぞれをイベント・プール(212)に割り当てる。イベント・プール(212)は、イベントの発生時間、イベント・キューへの記録時間、イベント・プールに含められた時間、または当業者が想到するであろうその他の時間に基づいて整理されたイベントの集合である。すなわち、イベント・プールは、時間に基づいて整理されたイベントの集合である。上記のイベント・プールは、多くの場合、時間に関係するイベントのグループを分析し、それに基づきアラートを特定する能力を提供する。上記のイベント・プールは、関係する複数のイベントに基づき、より少数で、より適切なアラートを特定するのに有用であることが多い。
【0033】
本発明の実施形態によれば、イベント・プール(212)は、イベント・アナライザ(208)によって管理される。本発明の実施形態によれば、イベント・アナライザは、分散処理システムの1つ以上のコンポーネントからの複数のイベントを、イベント・アナライザによってイベント・キューから受信すること、イベントのプールであって、所定の初期期間を有するプールを、イベント・アナライザによって作成すること、受信されたイベントそれぞれを、イベント・アナライザによってプールに割り当てること、イベント・アナライザによって、各イベントに、プールに含められるべき所定の最短時間を割り当てること、イベント・アナライザによって、イベントの1つ以上に関して、そのイベントに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかをイベント・アナライザによって判断すること、プールをクローズする条件が満たされた場合、プール内の各イベントに関して、そのイベントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、イベントが、その所定の最短時間プールに入っていた場合、クローズされたプールにイベントを含めること、イベントが、その所定の最短時間プールに入っていない場合、クローズされたプールからイベントを取り出し、イベントを次のプールに含めることによって、イベントのプールの管理を行う。
【0034】
前述のように、図3の方法によるイベント・プールは、所定の初期期間を有する。図3の例では、受信されたイベントそれぞれをイベント・アナライザによってイベント・プールに割り当てることは、イベント・プールに割り当てられる各イベントごとに、そのイベントに割り当てられている特定の期間、所定の初期期間を延長することを含む。このように、アラートを特定するために有益に使用され得るイベントの集合がイベント・プールに割り当てられるまで、受信される各イベントごとにプールが延長される。
【0035】
上記のように、本発明の一部の実施形態では、2つ以上のイベント・アナライザが並行して動作してもよい。よって、各イベント・アナライザが、本発明の実施形態による適切なアラートの配信のために、1つ以上のイベント・プールを保持してもよい。したがって、イベント・アナライザによってイベントをイベント・プールに割り当てることは、1つ以上の特定のコンポーネントからのイベントのみを選択することを含んでもよい。そのような実施形態では、特定のイベント・プールに対して、特定のコンポーネントが選択されて、1つ以上のコンポーネントの特定のセットからの、特定の期間に関連するイベントが提供されてもよい。
【0036】
さらに、イベント・アナライザによる、イベントのイベント・プールへの割り当ては、特定のイベント・タイプのイベントのみを選択することによって実行されてもよい。そのような実施形態では、特定のイベント・プールに対して、特定のイベントが選択されて、イベント・タイプの特定のセットからの、特定の期間に関連するイベントが提供されてもよい。
【0037】
図3の例にあるイベント・アナライザ(208)は、イベント分析ルール(210)と、イベント・プールに割り当てられているイベントとに基づき、1つ以上のアラート(214)を特定する。イベント分析ルール(210)は、受信されたイベントを意味があるように構文解析し、イベントに基づき適切なアラートを特定するための、所定のルールの集合である。
【0038】
図3のイベント分析ルール(210)は、イベント到着ルール(230)、イベント・プール動作ルール(232)、イベント抑制ルール(234)、およびイベント・プール・クローズ・ルール(236)を含む。イベント到着ルール(230)は、イベントがイベント・プールに割り当てられるときに、それらのイベントに基づき、リアル・タイムでアラートを特定するための、設定可能な所定のルールである。すなわち、イベント到着ルール(230)は、イベント・プールをクローズする前に、イベントに基づきアラートを特定する。上記のルールは、主として、当該イベントの属性に基づき特定のアラートを特定するよう、あらかじめ定められる。イベント到着ルールは、例えば、イベントの特定のイベント・タイプもしくはコンポーネント・タイプ、またはそのイベントの他の属性に基づき、システム管理者に送る所定の特定のアラートを特定することを指示してもよい。上記のルールには柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0039】
本発明の実施形態によるアラートは、2つ以上のイベントに基づく、エラーなどの事象の純化された識別情報であり、したがって、分散処理システムにおける事象の影響との関連で、事象の識別情報を提供する。多くの場合、アラートは、データ処理システムの1つ以上のコンポーネントから受信された複数のイベントに基づき特定される、特定のエラー・タイプの事象、例えば単一のリンク障害に基づいて多数のイベントをそれぞれ生成する複数のデバイスの間のリンク障害、または多数のイベントを引き起こす電源障害などの通知であり得る。
【0040】
アラートは、データ通信ネットワークまたは共有メモリを介して送信されるメッセージとして実装されることが多い。本発明の実施形態による典型的なアラートは、アラートが特定されるもととなった受信イベントの属性に基づいて付加された属性を有する。
【0041】
イベント・プール動作ルール(232)は、イベント・プールの動作を制御するための、設定可能な所定のルールである。上記のルールは、各イベント・プールの所定の初期期間を特定するルール、新たなイベントそれぞれがプールに割り当てられるとプールが延長される時間の長さを指示するルール、プールがクローズされるときにイベントの集合にイベントが含められるために、それまでにそのイベントがプールに入っていなければならない最短時間を指示するルール、イベント・プールのクローズを制御するルール、および当業者が想到するであろう他のものを含む。上記のルールには柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0042】
イベント抑制ルール(234)は、アラートの特定に使用されるクローズされたイベントのプール内の1つ以上のイベントを抑制するための、設定可能な所定のルールである。すなわち、多くの場合、クローズされたイベント・プール内のイベントは、重複したイベントであること、冗長なイベントであること、もしくはその他の理由でアラートの特定に不要である、または役に立たないイベントであることがある。上記の抑制ルールは、主として、抑制される当該イベントを、削除、廃棄、またはその他の形で無視するようあらかじめ定められる。イベント抑制ルールは、例えば、特定のイベント・タイプまたはコンポーネント・タイプの、閾値数を超えるイベントが抑制されるよう指示してもよい。上記のルールにも柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0043】
イベント・プール・クローズ・ルール(236)は、クローズされたイベント・プール内の抑制されないイベントと、イベント到着ルールによって特定されたアラートとに基づきアラートを特定するための、設定可能な所定のルールである。すなわち、イベント・プール・クローズ・ルールは、クローズされたイベント・プール内の、1つ以上の抑制されないイベントに基づき、または抑制されないイベントすべてにさえも基づき、新たなアラートを特定する。さらに、イベント・プール・クローズ・ルールは、イベント到着ルール(230)によって特定されたアラートに基づき、またはイベント到着ルール(230)によって特定されたアラートと、クローズされたイベント・プール内の抑制されないイベントのうちの1つ以上との組み合わせに基づき、アラートを特定する。
【0044】
図3の例にあるイベント・アナライザ(208)は、イベント・アナライザ(208)によって特定されたすべてのアラート(214)をアラート・アナライザ(218)に送信する。図3のアラート・アナライザは、送るべきアラートをイベントおよび他のアラートから特定すること、送るべき追加のアラートを特定すること、およびイベント・アナライザによって特定された、不要な、または不適切な、またはその他の理由で望ましくない、もしくは役に立たないアラートを抑制することができる、自動計算機のモジュールである。すなわち、アラート・アナライザは、主として、アラートおよびイベントを受信し、そのアラートおよびイベントに基づきアラートを生成または転送する。多くの実施形態において、複数のアラート・アナライザが並行して実装される。図3の例にあるアラート(214)は、イベント・アナライザ(208)から、アラート・アナライザ(218)にアラート・キュー(216)を介して送信される。
【0045】
図3のアラート・アナライザ(218)は、特定されたアラート(214)それぞれをアラート・プール(224)に割り当てる。アラート・プール(224)は、アラートの特定をもたらす1つ以上のイベントの時間、アラートの特定時間、または当業者が想到するであろう他の時間に基づいて整理されたアラートの集合である。すなわち、アラート・プールは、時間に基づいて整理されたアラートの集合である。上記のアラート・プールは、多くの場合、特定されて何らかの時間に従いアラート・プールに含められた、アラートのグループを分析する能力を提供する。上記のアラート・プールは、関係する複数のイベントおよび関係する複数のアラートに基づき、より少数で、より適切なアラートを特定するのに有用であることが多い。
【0046】
本発明の実施形態によれば、アラート・アナライザは、分散処理システムの1つ以上のコンポーネントからの複数のアラートを、アラート・アナライザによってアラート・キューから受信すること、アラートのプールであって、所定の初期期間を有するプールを、アラート・アナライザによって作成すること、受信されたアラートそれぞれを、アラート・アナライザによってプールに割り当てること、アラート・アナライザによって、各アラートに、プールに含められるべき所定の最短時間を割り当てること、アラート・アナライザによって、アラートの1つ以上に関して、そのアラートに割り当てられている特定の期間、プールの所定の初期期間を延長すること、プールをクローズする条件が満たされたかどうかをアラート・アナライザによって判断すること、プールをクローズする条件が満たされた場合、プール内の各アラートに関して、そのアラートが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること、アラートが、その所定の最短時間プールに入っていた場合、クローズされたプールにアラートを含めること、アラートが、その所定の最短時間プールに入っていない場合、クローズされたプールからアラートを取り出し、アラートを次のプールに含めることによって、アラートのプールの管理を行う。
【0047】
アラート・アナライザは、特定されたアラートを、アラートの属性または当該のアラートが特定されるもととなったイベントの属性に基づき、アラート・プール(224)に割り当ててもよい。例えば、図3のアラート・アナライザは、当業者が想到するであろうように、1つ以上の特定のコンポーネントからのイベントから生じたアラート、特定のアラート・タイプに関連するアラートを選択することなどによって、アラートをアラート・プール(224)に割り当ててもよい。
【0048】
図3のアラート・アナライザ(218)は、任意のアラートを抑制するかどうかを、アラート分析ルール(222)と、アラート・プール内のアラートとに基づき判断する。アラートの抑制は、典型的には、アラートを廃棄すること、アラートを削除すること、または別の形で、無視すること、または抑制されるアラートを分散処理システムのコンポーネントに送らないことによって実行される。
【0049】
アラート分析ルール(222)は、例えばシステム管理者に表示するためなどに分散処理システムのコンポーネントに送られるより適切なアラートのセットを提供し、分散処理システムの1つ以上のコンポーネントに送られる追加のアラートを特定するために、1つ以上のアラートを抑制するルールの集合である。例えば、アラート分析ルールは、当業者が想到するであろうように、重複したアラートが抑制されること、特定のコンポーネントに送られる特定のタイプのアラートが抑制されることなどを指示してもよい。上記のアラートは、自動エラー回復用の分散処理システムのコンポーネントにとって、またはシステム管理者にとって、より意味があるものであってもよい。システム管理者は、他の場合であれば、いくつかの分析されていない生のアラートによって、より少ない情報しか与えられないと考えられる。
【0050】
さらに、図3のアラート・アナライザ(218)は、イベント・キュー(206)にアクセスできる。一部の実施形態では、図3のアラート・アナライザ(218)は、アラート分析ルールに基づき、イベント・キューからイベントを選択し、任意のアラートを抑制するかどうかを、選択されたイベントに基づき判断してもよい。すなわち、アラート分析ルールは、アラートの抑制、および1つ以上のコンポーネントに送る追加のアラートの特定に関して、イベントおよびその属性も考慮に入れてもよい。上記のイベントは、アラート・プール内のアラートに関係してもよく、またはそうしたアラートからは独立していてもよい。
【0051】
図3のアラート・アナライザ(218)は、抑制されないアラートを、分散処理システムの1つ以上のコンポーネントに送る。アラート・アナライザは、アラートをメッセージとして、データ通信ネットワークを通して、または共有メモリを介して、または当業者が想到するであろうその他の方法で送信することによって、抑制されないアラートを分散処理システムの1つ以上のコンポーネントに送ってもよい。図3の例では、抑制されないアラート(220)は、システム管理者(128)に対して表示されるようコンピュータ端末(122)に送られる。
【0052】
さらに、図3のアラート・アナライザ(218)は、アラート分析ルール(222)、アラート・プール(224)内のアラート、および選択されたイベント(202)に基づき、1つ以上の追加のアラートを特定し、分散処理システムの1つ以上のコンポーネントに送ることができる。追加のアラートは、イベント・アナライザによって特定されていない1つ以上のアラートを含んでもよい。そのような追加のアラートは、システム管理者の、分散処理システムのコンポーネントに、追加情報を提供してもよい。
【0053】
上記のように、本発明による適切なアラートの配信は、イベントをイベント・プールに割り当てることを含み、そのプールは、本発明の実施形態に従って管理される。さらなる説明のために、図4は、本発明の実施形態による、イベント・プールへのイベントの割り当てを表す図を示す。イベント・プール(212)は、イベントの発生時間、イベント・キューへの記録時間、イベント・プールに含められた時間、または当業者が想到するであろうその他の時間に基づいて整理されたイベントの集合である。すなわち、イベント・プールは、時間に基づいて整理されたイベントの集合である。上記のイベント・プールは、多くの場合、時間に関係するイベントのグループを分析し、それに基づきアラートを特定する能力を提供する。上記のイベント・プールは、関係する複数のイベントに基づき、より少数で、より適切なアラートを特定するのに有用であることが多い。
【0054】
本発明の実施形態によるイベント・プールは、主として、イベント・プール動作ルールに従って動作させられ、多くの場合、このルール自体はイベント分析ルールに含まれる。上記のイベント・プール動作ルールは、イベント・プールの動作を制御するための、設定可能な所定のルールである。上記のルールは、各イベント・プールの所定の初期期間を特定するルール、新たなイベントそれぞれがプールに割り当てられるとプールが延長される時間の長さを指示するルール、プールがクローズされるときにイベントの集合にイベントが含められるために、それまでにそのイベントがプールに入っていなければならない最短時間を指示するルール、イベント・プールのクローズを制御するルール、および当業者が想到するであろう他のものを含む。上記のルールには柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0055】
多くの場合、イベントは、記録時間に従いイベント・プールに割り当てられる。すなわち、イベントは、典型的には、イベント・キューにおいて受信された順序でイベント・プールに挿入される。図4の例では、イベント・プール(212)のタイミングは、第1のイベント「イベント0」(400)が、時間tにイベント・プール(212)に割り当てられたときに開始される。図4のイベント・プールは、所定の初期期間t〜tで開始される。すなわち、第1のイベント「イベント0」(400)を受信すると、図4のイベント・プールは、tに始まりtに終わる所定の初期期間を有する。所定の初期期間は、当業者が想到するであろうように、分散処理システム内のコンポーネントの数、イベント受信の頻度、主に受信されるイベントのタイプなど、当業者が想到するであろういつくかの要因に基づき設定してもよい。
【0056】
図4の例では、所定の初期期間t〜tの間イベント・プールに割り当てられる新たなイベントごとに、そのイベントに割り当てられている特定の期間、初期期間が延長される。図4の例では、「イベント1」(402)をイベント・プール(212)に割り当てると、所定の初期期間t〜tが、時間e1を有する「延長1」(406)延長され、それによって新たな時間がもたらされ、tf+e1より前にプールに他のイベントが割り当てられなければtf+e1にイベント・プール(212)がクローズされる。同じく、図4の例では、時間e2を有する「イベント2」(404)をイベント・プールに割り当てると、そのときすでに延長されている期間t〜tf+e1が、再び延長2(408)延長され、それによって新たな時間が規定され、tf+e1+e2より前、またはイベント・プールの何らかの最長時間が終了する前にプールに他のイベントが割り当てられなければ時間tf+e1+e2にプールがクローズされる。このように、アラートを特定するために有益に使用され得るイベントの集合がイベント・プールに割り当てられるまで、受信される各イベントごとにイベント・プールが延長される。
【0057】
本発明の典型的な実施形態では、イベント・プールは、それ以上は延長できない最長持続時間を有してもよい。そのような場合には、閾値期間イベント・プールになかったイベントは、次のイベント・プールに移動される、という要求事項が存在してもよい。一部の実施形態では、次のイベント・プールに移動されるそうしたイベントの属性は、最初のイベント・プールを用いる本発明の実施形態による適切なアラートの配信に使用され、他の実施形態では、そうしたイベントの属性は、そのイベントの移動先である次のイベント・プールを用いる適切なアラートの配信に使用される。
【0058】
図4の例では、プールをクローズする条件が満たされると、イベント・アナライザは、イベント・プール(212)内の各イベント(400、402、404)に関して、そのイベントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断する。イベントが、その所定の最短時間プールに入っていた場合、イベントは、本発明の実施形態による適切なアラートの配信のためのイベント分析のために、クローズされたプールに含められる。イベントが、その所定の最短時間プールに入っていない場合、イベントは、クローズされたプールから取り出され、本発明の実施形態による適切なアラートの配信のためのイベント分析のために、次のプールに含められる。
【0059】
多くの実施形態では、複数のイベント・プールが並行して使用されてもよく、そのようなイベント・プールの1つ以上が、特定のイベント・アナライザに割り当てられる。そのような実施形態では、イベント・アナライザは、特定の属性を有するイベント・プール内のイベントを対象としてもよい。
【0060】
上記のように、本発明による適切なアラートの配信は、さらに、アラート・プールにアラートを割り当てることを含む。さらなる説明のために、図5は、本発明の実施形態による、アラート・プールへのアラートの割り当てを表す図を示す。図5のアラート・プール(224)は、図4のイベント・プールと似た形で動作する。すなわち、図5の例によるアラート・プールは、アラートを含み、アラート・プールのタイミングは、第1のアラート「アラート0」(500)により時間tに始まり、所定の初期期間t〜tを有するよう設定されている。図5の例では、所定の初期期間t〜tにアラート・プールに割り当てられる新たなアラートごとに、そのアラートに割り当てられている特定の期間、初期期間が延長される。図5の例では、「アラート1」(502)をアラート・プール(224)に割り当てると、所定の初期期間t〜tが、時間e1を有する「延長1」(506)延長され、それによって新たな時間がもたらされ、tf+e1より前にプールに他のアラートが割り当てられなければtf+e1にアラート・プール(224)がクローズされる。同じく、図5の例では、時間e2を有する「アラート2」(504)をアラート・プールに割り当てると、そのときすでに延長されている期間t〜tf+e1が、再び「延長2」(508)延長され、それによって新たな時間が規定され、tf+e1+e2より前、またはアラート・プールの何らかの最長時間が終了する前にプールに他のアラートが割り当てられなければ時間tf+e1+e2にプールがクローズされる。
【0061】
本発明の典型的な実施形態では、アラート・プールは、それ以上は延長できない最長持続時間を有してもよい。そのような場合には、閾値期間アラート・プールになかったアラートは、次のアラート・プールに移動される、という要求事項が存在してもよい。一部の実施形態では、次のアラート・プールに移動されるそうしたアラートの属性は、最初のアラート・プールを用いる本発明の実施形態による適切なアラートの配信に使用され、他の実施形態では、そうしたアラートの属性は、そのアラートの移動先である次のアラート・プールを用いる適切なアラートの配信に使用される。
【0062】
図5の例では、プールをクローズする条件が満たされると、アラート・アナライザは、アラート・プール(224)内の各アラート(500、502、504)に関して、そのアラートが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断する。アラートが、その所定の最短時間プールに入っていた場合、アラートは、本発明の実施形態による適切なアラートの配信のためのアラート分析のために、クローズされたプールに含められる。アラートが、その所定の最短時間プールに入っていない場合、アラートは、クローズされたプールから取り出され、本発明の実施形態による適切なアラートの配信のためのアラート分析のために、次のプールに含められる。
【0063】
多くの実施形態では、複数のアラート・プールが並行して使用されてもよく、そのようなアラート・プールの1つ以上が、特定のアラート・アナライザに割り当てられる。そのような実施形態では、アラート・アナライザは、特定の属性を有するアラート・プール内のアラートを対象としてもよい。
【0064】
さらなる説明のために、図6は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート抑制を用いた適切なアラートの配信方法の例を表すフローチャートを示す。図6の方法は、分散処理システムの1つ以上のコンポーネントからの複数のイベント(202)を、イベント・キューにおいて受信すること(402)を含む。本発明の実施形態による、イベントおよびアラート抑制を用いる適切なアラートの配信において有用なイベントは、発生時間、記録時間、イベント・タイプ、イベントID、レポーティング・コンポーネント、およびソース・コンポーネントを含み得る。
【0065】
分散処理システムの1つ以上のコンポーネントからの複数のイベント(202)を、イベント・キューにおいて受信すること(402)は、データ処理システムの1つ以上のコンポーネントによって開始されたイベントを受信して、イベントが発生した時間に従って、またはイベントが受信された時間に従って、イベントをイベント・キューに記憶することによって実行されてもよい。さらに、分散処理システムの1つ以上のコンポーネントからの複数のイベント(202)を、イベント・キューにおいて受信すること(402)は、ステータスに関してコンポーネントにポーリングを行ってそれに応答してイベントを受信し、イベントが発生した時間に従って、またはイベントが受信された時間に従って、イベントをイベント・キューに記憶することによって実行されてもよい。
【0066】
さらに、図6の方法は、受信されたイベントそれぞれを、イベント・アナライザによってイベント・プール(212)に割り当てること(404)を含む。本発明の一部の実施形態では、受信されたイベント(202)それぞれを、イベント・アナライザによってイベント・プール(212)に割り当てること(404)は、イベントを、記録時間に従ってイベント・プールに割り当てることによって実行されてもよい。さらに、受信されたイベント(202)それぞれを、イベント・アナライザによってイベント・プール(212)に割り当てること(404)は、イベントの属性に基づき実行されてもよい。上記の属性は、当業者が想到するであろうように、イベントを作成する事象が発生したコンポーネントの識別情報またはタイプ、イベントのレポーティング・コンポーネント、イベントID、イベント・タイプなどを含んでもよい。
【0067】
図6の方法によるイベント・プールは、所定の初期期間の間に発生するイベントを含み、図6の例では、受信されたイベントそれぞれをイベント・アナライザによってイベント・プールに割り当てること(404)は、イベント・プールに割り当てられる各イベントごとに、そのイベントに割り当てられている特定の期間、所定の初期期間を延長すること(432)を含む。
【0068】
イベント・アナライザは、イベント到着ルール、イベント・プール動作ルール、イベント抑制ルール、およびイベント・プール・クローズ・ルールを含む、イベント分析ルール(210)を含む。イベント到着ルールは、イベントがイベント・プールに割り当てられるときに、それらのイベントに基づき、リアル・タイムでアラートを特定するための、設定可能な所定のルールである。すなわち、イベント到着ルールは、イベント・プールをクローズする前に、イベントに基づきアラートを特定する。上記のルールには柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0069】
本発明の実施形態によるアラートは、2つ以上のイベントに基づく、エラーなどの事象の純化された識別情報であり、したがって、分散処理システムにおける事象の影響との関連で、事象の識別情報を提供する。多くの場合、アラートは、データ処理システムの1つ以上のコンポーネントから受信された複数のイベントに基づき特定される、特定のエラー・タイプの事象、例えば単一のリンク障害に基づいて多数のイベントをそれぞれ生成する複数のデバイスの間のリンク障害、または多数のイベントを引き起こす電源障害などの通知であり得る。
【0070】
アラートは、データ通信ネットワークまたは共有メモリを介して送信されるメッセージとして実装されることが多い。本発明の実施形態による典型的なアラートは、アラートが特定されるもととなった受信イベントの属性に基づいて付加された属性を有する。
【0071】
イベント・プール動作ルールは、イベント・プールの動作を制御するための、設定可能な所定のルールである。上記のルールは、各イベント・プールの所定の初期期間を特定するルール、新たなイベントそれぞれがプールに割り当てられるとプールが延長される時間の長さを指示するルール、プールがクローズされるときにイベントの集合にイベントが含められるために、それまでにそのイベントがプールに入っていなければならない最短時間を指示するルール、イベント・プールのクローズを制御するルール、および当業者が想到するであろう他のものを含む。上記のルールには柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0072】
イベント抑制ルールは、アラートの特定に使用されるクローズされたイベントのプール内の1つ以上のイベントを抑制するための、設定可能な所定のルールである。すなわち、多くの場合、クローズされたイベント・プール内のイベントは、重複したイベントであること、冗長なイベントであること、もしくはその他の理由でアラートの特定に不要である、または役に立たないイベントであることがある。上記の抑制ルールは、主として、抑制される当該イベントを、削除、廃棄、またはその他の形で無視するようあらかじめ定められる。イベント抑制ルールは、例えば、特定のイベント・タイプまたはコンポーネント・タイプの、閾値数を超えるイベントが抑制されるよう指示してもよい。上記のルールにも柔軟性があり、特定の分散計算システムおよびその機能に合わせられてもよい。
【0073】
イベント・プール・クローズ・ルールは、クローズされたイベント・プール内の抑制されないイベントと、イベント到着ルールによって特定されたアラートとに基づきアラートを特定するための、設定可能な所定のルールである。すなわち、イベント・プール・クローズ・ルールは、クローズされたイベント・プール内の、1つ以上の抑制されないイベントに基づき、または抑制されないイベントすべてにさえも基づき、新たなアラートを特定する。さらに、イベント・プール・クローズ・ルールは、イベント到着ルールによって特定されたアラートに基づき、またはイベント到着ルールによって特定されたアラートと、クローズされたイベント・プール内の抑制されないイベントのうちの1つ以上との組み合わせに基づき、アラートを特定する。
【0074】
さらに、図6の例の方法は、イベント到着ルールと、イベント・プールに割り当てられているイベントとに基づき、イベント・アナライザによって1つ以上のアラート(214)を特定すること(410)を含む。イベント到着ルールと、イベント・プールに割り当てられているイベントとに基づき、イベント・アナライザによって1つ以上のアラート(214)を特定すること(410)は、イベントがイベント・プールに割り当てられるときに、そのイベントの1つ以上の属性に基づきアラートを特定することによって実行されてもよい。イベント到着ルールと、イベント・プールに割り当てられているイベントとに基づき、イベント・アナライザによって1つ以上のアラート(214)を特定すること(410)は、イベントの属性と、イベント到着ルールとを比較して、比較の結果として1つ以上のアラートを特定することによって実行されてもよい。上記の属性には、イベントが受信されたもとのコンポーネントのタイプ、イベントを作成するコンポーネントのタイプ、イベントを作成するコンポーネントの識別情報、イベントが作成または受信された時間、イベント内でレポートされているエラー、および当業者が想到するであろう多数の他のものが含まれ得る。
【0075】
さらに、図6の方法は、イベント・アナライザによって、イベント・プール動作ルールに基づき、イベント・プール(212)をクローズすること(412)を含む。イベント・アナライザによって、イベント・プール動作ルールに基づき、イベント・プール(212)をクローズすること(412)は、イベント・プール動作ルールによって指示されている、新たなイベントのイベント・プールへの割り当てを停止する条件が満たされたと判断し、クローズされたイベントのプールに含められる特定のイベントを、そうしたイベント・プール動作ルールに基づき特定することによって実行されてもよい。
【0076】
イベント・プールをクローズすることは、イベント・プールの初期期間と、初期期間に対する延長となった、イベント・プールにおいて受信されたイベントの任意の特定の期間とが終了したと判断することによって実行されてもよい。そのような場合には、イベント・プールの初期期間と、初期期間に対する延長となった、イベント・プールにおいて受信されたイベントの任意の特定の期間とが終了する前に、新たなイベントが受信されなければ、プールはクローズされる。
【0077】
さらに、イベント・プールをクローズすることは、イベント・プールの最長持続時間が終了したと判断することによって実行されてもよい。そのような場合には、イベント・プールの最長持続時間が終了した後に受信される新たなイベントの数にかかわらず、プールはクローズされる。そのような実施形態では、イベント・プールの最長持続時間によって、本発明の実施形態による適切なアラートの配信に有用な数を超えるイベントをイベント・プールが含むことが防がれる。
【0078】
さらに、図6の方法は、イベント・アナライザによって、イベント抑制ルールに基づき、クローズされたイベント・プール(212)内の1つ以上のイベントを抑制するかどうかを判断すること(414)を含む。イベント・アナライザによって、イベント抑制ルールに基づき、クローズされたイベント・プール(212)内の1つ以上のイベントを抑制するかどうかを判断すること(414)は、クローズされたプール内の1つ以上のイベントの属性に基づき、クローズされたプール内のイベントのうちの1つ以上を、削除、廃棄、またはその他の形で無視するかどうかを判断することによって実行されてもよい。
【0079】
図6の方法は、イベント・アナライザによって、イベント・プール・クローズ・ルールと、イベント・プールに割り当てられている任意の抑制されないイベントとに基づき、1つ以上の追加のアラート(417)を特定すること(416)を含む。イベント・アナライザによって、イベント・プール・クローズ・ルールと、イベント・プールに割り当てられている任意の抑制されないイベントとに基づき、1つ以上の追加のアラート(417)を特定すること(416)は、イベントがイベント・プールに割り当てられるときに、そのイベントの1つ以上の属性に基づきアラートを特定することによって実行されてもよい。イベント・アナライザによって、イベント・プール・クローズ・ルールと、イベント・プールに割り当てられている任意の抑制されないイベントとに基づき、1つ以上の追加のアラート(417)を特定すること(416)は、イベント・プールの抑制されないイベントを選択し、イベント・プールの抑制されないイベントの属性と、プール・クローズ・ルールとを比較し、比較の結果として1つ以上の追加のアラートを特定することによって実行されてもよい。上記の属性には、抑制されないイベントの1つ以上が受信されたもとのコンポーネントのタイプ、抑制されないイベントを作成するコンポーネントのタイプ、抑制されないイベントを作成するコンポーネントの識別情報、イベントが作成または受信された時間、イベントによってレポートされている1つ以上のエラー、プール内のイベントの数、および当業者が想到するであろう多数の他のものが含まれ得る。
【0080】
図6の方法は、イベント・アナライザによって特定されたすべてのアラートを、イベント・アナライザによってアラート・アナライザに送信すること(418)を含む。イベント・アナライザによって特定されたすべてのアラート(214)を、イベント・アナライザによってアラート・アナライザに送信すること(418)は、イベント・アナライザからアラート・アナライザに、アラートを含むメッセージを送信することによって実行されてもよい。そのようなメッセージは、イベント・アナライザからアラート・アナライザに、ネットワークを通して、または共有メモリを介して、または当業者が想到するであろう他の方法で送信されてもよい。
【0081】
図6の方法は、特定されたアラートを、アラート・アナライザによってアラート・プール(224)に割り当てること(420)を含む。図6の方法によるアラート・プールは、所定の初期期間を有する。図6の例では、特定されたアラートをアラート・アナライザによってアラート・プール(224)に割り当てること(420)は、アラート・プールに割り当てられる各アラートごとに、そのアラートに割り当てられている特定の期間、所定の初期期間を延長することを含む。さらに、特定されたアラートを、アラート・アナライザによってアラート・プール(224)に割り当てること(420)は、アラートの属性に基づき実行されてもよい。そうした属性は、当業者が想到するであろうように、アラートの特定に使用されたイベントを作成する事象が発生したコンポーネントの識別情報またはタイプ、アラートID、アラート・タイプなどを含んでもよい。
【0082】
図6の方法は、任意のアラートを抑制するかどうかを、アラート・アナライザによって、アラート分析ルール(222)と、アラート・プール内のアラートとに基づき判断すること(422)を含む。任意のアラートを抑制するかどうかを、アラート・アナライザによって、アラート分析ルール(222)と、アラート・プール内のアラートとに基づき判断すること(422)は、アラートの1つ以上の属性に基づき実行されてもよい。そのような属性は、当業者が想到するであろうように、アラートの特定に使用されたイベントを作成する事象が発生したコンポーネントの識別情報またはタイプ、アラートID、アラート・タイプなどを含んでもよい。そのような実施形態では、任意のアラートを抑制するかどうかを、アラート・アナライザによって、アラート分析ルール(222)と、アラート・プール内のアラートとに基づき判断すること(422)は、アラート・プール内のアラートの属性と、アラート分析ルールとを比較して、比較の結果として、アラート分析ルールに従って、抑制される1つ以上のアラートを特定することによって実行されてもよい。
【0083】
図6の方法は、抑制されないアラートを、分散処理システムの1つ以上のコンポーネントに送ること(428)を含む。抑制されないアラートを分散処理システムの1つ以上のコンポーネントに送ること(428)は、アラートを含むメッセージを分散処理システムの1つ以上のコンポーネントに送信することによって実行されてもよい。多くの場合、アラートは、メッセージとしてシステム管理者に送信され、分散処理システム内での1つ以上の事象についてシステム管理者に報告してもよい。
【0084】
上記のように、アラート分析ルールは、イベントに基づき、追加のアラートを選択しても、またはアラートを抑制してもよい。そのような実施形態では、任意のアラートを抑制するかどうかを判断することは、イベントを選択して、その選択されたイベントに基づき、任意のアラートを抑制するかどうかを判断することを含む。したがって、図6の方法はさらに、アラート・アナライザによって、アラート分析ルール(222)、アラート・プール(224)内のアラート、および任意の選択されたイベントに基づき、1つ以上の追加のアラートを特定すること(426)を含み、図6の方法では、抑制されないアラートを送ること(428)はさらに、任意の追加のアラートを、分散処理システムの1つ以上のコンポーネントに送ること(430)を含む。
【0085】
上記のように、本発明の実施形態による適切なアラートの配信は、イベント、アラート、または当業者が想到するであろうその他のインシデントなどのインシデントの1つ以上のプールの管理を含む。さらなる説明のために、図7は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理する例示の方法を表すフローチャートを示す。図7の方法は、分散処理システムの1つ以上のコンポーネントからの複数のインシデント(704)を、インシデント・アナライザによってイベント・キューから受信すること(702)を含む。図7のインシデントは、イベントとして実装されてもよく、インシデントのプールは、イベント・プールとして実装されてもよい。さらに、図7のインシデントは、アラートとして実装されてもよく、インシデントのプールは、アラート・プールとして実装されてもよい。
【0086】
分散処理システムの1つ以上のコンポーネントからの複数のインシデント(704)を、インシデント・アナライザによってインシデント・キューから受信すること(702)は、上記で説明したように、イベント・アナライザによってイベント・キューからイベントを受信することによって実行されてもよい。上記のイベントは、分散処理システムの1つ以上のコンポーネントから送信されてもよい。さらに、分散処理システムの1つ以上のコンポーネントからの複数のインシデント(704)を、インシデント・アナライザによってインシデント・キューから受信すること(702)は、上記で説明したように、アラート・アナライザによって、アラート・キューからアラートを受信することによって実行されてもよい。上記のアラートは、上記で説明したように、イベント・アナライザによって生成されてもよい。
【0087】
図7の方法は、インシデントのプール(708)であって、所定の初期期間を有するプールを、インシデント・アナライザによって作成すること(706)を含む。図7の方法は、インシデント・アナライザによって、インシデントのプール(708)を作成すること(706)を含み、これは、イベントまたはアラートを含めるデータ構造を作成し、イベント、アラート、または当業者が想到するであろうその他のインシデントを当該データ構造内に含める初期期間を、当該データ構造に対して規定することによって実行されてもよい。
【0088】
さらに、図7の方法は、受信されたインシデントそれぞれを、インシデント・アナライザによってプールに割り当てること(710)を含む。受信されたインシデントそれぞれを、インシデント・アナライザによってプールに割り当てること(710)は、インシデントの属性に基づき実行されてもよい。受信されたインシデントそれぞれをプールに割り当てること(710)は、例えば、当業者が想到するであろうように、イベントを作成するコンポーネント、イベント・タイプ、アラート・タイプ、イベントをレポートするコンポーネント、イベントに基づきアラートが作成された該イベントをレポートまたは作成したコンポーネントなどの属性に基づき、イベント、アラート、またはその他のインシデントを選択することによって実行されてもよい。
【0089】
さらに、図7の方法は、プール(708)に含められるべき所定の最短時間(714)を、各インシデントにインシデント・アナライザによって割り当てること(712)を含む。プールに含められるべき所定の最短時間(714)は、典型的には、プールの初期期間よりも短く、その結果、最初に到着するインシデントは、インシデントのプールがクローズされるときにそのプールに含まれる。所定の最短時間は、当業者が想到するであろうように、インシデントの属性によって異なってもよい。インシデントの属性によって異なる最短時間を考慮することによって、様々な形態の分散処理システムにおける本発明の実施形態によるプールの管理における柔軟性が提供される。
【0090】
図7の方法は、インシデント・アナライザによって、インシデントの1つ以上に関して、そのインシデントに割り当てられている特定の期間、プール(708)の所定の初期期間を延長すること(716)を含む。所定の初期期間が延長される特定の期間は、インシデントのタイプ、インシデントの識別情報、インシデントが作成された、または送られたコンテキスト、および当業者が想到するであろう他のものなどのインシデントの属性によって決まってもよい。
【0091】
さらに、図7の方法は、プール(708)をクローズする条件が満たされたかどうかを、インシデント・アナライザによって判断すること(718)を含む。プール(708)をクローズする条件が満たされたかどうかを、インシデント・アナライザによって判断すること(718)は、プールの最長時間が経過したかどうかを判断することによって実行されてもよい。プールに対して規定される最長時間は、主として、分散処理システムのサイズ、分散処理システムのコンポーネント、分散処理システムの計算上の要求事項、および当業者が想到するであろう他のものなどの、分散処理システムの要素によって決まる。典型的には、最長時間は、意味のあるイベントまたはアラート分析に十分なインシデントをプールに蓄積できるよう十分に長く、ただし分析がインシデントの多さに圧倒されず、かつアラートの適時レポートが可能なよう十分に短く規定される。
【0092】
インシデント・アナライザによって、プール(708)をクローズする条件が満たされたかどうかを判断すること(718)は、別のインシデントがプールに割り当てられる前に、所定の初期期間と、プールに割り当てられた任意のインシデントに関連する任意の延長時間(extensions of time)とが経過したと判断することによって実行されてもよい。そのような実施形態では、通常、所定の初期期間およびプールに対するすべての延長時間は、プールの最長時間より前に経過しており、その結果、プールはプールの最長時間より前にクローズされる。
【0093】
さらに、図7の方法は、プールをクローズする条件が満たされると、プール内の各インシデントに関して、そのインシデントが、プール(708)に含められるべきその所定の最短時間(714)、プールに入っていたかどうかを判断すること(720)を含む。プール内の各インシデントに関して、そのインシデントが、プール(708)に含められるべきその所定の最短時間(714)、プールに入っていたかどうかを判断すること(720)は、各インシデントがプールにあった時間の長さと、プールに含められるべきその最短時間とを比較することによって実行されてもよい。
【0094】
図7の方法は、インシデントが、その所定の最短時間プールに入っていた場合、クローズされたプールにインシデントを含めること(722)を含む。クローズされたプールにインシデントを含めること(722)は、インシデントを、イベント分析、アラート分析、または当業者が想到するであろう他のインシデント分析用に、クローズされたプールに保持することによって実行される。
【0095】
図7の方法は、インシデントが、その所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めること(724)を含む。クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めること(724)は、次のプールを作成して、インシデントを次のプールへと移動させることによって実行されてもよい。次のプールを作成し、インシデントを次のプールへと移動させることは、その、次のプールに移動させられるイベントの最短時間と少なくとも同じ長さの所定の時間を、次のプールに関して規定することを含んでもよい。
【0096】
さらなる説明のために、図8は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するさらなる方法を表すフローチャートを示す。分散処理システムの1つ以上のコンポーネントからの複数のインシデント(704)を、インシデント・アナライザによってインシデント・キューから受信すること(702)、インシデントのプール(708)であって、所定の初期期間を有するプールを、インシデント・アナライザによって作成すること(706)、受信されたインシデントそれぞれを、インシデント・アナライザによってプールに割り当てること(710)、インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てること(712)、インシデント・アナライザによって、インシデントの1つ以上に関して、そのインシデントに割り当てられている特定の期間、プール(708)の所定の初期期間を延長すること(716)、プールをクローズする条件が満たされたかどうかを、インシデント・アナライザによって判断すること(718)、プールをクローズする条件が満たされた場合、プール内の各インシデントに関して、インシデントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること(720)、インシデントが、その所定の最短時間プールに入っていた場合、クローズされたプールにインシデントを含めること(722)、インシデントがその所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めること(724)を、図8の方法が含むという点で、図8の方法は図7の方法に似ている。
【0097】
図8の方法では、インシデント(704)の1つ以上がイベントであり、図8の方法がさらに、プール(708)に割り当てられている1つ以上のイベントに基づき1つ以上のアラートを特定すること(726)を含むという点で、図8の方法は、図7の方法とは異なる。プール(708)に割り当てられている1つ以上のイベントに基づき1つ以上のアラートを特定すること(726)は、上記で説明したようにイベント到着ルールに基づきアラートを特定することによって、上記で説明したようにプール・クローズ・ルールに基づき追加のアラートを特定することによって、さらに当業者が想到するであろう他の方法で、実行されてもよい。
【0098】
図8の方法では、インシデントを取り出し、インシデントを次のプールに含めること(724)はさらに、少なくとも1つのイベントを取り出し(802)、取り出されたイベントを次のプールに含め(804)、取り出されたイベントに基づき特定された任意のアラートと、クローズされたプールとを関連付けること(806)を含む。さらに、インシデントを取り出し、インシデントを次のプールに含めること(724)は、少なくとも1つのイベントを取り出すこと(802)を含み、取り出されたイベントを次のプールに含めること(804)は、次のプールを作成し、インシデントを次のプールへと移動させることによって実行されてもよい。
【0099】
取り出されたイベントに基づき特定された任意のアラートと、クローズされたプールとを関連付けること(806)は、イベント到着ルールに基づき特定された任意のアラートを、アラート・アナライザによるアラート分析のために、クローズされたプールを用いて保持することによって実行されてもよい。そのような実施形態では、イベントは取り出されて次のプールに含められるが、そのイベントに基づき特定された任意のアラートは、アラート分析のために、クローズされたプールを用いて保持される。
【0100】
さらなる説明のために、図9は、本発明の実施形態による、分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するさらなる方法を表すフローチャートを示す。分散処理システムの1つ以上のコンポーネントからの複数のインシデント(704)を、インシデント・アナライザによってインシデント・キューから受信すること(702)、インシデントのプール(708)であって、所定の初期期間を有するプールを、インシデント・アナライザによって作成すること(706)、受信されたインシデントそれぞれを、インシデント・アナライザによってプールに割り当てること(710)、インシデント・アナライザによって、各インシデントに、プールに含められるべき最短時間を割り当てること(712)、インシデント・アナライザによって、インシデントの1つ以上に関して、そのインシデントに割り当てられている特定の期間、プール(708)の所定の初期期間を延長すること(716)、プールをクローズする条件が満たされたかどうかを、インシデント・アナライザによって判断すること(718)、プールをクローズする条件が満たされた場合、プール内の各インシデントに関して、インシデントが、プールに含められるべきその所定の最短時間、プールに入っていたかどうかを判断すること(720)、インシデントが、その所定の最短時間プールに入っていた場合、クローズされたプールにインシデントを含めること(722)、インシデントがその所定の最短時間プールに入っていない場合、クローズされたプールからインシデントを取り出し、インシデントを次のプールに含めること(724)を、図9の方法が含むという点で、図9の方法は図7および8の方法に似ている。
【0101】
図9の方法では、インシデント(704)の1つ以上がイベント(202)であり、図9の方法がさらに、プール(708)に割り当てられている1つ以上のイベントに基づき1つ以上のアラートを特定すること(726)を含むという点で、図9の方法は図7の方法とは異なる。プール(708)に割り当てられている1つ以上のイベントに基づき1つ以上のアラートを特定すること(726)は、上記で説明したようにイベント到着ルールに基づきアラートを特定することによって、上記で説明したようにプール・クローズ・ルールに基づき追加のアラートを特定することによって、および当業者が想到するであろう他の方法で、実行されてもよい。
【0102】
図9の方法では、インシデントを取り出し、インシデントを次のプールに含めること(724)はさらに、少なくとも1つのイベントを取り出し(902)、取り出されたイベントを次のプールに含め(904)、取り出されたイベントに基づき特定された任意のアラートと、次のプールとを関連付けること(906)を含む。さらに、インシデントを取り出し、インシデントを次のプールに含めること(724)は、少なくとも1つのイベントを取り出すこと(902)を含み、取り出されたイベントを次のプールに含めること(904)は、次のプールを作成し、インシデントを次のプールへと移動させることによって実行されてもよい。
【0103】
取り出されたイベントに基づき特定された任意のアラートと、次のプールとを関連付けること(906)は、イベント到着ルールに基づき特定された任意のアラートと、アラート・アナライザによるアラート分析のための、クローズされたプールとの関連付けを解除し、当該のアラートと、次のプールとを関連付けることによって実行されてもよい。そのような実施形態では、イベントは取り出されて次のプールに含められ、そのイベントに基づき特定された任意のアラートも、次のプールを用いたアラート分析のために、次のプールと関連付けられる。
【0104】
一部の実施形態では、アラートは、他のアラートに基づき特定されてもよい。したがって、そのような実施形態では、図9の方法による、取り出されたイベントに基づき特定された任意のアラートと、次のプールとを関連付けることはさらに、すでに次のプールと関連付けられている特定されたアラートに依存する任意のアラートまたはイベントであって、クローズされたプール内の該任意のアラートまたはイベントを、無効にすることによって実行されてもよい。すなわち、すでに次のプールに関連付けられているアラートに基づき特定されたアラートは、クローズされたプールにおいて無効にされる。そうしたアラートを無効にすることで、すでに次のプールと関連付けられているアラートに対する、クローズされたプールにおける依存がなくなる。
【0105】
当業者であれば当然のことであるが、本発明の側面は、システム、方法またはコンピュータ・プログラムとして具現化され得る。したがって、本発明の側面は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、または本願明細書においてすべて概して「回路」、「モジュール」または「システム」と呼ばれ得る、ソフトウェアおよびハードウェアの側面を兼ね備えた実施形態の形態をとってもよい。さらに、本発明の側面は、コンピュータ可読プログラム・コードが具現化された1つ以上のコンピュータ可読媒体(単数または複数)において具現化されたコンピュータ・プログラムの形態をとることもできる。
【0106】
1つ以上のコンピュータ可読媒体(単数または複数)の任意の組み合わせが利用され得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体とされ得る。コンピュータ可読記憶媒体は、例えば、限定はされないが、電子、磁気、光学、電磁気、赤外線、もしくは半導体システム、装置、もしくはデバイス、または前述のものの任意の適切な組み合わせとすることもできる。コンピュータ可読記憶媒体のより具体的な例(包括的でないリスト)には、1つ以上のワイヤを有する電気的接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM:read−only memory)、消去可能プログラム可能読み取り専用メモリ(EPROM(erasable programmable read−only memory)またはフラッシュ・メモリ)、光ファイバ、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD−ROM:compact disc read−only memory)、光学式記憶デバイス、磁気記憶デバイスまたは前述のものの任意の適切な組み合わせが含まれるであろう。この文書の文脈では、コンピュータ可読記憶媒体は、命令実行システム、装置もしくはデバイスによって、またはそれに関連して使用されるプログラムを含むこと、または記憶することができる任意の有形の媒体であればよい。
【0107】
コンピュータ可読信号媒体は、例えば、ベースバンドに、または搬送波の一部として、伝播データ信号において具現化されたコンピュータ可読プログラム・コードを備える伝播データ信号を含み得る。そのような伝播信号は、限定はされないが、電磁気、光学、またはその任意の適切な組み合わせを含む様々な形態のいずれかをとってよい。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体でなく、命令実行システム、装置もしくはデバイスによって、またはそれに関連して使用されるプログラムを伝達すること、伝播させること、または搬送することができる、任意のコンピュータ可読媒体としてもよい。
【0108】
コンピュータ可読媒体上に具現化されたプログラム・コードは、限定はされないが、無線、有線、光ファイバ・ケーブル、RFなどを使用して、または前述のものの任意の適切な組み合わせを含む任意の適切な媒体を使用して送られてもよい。
【0109】
本発明の側面の動作を実行するコンピュータ・プログラム・コードは、Java(R)、Smalltalk(R)、C++または同様のものなどのオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくは同様のプログラミング言語などの従来の手続きプログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれていてよい。プログラム・コードは、スタンド・アロン・ソフトウェア・パッケージとして、完全にユーザのコンピュータ上で実行されること、部分的にユーザのコンピュータ上で実行されること、または部分的にユーザのコンピュータ上で、かつ部分的にリモート・コンピュータ上で実行されること、または完全にリモート・コンピュータもしくはサーバ上で実行されることもできる。後者のシナリオでは、ローカル・エリア・ネットワーク(LAN)、もしくは広域ネットワーク(WAN:wide area network)を含む任意のタイプのネットワークを介してリモート・コンピュータがユーザのコンピュータに接続されてもよく、または、外部コンピュータに接続されてもよい(例えば、インターネット・サービス・プロバイダを使用しインターネットを介して)。
【0110】
本発明の側面は、本発明の実施形態による方法、装置(システム)およびコンピュータ・プログラムのフローチャート図またはブロック図あるいはその両方を参照して、以上に記載される。当然のことながら、フローチャート図またはブロック図、あるいはその両方の各ブロック、およびフローチャート図またはブロック図、あるいはその両方の複数ブロックの組み合わせは、コンピュータ・プログラム命令により実装可能である。当該コンピュータ・プログラム命令が、マシンを生じるよう、汎用コンピュータ、専用コンピュータ、またはその他のプログラム可能データ処理装置のプロセッサに提供されて、この命令が、コンピュータまたはその他のプログラム可能データ処理装置のプロセッサにより実行されて、フローチャートまたはブロック図あるいはその両方のブロックまたは複数ブロックにおいて指定された機能/動作を実装する手段を作り出すようにすることもできる。
【0111】
さらに、特定の形で機能するようコンピュータ、その他のプログラム可能データ処理装置、またはその他のデバイスに指示することができる当該コンピュータ・プログラム命令は、コンピュータ可読媒体に記憶されて、コンピュータ可読媒体に記憶されたこの命令が、フローチャートまたはブロック図あるいはその両方のブロックもしくは複数ブロックにおいて指定された機能/動作を実装する命令を含む製品を生じるようにすることもできる。
【0112】
さらに、コンピュータ・プログラム命令は、コンピュータ、その他のプログラム可能データ処理装置、またはその他のデバイスにロードされて、コンピュータ、その他のプログラム可能装置、またはその他のデバイス上で一連の動作ステップが実行されるようにしてコンピュータに実装されるプロセスを生じさせ、コンピュータまたはその他のプログラム可能装置上で実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックもしくは複数ブロックにおいて指定された機能/動作を実装するためのプロセスを提供するようにすることもできる。
【0113】
各図面のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法およびコンピュータ・プログラムの考えられる実装のアーキテクチャ、機能性および動作を表す。この関連で、フローチャートまたはブロック図内の各ブロックは、指定の論理機能(単数または複数)を実装する1つ以上の実行可能命令を含むモジュール、セグメント、またはコードの一部を表現することもできる。なお、さらに、いくつかの代わりの実装では、ブロック内に示されている機能が、図面に示されているのとは異なる順序で生じてもよい。例えば、関連する機能性次第で、連続して示されている2つのブロックが実際には事実上同時に実行されてもよく、または、各ブロックが逆順で実行されることがあってもよい。なお、さらに、ブロック図もしくはフローチャート図あるいはその両方の各ブロック、およびブロック図もしくはフローチャート図あるいはその両方の複数ブロックの組み合わせは、指定の機能もしくは動作を実行する専用ハードウェア・ベース・システム、または専用ハードウェアおよびコンピュータ命令の組み合わせにより実装することができる。
【0114】
本発明の真の意図から逸脱することなく、本発明の様々な実施形態において、改変または変更が加えられ得ることが、前述の記載から分かるであろう。本明細書の記載は、説明のみを目的としており、限定的な意味に解釈されてはならない。本発明の範囲は、添付の特許請求の範囲の言葉によってのみ限定される。
【符号の説明】
【0115】
101 分散処理システム
122 端末
124 イベントおよびアラート分析モジュール
128 システム管理者
202 イベント
204 モニタ
206 イベント・キュー
208 イベント・アナライザ
210 イベント分析ルール
212 イベント・プール
214、220 アラート
216 アラート・キュー
218 アラート・アナライザ
222 アラート分析ルール
224 アラート・プール
230 イベント到着ルール
232 イベント・プール動作ルール
234 イベント抑制ルール
236 イベント・プール・クローズ・ルール

【特許請求の範囲】
【請求項1】
分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理する方法であって、
前記分散処理システムの1つ以上のコンポーネントからの複数のインシデントを、インシデント・アナライザによってインシデント・キューから受信するステップと、
前記インシデント・アナライザによって、インシデントのプールを作成するステップと、
受信されたインシデントそれぞれを、前記インシデント・アナライザによって前記プールに割り当てるステップと、
前記インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てるステップと、
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断するステップと、
前記プールをクローズする条件が満たされた場合、前記プール内の各インシデントに関して、前記インシデントが、プールに含められるべきその所定の最短時間、前記プールに入っていたかどうかを判断するステップと、
前記インシデントが、その所定の最短時間前記プールに入っていた場合、前記クローズされたプールに前記インシデントを含めるステップと、
前記インシデントが、その所定の最短時間前記プールに入っていない場合、前記クローズされたプールから前記インシデントを取り出し、前記インシデントを次のプールに含めるステップと、
を含む、前記方法。
【請求項2】
前記インシデントのうちの1つ以上は、イベントを含み、前記方法は、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定するステップをさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めるステップは、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記クローズされたプールとを関連付けるステップをさらに含む、請求項1に記載の方法。
【請求項3】
前記インシデントのうちの1つ以上は、イベントを含み、前記方法は、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定するステップをさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めるステップは、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けるステップをさらに含む、請求項1に記載の方法。
【請求項4】
前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けるステップは、すでに前記次のプールに関連付けられている前記特定されたアラートに依存する任意のアラートまたはイベントであって、前記クローズされたプール内の前記任意のアラートまたはイベントを、無効にするステップをさらに含む、請求項3に記載の方法。
【請求項5】
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断するステップは、前記プールの最長時間が経過したかどうかを判断するステップをさらに含む、請求項1に記載の方法。
【請求項6】
インシデントの前記プールは、所定の初期期間を有し、前記方法は、前記インシデント・アナライザによって、前記インシデントの1つ以上に関して、前記インシデントに割り当てられている特定の期間、前記プールの前記所定の初期期間を延長するステップをさらに含み、
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断するステップは、別のインシデントが前記プールに割り当てられる前に、前記所定の初期期間と、前記プールに割り当てられた任意のインシデントに関連する任意の延長時間とが経過したと判断するステップをさらに含む、請求項1に記載の方法。
【請求項7】
前記インシデントは、イベントを含み、インシデントの前記プールは、イベント・プールを含む、請求項1に記載の方法。
【請求項8】
前記インシデントは、アラートを含み、インシデントの前記プールは、アラート・プールを含む、請求項1に記載の方法。
【請求項9】
分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するシステムであって、前記システムは、コンピュータ・プロセッサと、前記コンピュータ・プロセッサに動作可能なように結合されたコンピュータ・メモリとを含み、前記コンピュータ・メモリ内にコンピュータ・プログラム命令が配置されており、前記コンピュータ・プログラム命令は、前記コンピュータ・プロセッサによって実行されると、前記システムに、
前記分散処理システムの1つ以上のコンポーネントからの複数のインシデントを、インシデント・アナライザによってインシデント・キューから受信するステップと、
前記インシデント・アナライザによって、インシデントのプールを作成するステップと、
受信されたインシデントそれぞれを、前記インシデント・アナライザによって前記プールに割り当てるステップと、
前記インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てるステップと、
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断するステップと、
前記プールをクローズする条件が満たされた場合、前記プール内の各インシデントに関して、前記インシデントが、プールに含められるべきその所定の最短時間、前記プールに入っていたかどうかを判断するステップと、
前記インシデントが、その所定の最短時間前記プールに入っていた場合、前記クローズされたプールに前記インシデントを含めるステップと、
前記インシデントが、その所定の最短時間前記プールに入っていない場合、前記クローズされたプールから前記インシデントを取り出し、前記インシデントを次のプールに含めるステップと、
を実行させることができる、システム。
【請求項10】
前記インシデントのうちの1つ以上は、イベントを含み、前記システムは、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定できるコンピュータ・プログラム命令をさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めるステップは、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記クローズされたプールとを関連付けるステップをさらに含む、請求項9に記載のシステム。
【請求項11】
前記インシデントのうちの1つ以上は、イベントを含み、前記システムは、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定できるコンピュータ・プログラム命令をさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めるステップは、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けるステップをさらに含む、請求項9に記載のシステム。
【請求項12】
前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けるステップは、すでに前記次のプールに関連付けられている前記特定されたアラートに依存する任意のアラートまたはイベントであって、前記クローズされたプール内の前記任意のアラートまたはイベントを、無効にするステップをさらに含む、請求項11に記載のシステム。
【請求項13】
分散処理システムにおけるイベントおよびアラート分析のためにインシデント・プールを管理するためのコンピュータ・プログラムであって、前記コンピュータ・プログラムは、コンピュータ可読記憶媒体上に配置され、前記コンピュータ・プログラムは、
前記分散処理システムの1つ以上のコンポーネントからの複数のインシデントを、インシデント・アナライザによってインシデント・キューから受信すること、
前記インシデント・アナライザによって、インシデントのプールを作成すること、
受信されたインシデントそれぞれを、前記インシデント・アナライザによって前記プールに割り当てること、
前記インシデント・アナライザによって、各インシデントに、プールに含められるべき所定の最短時間を割り当てること、
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断すること、
前記プールをクローズする条件が満たされた場合、前記プール内の各インシデントに関して、前記インシデントが、プールに含められるべきその所定の最短時間、前記プールに入っていたかどうかを判断すること、
前記インシデントが、その所定の最短時間前記プールに入っていた場合、前記クローズされたプールに前記インシデントを含めること、および
前記インシデントが、その所定の最短時間前記プールに入っていない場合、前記クローズされたプールから前記インシデントを取り出し、前記インシデントを次のプールに含めること、
のコンピュータ・プログラム命令を含む、コンピュータ・プログラム。
【請求項14】
前記インシデントのうちの1つ以上は、イベントを含み、前記コンピュータ・プログラムは、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定することのコンピュータ・プログラム命令をさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めることのコンピュータ・プログラム命令は、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記クローズされたプールとを関連付けることのコンピュータ・プログラム命令をさらに含む、請求項13に記載のコンピュータ・プログラム。
【請求項15】
前記インシデントのうちの1つ以上は、イベントを含み、前記コンピュータ・プログラムは、前記プールに割り当てられている1つ以上のイベントに基づき、1つ以上のアラートを特定することのコンピュータ・プログラム命令をさらに含み、
前記インシデントを取り出し、前記インシデントを次のプールに含めることのコンピュータ・プログラム命令は、少なくとも1つのイベントを取り出し、前記取り出されたイベントを、前記次のプールに含め、前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けることのコンピュータ・プログラム命令をさらに含む、請求項13に記載のコンピュータ・プログラム。
【請求項16】
前記取り出されたイベントに基づき特定された任意のアラートと、前記次のプールとを関連付けることのコンピュータ・プログラム命令は、すでに前記次のプールに関連付けられている前記特定されたアラートに依存する任意のアラートまたはイベントであって、前記クローズされたプール内の前記任意のアラートまたはイベントを、無効にすることのコンピュータ・プログラム命令をさらに含む、請求項15に記載のコンピュータ・プログラム。
【請求項17】
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断することのコンピュータ・プログラム命令は、前記プールの最長時間が経過したかどうかを判断することのコンピュータ・プログラム命令をさらに含む、請求項13に記載のコンピュータ・プログラム。
【請求項18】
前記プールは、所定の初期期間を有し、前記コンピュータ・プログラムは、前記インシデント・アナライザによって、前記インシデントの1つ以上に関して、前記インシデントに割り当てられている特定の期間、前記プールの前記所定の初期期間を延長することのコンピュータ・プログラム命令を含み、
前記プールをクローズする条件が満たされたかどうかを、前記インシデント・アナライザによって判断することのコンピュータ・プログラム命令は、別のインシデントが前記プールに割り当てられる前に、前記所定の初期期間と、前記プールに割り当てられた任意のインシデントに関連する任意の延長時間とが経過したと判断することのコンピュータ・プログラム命令をさらに含む、請求項13に記載のコンピュータ・プログラム。
【請求項19】
前記インシデントは、イベントを含み、インシデントの前記プールは、イベント・プールを含む、請求項13に記載のコンピュータ・プログラム。
【請求項20】
前記インシデントは、アラートを含み、インシデントの前記プールは、アラート・プールを含む、請求項13に記載のコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−99092(P2012−99092A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2011−197462(P2011−197462)
【出願日】平成23年9月9日(2011.9.9)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】