JP5658417B2 - 監視システム及び監視プログラム - Google Patents
監視システム及び監視プログラム Download PDFInfo
- Publication number
- JP5658417B2 JP5658417B2 JP2014501858A JP2014501858A JP5658417B2 JP 5658417 B2 JP5658417 B2 JP 5658417B2 JP 2014501858 A JP2014501858 A JP 2014501858A JP 2014501858 A JP2014501858 A JP 2014501858A JP 5658417 B2 JP5658417 B2 JP 5658417B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- conclusion
- detection
- cause
- condition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012544 monitoring process Methods 0.000 title claims description 70
- 238000001514 detection method Methods 0.000 claims description 138
- 238000003860 storage Methods 0.000 claims description 78
- 238000011161 development Methods 0.000 claims description 18
- 238000004891 communication Methods 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 15
- 230000001364 causal effect Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 description 99
- 230000037430 deletion Effects 0.000 description 94
- 230000008569 process Effects 0.000 description 94
- 238000012217 deletion Methods 0.000 description 83
- 238000012545 processing Methods 0.000 description 54
- 238000010586 diagram Methods 0.000 description 34
- 238000004364 calculation method Methods 0.000 description 25
- 230000010365 information processing Effects 0.000 description 20
- 239000003999 initiator Substances 0.000 description 11
- 239000003795 chemical substances by application Substances 0.000 description 9
- 230000014509 gene expression Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 101100108654 Schizosaccharomyces pombe (strain 972 / ATCC 24843) alp21 gene Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、監視対象であるノード装置、コンポーネント等の監視対象オブジェクトにおいて発生した事象(以下「イベント」という)の根本原因を解析する監視システム及び監視プログラムに関する。
サーバ、ストレージ、ネットワーク装置等の複数の装置を有する情報処理システムにおける、障害等に関わる事象の根本原因を解析する技術が知られている。
例えば、特許文献1は、以下の技術を開示している。すなわち、特許文献1に開示された監視システムは、障害解析のノウハウに基づいて記述された汎用的な条件及び結論を含むルールを記憶し、そのルールを監視対象のシステム構成に展開し、ルールの条件が示すイベントの検知の有無に基づく原因解析を行って、原因となり得る結論の確信度を計算する。監視システムは、計算した確信度に基づいて原因を推定し、その結果を表示して管理者に通知する。
特許文献1に開示された監視システムは、根本原因の解析において、原因となり得る複数の結論と、各結論が原因となる場合にその影響を受けて発生するイベントを示す1以上の条件との関連付けが示された情報、及び、各条件が示すイベントの、過去所定時間内(この時間幅を「解析時間幅」という)における検知の有無に基づいて、各結論の確信度を計算する。
また、この監視システムは、根本原因の解析結果を表示する際、計算した確信度に基づいて複数の原因候補を決定し、決定した複数の原因候補をそれらの確信度とともに表示する。例えば、この監視システムは、確信度の高い順に複数の原因候補を決定し、決定した複数の原因候補を確信度の高い順に並べた一覧表を表示する。管理者は、表示された解析結果を参照し、複数の原因候補の中から根本原因を特定することができる。しかし、特許文献1に開示された監視システムは下記(1)又は/及び(2)の課題を持つ。
(1)情報処理システムにおいて或るイベント(原因イベント)が生じた場合、その原因イベントの影響を受ける複数のイベントの発生時期は、例えば、そのイベントの内容、その原因イベントが生じた装置とそのイベントが発生する装置との情報処理システム上の位置関係等の影響を受けるため、それぞれ異なる。情報処理システムの規模が大きくなると、このイベントの発生時期の差はより大きくなる。従って、情報処理システムの規模が大きい場合、このイベントの発生時期の差を吸収するために、解析における解析時間幅を或る程度大きくとる必要がある。
しかしながら、解析時間幅を大きくしすぎると、解析に影響を与えるイベント、すなわち、検知されたと判断されるイベントの数が多くなり、発生原因の異なるイベントが含まれる可能性が高くなる(つまり、ノイズが含まれる可能性が高くなる)ため、解析の精度が悪くなるおそれがある。
(2)根本原因の特定が、確信度のみを重視した解析結果(例えば、上述した確信度の高い順に原因候補を並べた一覧表等)に基づいて行われる場合、管理者は、確信度はそれほど高くないものの本来注目されるべき重要な原因候補を見落としてしまう可能性がある。
監視システムは、複数の監視対象オブジェクトのいずれかで発生したイベントの原因解析をルールに基づいて行う。この際、監視システムは、解析時間幅の間に検知をし、結論を決定するための条件に合致するイベントに基づいて複数の結論を決定する。そして、監視システムは、(A)解析時間幅を変化させたと仮定した場合の結論の決定に用いる確信度の変化を表示する、(B)決定した結論を影響範囲を示す指標値に基づいてソート表示する、(C)解析時間幅を前記指標値に基づいて計算する、の何れか1つ以上を行う。
実施例について、図面を参照して説明する。なお、以下に説明する実施例は請求の範囲にかかる発明を限定するものではなく、また実施例の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。これらの図面において、複数の図を通じて同一の符号は同一の構成要素を示している。
なお、以後の説明では「aaaテーブル」の表現にて本発明の情報を説明するが、これらの情報は、リスト、DB、キュー等のデータ構造で表現されていてもよい。そのため、データ構造に依存しないことを示すために「aaaテーブル」について「aaa情報」と呼ぶことがある。また、各情報の内容を説明する際に、「識別子」、「ID」、「名称」という表現を用いるが、これらについてはお互いに置換が可能である。なお、実施例の説明において「リポジトリ」という用語を用いるが、「情報」と同じ意味である。
以後の説明では「プログラム」を主語として説明を行う場合があるが、プログラムは、制御デバイスが有するプロセッサによって実行されることで定められた処理をメモリ及び通信ポート(ネットワークI/F)を用いながら行うため、プロセッサを主語とした説明としてもよい。また、プログラムを主語として開示された処理は、管理計算機等の計算機、情報処理装置が行う処理としてもよい。また、プログラムを実行するプロセッサによって行われる処理の一部または全ては、専用ハードウェアによって実現されてもよい。また、各種プログラムは、プログラム配布サーバや計算機が読み取り可能な記憶メディアによって各計算機にインストールされてもよい。
また、制御デバイス(及びその制御デバイスを有する第1の計算機)の「表示する」という行為は、制御デバイスが、その制御デバイスを有する計算機の表示デバイスに画面部品等を表示する行為と、表示デバイスを有する第2の計算機に、その表示デバイスに表示される画面部品等の表示用情報を送信する行為のいずれであっても良い。第2の計算機は、表示用情報を受信した場合、その表示用情報が表す画面部品等を表示デバイスに表示することができる。
また、下記実施例で述べる「時間」は、何らかの基準時刻からの経過時間(例えばOSで一般的に用いられている時間を管理するデータ構造はグリニッジ標準時の1970年1月1日の0:00:00からの経過時間で時間を表現することが多い)を指し示せれば単位は問わない。従って、「時間」は、日付と日付内の時刻であってもよく、時刻も、「時」、「分」、「秒」、「ミリ秒」あるいはそれ以下の精度でもよい。逆に「時間」は、日付のみを指しても良い。また、計算機の「時間」を管理するデータ構造の表現能力で経過時間の表現範囲が有限の期間であっても構わない。例えば「時間」は、日付を除いて時刻だけを指し示しても良く、更には、日付と「時」を除いた「分」、「秒」あるいはそれ以下の時刻だけを指し示しても良い。
図1は、実施例に係る情報処理システムの構成例を示す図である。
情報処理システムは、管理計算機100と、表示計算機200と、1つ以上のサーバ400と、1つ以上のストレージ500と、LAN(Local Area Network)等の通信ネットワーク300とを有する。通信ネットワーク300は、1つ以上のネットワーク装置301により構成される。ネットワーク装置301は、IPスイッチやルータ等である。管理計算機100、表示計算機200、サーバ400及びストレージ500は、通信ネットワーク300を介して相互に接続される。本実施例では、管理計算機100及び表示計算機200が、監視システムを構成する。
以下、情報処理システムを構成する装置(サーバ400、ストレージ500、ネットワーク装置301等)を「ノード装置」と呼ぶ場合がある。情報処理システムは、例えば、ホストコンピュータ、NAS(Network Attached Storage)、ファイルサーバ、プリンタ等をノード装置として有していてもよい。また、ノード装置が有するデバイス等の論理的又は物理的な構成物を「コンポーネント」と呼ぶ場合がある。コンポーネントの例としては、ポート、プロセッサ、記憶資源、記憶デバイス、プログラム、仮想マシン、ストレージ装置内部で定義される論理ボリューム、RAIDグループ等がある。以下、管理計算機100が監視の対象とするノード装置を「監視対象装置」と呼び、管理計算機100が監視の対象とするノード装置又はコンポーネントを「監視対象オブジェクト」と呼ぶ場合がある。
図2は、管理計算機の構成例を示す図である。
管理計算機100は、監視対象オブジェクトを監視し、監視対象オブジェクトで発生したイベントの原因の解析を行う計算機である。管理計算機100は、例えば、汎用的な計算機(コンピュータ)であり、CPU(Central Processing Unit)101と、記憶資源102と、ネットワークI/F(インターフェース)103と、内部バス104とを有する。CPU101、記憶資源102及びネットワークI/F103は、内部バス104を介して相互に接続される。ネットワークI/F103は、通信ネットワーク300に接続するためのインターフェース装置である。記憶資源102は、メモリであってもよいし、ハードディスクドライブ(HDD)等の二次記憶装置であってもよいし、メモリ及び二次記憶装置を組み合わせたものであってもよい。
記憶資源102は、イベント検知プログラム111と、ルール展開プログラム112と、インパクテッドノード数算出プログラム113と、確信度計算プログラム114と、イベント消去プログラム115と、イベント消去タスク生成プログラム116と、重みオブジェクト追加プログラム117とを記憶する。また、記憶資源102は、構成情報121と、汎用ルールリポジトリ122と、展開ルールリポジトリ123と、ルールメモリデータ124と、イベント情報テーブル(TBL)125と、イベント消去タスクテーブル126とを記憶する。汎用ルールリポジトリ122には、1以上の汎用ルールが格納される。展開ルールリポジトリ123には、1以上の展開ルールが格納される。なお、構成情報121については、後述する。CPU101は、記憶資源102に格納されたプログラム111〜117を実行する。
管理計算機100は、監視対象装置から、例えば、監視対象オブジェクトでイベントが発生したことを示すイベントメッセージ(図11参照)、監視対象装置或いは情報処理システム全体の構成に関する情報等の種々の情報を受信する。管理計算機100は、監視対象装置から受信した種々の情報に基づいて、例えば、イベントの原因を解析する処理等の種々の処理を行い、その処理結果を表示計算機200に出力する。なお、管理計算機100が、表示計算機200が持つ表示機能を有していてもよい。
図3は、表示計算機の構成例を示す図である。
表示計算機200は、管理計算機100の要求に基づいて管理計算機100が行った種々の処理結果を出力する計算機である。表示計算機200は、例えば、汎用的な計算機であり、CPU201と、記憶資源202と、ネットワークI/F203と、内部バス204と、入出力デバイス205とを有する。CPU201、記憶資源202、ネットワークI/F203及び入出力デバイス205は、内部バス204を介して相互に接続される。CPU201は、記憶資源202に格納されたプログラムを実行する。記憶資源202は、メモリであってもよいし、ハードディスクドライブ(HDD)等の二次記憶装置であってもよいし、メモリ及び二次記憶装置を組み合わせたものであってもよい。記憶資源202は、表示用結果表示プログラム211と、表示用構成情報221と、表示用イベント情報222と、表示用解析結果223とを記憶する。
ネットワークI/F203は、通信ネットワーク300に接続するためのインターフェース装置である。入出力デバイス205は、入出力装置(ディスプレイ206等)に接続するためのインターフェース装置である。例えば、入出力デバイス205には、ディスプレイ206が接続される。表示計算機200は、イベントの原因解析の結果や他の情報をディスプレイ206に表示することで、イベントの原因解析の結果等を管理者に提示することができる。なお、表示計算機200が、内部にディスプレイ206を有するようにしてもよい。
図4は、サーバの構成例を示す図である。
サーバ400は、アプリケーション等を実行する計算機である。サーバ400は、CPU404と、記憶資源401と、ネットワークI/F405とを有する。ネットワークI/F405は、通信ネットワーク300に接続するためのインターフェース装置である。
記憶資源401は、監視エージェント402とiSCSI(Internet Small Computer System Interface)イニシエータ403とを記憶する。監視エージェント402は、監視対象オブジェクトにおいて何らかのイベントが発生した場合に、そのイベントの発生を示すイベントメッセージを管理計算機100に送信するためのプログラムである。また、サーバ400には、ストレージ500の記憶領域が割り当てられた仮想的なボリュームであるiSCSIディスク411が形成される。iSCSIディスク411は、iSCSIイニシエータ403によって仮想的に存在するエンティティであり、ストレージ500から提供されるLU(論理ユニット)を用いて定義される。サーバ400は、iSCSIイニシエータ403を介すことで、iSCSIディスク411をローカルハードディスクのように利用できる。なお、本実施例では、iSCSIイニシエータ403は、その機能を実現するプログラムであるが、その機能の一部または全てをハードウェアで代用してもよい。CPU404は、記憶資源401に格納された監視エージェント402と、iSCSIイニシエータ403を実行する。
記憶資源401は、監視エージェント402とiSCSI(Internet Small Computer System Interface)イニシエータ403とを記憶する。監視エージェント402は、監視対象オブジェクトにおいて何らかのイベントが発生した場合に、そのイベントの発生を示すイベントメッセージを管理計算機100に送信するためのプログラムである。また、サーバ400には、ストレージ500の記憶領域が割り当てられた仮想的なボリュームであるiSCSIディスク411が形成される。iSCSIディスク411は、iSCSIイニシエータ403によって仮想的に存在するエンティティであり、ストレージ500から提供されるLU(論理ユニット)を用いて定義される。サーバ400は、iSCSIイニシエータ403を介すことで、iSCSIディスク411をローカルハードディスクのように利用できる。なお、本実施例では、iSCSIイニシエータ403は、その機能を実現するプログラムであるが、その機能の一部または全てをハードウェアで代用してもよい。CPU404は、記憶資源401に格納された監視エージェント402と、iSCSIイニシエータ403を実行する。
図5は、ストレージの構成例を示す図である。
ストレージ500は、サーバ400等に記憶領域を提供する装置である。ストレージ500は、ストレージコントローラ501と、ネットワークI/F504と、記憶媒体503(本実施例では、ハードディスクドライブ(HDD))とを有する。ネットワークI/F504は、通信ネットワーク300に接続するためのインターフェース装置である。本実施例において、記憶媒体503は、ハードディスクドライブであるが、これに代えて、固体記憶媒体、光記憶媒体等、他の種類の記憶媒体であってもよい。ストレージ500は、例えば、サーバ400に対して、iSCSIディスク411を形成するための記憶領域を提供する。ストレージコントローラ501は、図示しない記憶資源に監視エージェント502を記憶する。監視エージェント502は、ストレージ500において何らかのイベントが発生した場合に、そのイベントの発生を示すイベントメッセージを管理計算機100に送信するためのプログラムである。監視エージェント502は、ストレージコントローラ501内のCPUにより実行される。なお、サーバ400の監視エージェント402が、ストレージ500で発生したイベントを監視できるように構成し、ストレージ500で発生したイベントのイベントメッセージを管理計算機100に送信するようにしてもよい。
本実施例において、幾つかの監視対象装置は、例えば、iSCSIボリュームの提供サービスやファイル共有サービスやWebサービス等のネットワークサービスを提供する装置(以下「サービス提供装置」)である。また、幾つかの監視対象装置は、サービス提供装置が提供するネットワークサービスを利用する装置(以下「サービス利用装置」)である。例えば、サーバ400は、ストレージ500が提供するiSCSIボリュームの提供サービスを利用するため、サービス利用装置に相当する。一方、ストレージ500は、サーバ400等にiSCSIボリュームの提供サービスを提供するため、サービス提供装置に相当する。サービス提供装置及びサービス利用装置は、相互にネットワークサービスを提供し利用する関係を有しているため、その一方で発生したイベントが他方へ伝搬し得る。例えば、サービス提供装置に相当するストレージ500で或るイベントが発生した場合、その影響を受けて、そのストレージ500が提供するネットワークサービスを利用しているサーバ400(すなわちサービス利用装置)においても何らかのイベントが発生し得る。
ここで、管理計算機100の記憶資源102に記憶される構成情報121について説明する。構成情報121は、情報処理システムの構成を示す情報であり、具体的には、情報処理システムがどんなノード装置によって構成されているか、各ノード装置の構成がどのようになっているか(例えば、ノード装置がどんなコンポーネントを有しているか)、ノード装置間或いはコンポーネント間の接続関係がどうなっているか、ノード装置とコンポーネントとの間の包含関係がどうなっているか等を示す情報である。また、構成情報121には、ネットワークサービスの提供又は利用に関係する情報(例えば、サービス利用装置の識別情報、ネットワークサービスを利用する際にサービス提供装置に入力する情報等)が含まれる場合がある。サービス提供装置に入力する情報として、例えば、iSCSIボリュームの提供サービスを利用する際に入力するiSCSIターゲット名及びLUN(論理ユニット番号)や、Webサービスを利用する際に入力するWebサーバの名前を含むURL等がある。本実施例では、構成情報121は、ルータ管理テーブル600と、iSCSIターゲット管理テーブル700とを含む。
図6は、ルータ管理テーブルの一例を示す図である。
ルータ管理テーブル600は、ルータがどのサブネットとどのサブネットとを接続しているかを表す情報を管理するためのテーブルである。ルータ管理テーブル600は、構成情報121の一部に相当する。ルータ管理テーブル600は、ルータごとに、当該ルータの識別子が格納されるノードID601と、当該ルータのノード装置の種別が格納されるノードタイプ602と、当該ルータが接続する二つのサブネットの識別子がそれぞれ格納されるサブネットID603、604(サブネットID1、サブネットID2)とを、対応付けて管理する。図6のルータ管理テーブル600によれば、ルータ1(Router1)がサブネット0とサブネット1とを接続しており、ルータ2(Router2)がサブネット0とサブネット2とを接続していることがわかる。
図7は、iSCSIターゲット管理テーブルの一例を示す図である。
iSCSIターゲット管理テーブル700は、iSCSIターゲットがどのiSCSIイニシエータに対して接続を許可しているかを表す情報を管理するためのテーブルである。iSCSIターゲット管理テーブル700は、構成情報121の一部に相当する。iSCSIターゲット管理テーブル700は、ターゲットID701と、iSCSIターゲット名702と、接続許可iSCSIイニシエータ名703とを、対応付けて管理する。
ターゲットID701には、iSCSIターゲットと接続許可iSCSIイニシエータとの組み合わせごとに付与される識別子が格納される。iSCSIターゲット名702には、iSCSIターゲットの名称が格納される。接続許可iSCSIイニシエータ名703には、接続が許可されているiSCSIイニシエータの名称が格納される。例えば、ターゲットID「TG1」の情報から、iSCSIターゲットであるストレージ1(com.hi.sto1)は、iSCSIイニシエータであるサーバ1(com.hi.sv1)に対して接続を許可していることがわかる。
図8は、汎用ルールの一例を示す図である。
汎用ルールリポジトリ122には、1以上の汎用ルールが格納されている。汎用ルールは、イベントを示す条件と、当該条件を満たす場合に原因と特定されるイベントを示す結論との関連付けを、情報処理システムの実構成に依存しない形式で記述した情報である。汎用ルールは、複数の条件又は複数の結論を含んでいてもよい。
同図に示すように、汎用ルール801には、IF部811とTHEN部812とがある。IF部811には1つ以上の条件が記述され、THEN部812には結論が記述される。条件及び結論は、それぞれイベントの発生元のノード装置の種別とイベントの種別とを含む。IF部811は、確信度を計算する方法を指定するための演算子(例えば、AND、OR等)を含んでいてもよい。なお、他の汎用ルール802も同様な構成となっている。
汎用ルール801(GenRule1)においては、IF部811には、2つの条件821、822が記述されている。また、THEN部812には、1つの結論823が記述されている。この汎用ルール801は、2つの条件821、822が満たされた場合、すなわち2つの条件821、822が示すイベントが検知された場合に、結論823によって示されるイベントが原因であると特定されることを表している。
具体的には、条件821(「Server DiskDrive Err」)は、発生元のノード装置の種別が「Server」であり、イベントの種別が「DiskDrive Err」であるイベント、すなわち、サーバ400で発生するディスク障害というイベントを示している。また、条件822及び結論823(「IpSwitch Port LinkDown」)は、発生元のノード装置の種別が「IpSwitch」であり、イベントの種別が「Port LinkDown」であるイベント、すなわち、IPスイッチで発生するポートのリンク障害というイベントを示している。従って、この汎用ルール801は、サーバ400で発生するディスク障害のイベントとIPスイッチで発生するポートのリンク障害のイベントとが検知された場合に、IPスイッチで発生するポートのリンク障害のイベントが原因であると特定されることを表している。
なお、本実施例における汎用ルールは、イベントを、発生元のノード装置の種別で特定しているが、イベントを、発生元の監視対象オブジェクトの種別で特定してもよい。すなわち、イベントを、発生元のノード装置の種別及び/又はコンポーネントの種別で特定してもよい。以後の説明では、簡略化のために、コンポーネントを用いずにノード装置のみで説明を進めるが、ノード装置に関する説明を、ノードとコンポーネントの組み合わせと読み替えれば、汎用ルールがノード装置の種別及びコンポーネントの種別を条件とした場合に適用できることは言うまでもない。
図9は、展開ルールの一例を示す図である。
展開ルールリポジトリ123には、1以上の展開ルールが格納される。展開ルールは、汎用ルールを情報処理システムの実構成に依存する形式に展開した情報である。汎用ルールと同様に、展開ルール901には、1以上の条件が記述されるIF部911と1以上の結論が記述されるTHEN部912とがある。条件及び結論は、それぞれイベントの発生元のノード装置の名称とイベントの種別とを含む。IF部911は、確信度を計算する方法を指定するための演算子を含んでいてもよい。なお、他の展開ルール902も同様な構成となっている。
例えば、情報処理システムに1つのサーバ400(サーバ1)と1つのストレージ500(ストレージ0)と1つのIPスイッチ(IPスイッチ1)とが含まれていると想定した場合、図8に示す汎用ルール801は、図9に示す展開ルール901(ExpRule1)に展開される。展開ルール901には、サーバ1、ストレージ0及びIPスイッチ1という情報処理システムの実構成物である監視対象装置に関係するイベントを示す条件及び結論が含まれる。具体的には、条件921(「Server1 DiskDrive Err」)は、サーバ1で発生するディスク障害というイベントを示している。条件922及び結論923(「IpSwitch1 Port LinkDown」)は、IPスイッチ1で発生するポートのリンク障害というイベントを示している。従って、この展開ルール901は、サーバ1で発生するディスク障害のイベントとIPスイッチ1で発生するポートのリンク障害のイベントとが検知された場合に、IPスイッチ1で発生するポートのリンク障害のイベントが原因であると特定されることを表している。
なお、本実施例における展開ルールは、イベントを、発生元のノード装置の名称で特定しているが、イベントを、発生元の監視対象オブジェクトの名称で特定してもよい。すなわち、イベントを、発生元のノード装置の名称及び/又はコンポーネントの名称で特定してもよい。
図10は、ルールメモリデータの一例を示す図である。
ルールメモリデータ124は、少なくとも、イベントの原因解析に用いられる複数の展開ルールと、その展開ルールの条件が示すイベントに関する検知データと、その展開ルールの結論が原因であること(すなわち、結論が示すイベントが原因であること)の確からしさを示す情報である確信度とを、複数のオブジェクト及びそれらの関連付けにより表現したデータである。ルールメモリデータ124は、例えば、汎用ルール及び構成情報121に基づいて生成され、イベントの原因解析を行う際に利用される。
ルールメモリデータ124には、例えば、条件オブジェクト1001(1001a、1001b等)と、結論オブジェクト1004(1004a、1004b等)と、演算子オブジェクト1002(1002a、1002b等)と、重みオブジェクト1003(1003a、1003b等)と、それぞれの接続情報とが含まれる。なお、各オブジェクトは、コンピュータ言語では例えば構造体やクラスとして実装され、プログラム動作中は記憶資源102に格納されるデータ(オブジェクトデータ)である。
演算子オブジェクト1002は、確信度を計算する方法を指定するための演算子の情報を管理するオブジェクトである。なお、演算子オブジェクトは肯定(図中では「Not False」)のほか、否定(図中では「Not True」)を表現するオブジェクトがあってもよい。
条件オブジェクト1001は、展開ルールの条件に対応し、結論オブジェクト1004は、展開ルールの結論に対応する。条件オブジェクト1001と結論オブジェクト1004とは、展開ルールの条件と結論との関連付けに対応する接続関係となっている。なお、条件オブジェクト1001と結論オブジェクト1004とは、演算子オブジェクト1002を介して接続される。ここで、条件オブジェクト1001に対して演算子オブジェクト1002を介して接続された結論オブジェクト1004についても、条件オブジェクト1001に接続された結論オブジェクト1004といい、結論オブジェクト1004に対して演算子オブジェクト1002を介して接続された条件オブジェクト1001についても、結論オブジェクト1004に接続された条件オブジェクト1001ということとする。
条件オブジェクト1001は、対応する条件が示すイベント及びそのイベントの第1の検知データを管理するオブジェクトである。ここで、第1の検知データとは、イベントが検知されたか否か、具体的には、管理計算機100がイベントの発生を示すイベントメッセージを受信したか否かを示す情報である。条件オブジェクト1001は、情報フィールドとして、「Node」1011と、「Event」1021と、「Received」1031とを含む。「Node」1011には、管理するイベントの発生元のノード装置の名称が設定される。「Event」1021には、管理するイベントの種別が設定される。「Received」1031には、管理するイベントの第1の検知データが設定される。第1の検知データは、例えば、管理するイベントが発生したことを示すイベントメッセージの受信時間である。
図10の例では、条件オブジェクト1001aは、サーバAのiSCSIの通信障害というイベント及びそのイベントの第1の検知データを管理する。条件オブジェクト1001aは、サーバAのiSCSIの通信障害というイベントが、「2008年4月13日の9時20分11秒」に、管理計算機100により検知されたこと(具体的には、管理計算機100がそのイベントメッセージを受信したこと)を示している。
結論オブジェクト1004は、対応する結論が示すイベント及び対応する結論が原因であることの確からしさを示す確信度を管理するオブジェクトである。結論オブジェクト1004は、情報フィールドとして、「Rule」1014と、「Node」1024と、「Cause」1034と、「MR」1044と、「Impact」1054とを含む。「Rule」1014には、対応する結論を記述しているルールの名称が設定される。「Node」1024には、管理するイベントの発生元のノード装置の名称が設定される。「Cause」1034には、管理するイベントの種別が設定される。「MR」1044には、対応する結論の確信度が設定される。確信度は、後述する確信度計算処理において計算され、当該「MR」1044に設定される。
「Impact」1054は、対応する結論が原因となる場合の影響範囲を示す指標値を管理するフィールドである。ここで、影響範囲とは、原因が生じた場合(すなわち、原因のイベントが発生した場合)にその影響を受けて障害が生じる範囲のことをいう。影響範囲の広さは、例えば、原因が生じた場合にその影響を受けてイベントが発生するノード装置の数、原因が生じた場合にその影響を受けて発生するイベントの数等で表すことができる。本実施例では、影響範囲を示す指標値として、原因が生じた場合にその影響を受けてイベントが発生するノード装置の数を採用する。以下、原因が生じた場合にその影響を受けてイベントが発生するノード装置を「インパクテッドノード」と呼び、インパクテッドノードの数を「インパクテッドノード数」と呼ぶ。本実施例において、「Impact」1054には、対応する結論のインパクテッドノード数が設定される。
図10の例では、結論オブジェクト1004aは、ストレージ1のコントローラ障害というイベント及びそのイベント(結論)の確信度を管理する。結論オブジェクト1004aには、4つの条件オブジェクト1001a、1001b、1001c、1001dが接続されている。この4つの条件オブジェクト1001a、1001b、1001c、1001dが管理するそれぞれのイベントが、結論オブジェクト1004aが管理するイベントが発生した場合にその影響を受けて発生するイベントである。従って、この4つの条件オブジェクト1001a、1001b、1001c、1001dが管理する各イベントの発生元のノード装置、すなわち、サーバA、サーバB、サーバC及びストレージ1が、インパクテッドノードとなる。従って、結論オブジェクト1004aに対応する結論のインパクテッドノード数は、「4」となる。
なお、本実施例では、結論に関連付けられている複数の条件が、同一のノード装置で発生するイベント(例えば、サーバAで発生するドライブエラーとサーバAで発生するDNSエラー等)を示している場合には、インパクテッドノード数は、同一のノード装置(上記かっこ内の例であれば、サーバA)を1つとカウントする。すなわち、同一のノード装置における異なるイベントについて重複してカウントしない。なお、影響範囲を示す指標値としては、インパクテッドノード数に限らず、例えば、原因が生じた場合にその影響を受けて発生するイベントの数を採用するようにしてもよく、この場合には、同一のノード装置で発生した異なるイベントについて重複してカウントするようにすればよい。
重みオブジェクト1003は、条件オブジェクト1001が管理するイベントについて、その検知が有効であるか無効であるかを示す第2の検知データ(例えば、重み)を、影響範囲を示す指標値(例えば、インパクテッドノード数)ごとに管理するオブジェクトである。重みオブジェクト1003は、各条件オブジェクト1001について、その条件オブジェクト1001に対応する条件に関連付けられている1以上の結論のインパクテッドノード数ごとに生成される。
重みオブジェクト1003は、管理する第2の検知データに関係する条件オブジェクト1001及び結論オブジェクト1004のそれぞれに接続される。具体的には、或るイベント(ここでは「イベント1」とする)の、或るインパクテッドノード数(ここでは「指標値1」とする)に関係する第2の検知データを管理する重みオブジェクト1003は、当該イベント1を管理する条件オブジェクト1001と、当該イベント1を管理する条件オブジェクト1001に接続されかつ当該指標値1が設定されている結論オブジェクト1004とに、それぞれ接続される。なお、条件オブジェクト1001と重みオブジェクト1003とは、演算子オブジェクト1002を介して接続される。ここで、条件オブジェクト1001に対して演算子オブジェクト1002を介して接続された重みオブジェクト1003についても、条件オブジェクト1001に接続された重みオブジェクト1003といい、重みオブジェクト1003に対して演算子オブジェクト1002を介して接続された条件オブジェクト1001についても、重みオブジェクト1003に接続された条件オブジェクト1001ということとする。
図10の例では、重みオブジェクト1003aは、条件オブジェクト1001aと結論オブジェクト1004bとのそれぞれに接続されている。つまり、この重みオブジェクト1003aは、その接続先の条件オブジェクト1001aが管理するイベント(すなわち、サーバAのiSCSIの通信障害というイベント)の、その接続先の結論オブジェクト1004bに設定されているインパクテッドノード数(すなわち「4」)に関係する第2の検知データを管理する。ちなみに、重みオブジェクト1003aに接続されている条件オブジェクト1001a及び結論オブジェクト1004bは、互いに接続されている(すなわち、対応する条件及び結論が、関連付けられている)。
重みオブジェクト1003は、情報フィールドとして、「Impact」1013と、「Weight」1023とを含む。「Impact」1013には、管理する第2の検知データに関係するインパクテッドノード数が設定される。なお、互いに接続される重みオブジェクト1003及び結論オブジェクト1004には、同一のインパクテッドノード数が設定される。
「Weight」1023には、第2の検知データが設定される。本実施例において、第2の検知データとしては、重みの値が設定される。重みは、例えば「0.0」又は「1.0」の値をとる。重みの値「0.0」は、イベントの検知が無効であること、すなわち、イベントが未だ検知されていない(つまり、そのイベントを管理する条件オブジェクト1001の「Received」1031に未だ受信時間が設定されていない)か、イベントが検知されていたとしても原因解析においては検知されているイベントとして取り扱われないことを示す。一方、重みの値「1.0」は、イベントの検知が有効であること、すなわち、イベントが検知されており、原因解析において検知されているイベントとして取り扱われることを示す。例えば、条件オブジェクト1001aが管理するイベント(サーバAのiSCSIの通信障害というイベント)が検知された場合、その条件オブジェクト1001aに接続されている重みオブジェクト1003a、1003bのフィールド「Weight」1023に重みの値「1.0」が設定され、当該イベントの検知が有効となる。
なお、管理計算機100は、原因解析において、各条件オブジェクト1001が管理するイベントの、過去の所定時間内(この時間幅を「解析時間幅」という)における検知の有無に基づいて、各結論オブジェクト1004が管理する確信度を計算している。具体的な処理の一例としては、原因解析時に、各重みオブジェクト1003が管理する重みが有効に設定されているか又は無効に設定されているかを参照することによりイベントの検知の有無を判断し、その検知の有無に基づいて確信度を計算する。従って、解析時間幅は、イベントが検知されて重みが有効に設定されてから、その重みが無効に設定されるまでの時間幅、すなわち、イベントの検知の有効期間によって実現できる。すなわち、解析時間幅と同じ値が有効期間として設定される。このように、イベントの検知の有効期間は、解析時間幅と同じ値が設定されるため、以下、イベントの検知の有効期間についても「解析時間幅」という。
なお、重みは、イベントの検知が有効であるか無効であるかに加えて、有効である場合にその有効の度合いを示し得る値であってもよい。具体的には、例えば、重みが「0.0」〜「1.0」の値をとり、重みの値「0.0」がイベントの検知が無効であることを示し、重みの値「0.0」以外がイベントの検知が有効であることを示し、数値の大きさが有効の度合いを示すように構成してもよい。この場合、例えば、時間経過に伴って有効の度合いが小さくなるように構成することができる。具体的には、例えば、重みの値を、イベントが検知されてから一定期間は「1.0」とし、その後「0.0」になるまで徐々に減少させてもよい。
このように、条件オブジェクト1001が管理する各イベントについて、影響範囲を示す指標値ごとに第2の検知データを管理することで、イベントの検知を無効にするタイミングを、影響範囲を示す指標値ごとに異ならせることが可能となる。つまり、解析時間幅を、影響範囲を示す指標値ごとに異ならせることが可能となる。
なお、ルールメモリデータ124は、図10で説明した構造に限られるものではなく、条件及び結論の関連付け、イベントに関する第1及び第2の検知データ、結論の確信度を表現し得る他のデータ構造を採用してもよい。
図11は、イベントメッセージの一例を示す図である。
イベントメッセージ1100は、監視対象オブジェクトでイベントが発生したことを示す情報であり、監視エージェント402、502により管理計算機100へ送信される。イベントメッセージ1100は、情報フィールドとして、ノードタイプ1101と、ノード名と1102と、イベントタイプ1103とを含む。ノードタイプ1101には、イベントの発生元のノード装置の種別が格納される。ノード名1102には、イベントの発生元のノード装置の名称が格納される。イベントタイプ1103には、イベントの種別が格納される。
図12は、イベント情報テーブルの一例を示す図である。
イベント情報テーブル125は、発生したイベントに関するイベントエントリ1250を管理するためのテーブルである。イベント検知プログラム111は、イベントメッセージ1100を受信した場合に、受信したイベントメッセージ1100により通知されたイベントに関するイベントエントリ1250を作成し、このテーブル125に入れる。
各イベントエントリ1250は、情報フィールドとして、ノードタイプ1251と、ノード名1252と、イベントタイプ1253と、受信時間1254とを含む。ノードタイプ1251には、イベントの発生元のノード装置の種別が格納される。ノード名1252には、イベントの発生元のノード装置の名称が格納される。イベントタイプ1253には、イベントの種別が格納される。受信時間1254には、イベントの発生を示すイベントメッセージ1100の受信時間が格納される。なお、イベントの検知は、必ずしも図11のようなイベントメッセージによって検知しなくてもよい。例えば、くり返しイベント検知プログラムが監視対象オブジェクトの状態等の値を取得し、前回との差異を比較して所定の条件(例えば前回は正常状態で今回は異常状態を取得)を満たした場合にイベント検知とみなしてもよい。
図13は、イベント消去タスクテーブルの一例を示す図である。
イベント消去タスクテーブル126は、イベント消去タスクに関するイベント消去タスクエントリ1260を管理するためのテーブルである。ここで、イベント消去タスクとは、検知されてから解析時間幅が経過したイベントについて、そのイベントに関係する重みをリセット、すなわち、重みを無効に設定する処理を行うタスクのことをいう。イベント消去タスクは、イベントの検知時に、後述するイベント消去タスク生成処理(図20参照)において生成される。イベント消去タスクは、重みが有効に設定された重みオブジェクト1003ごとに生成される。以下、イベント消去タスクの処理対象の重みオブジェクト1003が管理する重みに関係するイベントを「消去処理対象イベント」と呼び、イベント消去タスクの処理対象の重みオブジェクト1003が管理する重みに関係するインパクテッドノード数を「消去処理対象インパクテッドノード数」と呼ぶ。
各イベント消去タスクエントリ1260は、情報フィールドとして、例えば、開始時間1261と、ノード名1262と、イベントタイプ1263と、インパクテッドノード数1264と、受信時間1265とを含む。ノード名1262には、消去処理対象イベントの発生元のノード装置の名称が格納される。イベントタイプ1263には、消去処理対象イベントの種別が格納される。インパクテッドノード数1264には、消去処理対象インパクテッドノード数が格納される。受信時間1265には、消去処理対象イベントの発生を示すイベントメッセージ1100の受信時間が格納される。開始時間1261には、イベント消去タスクの実行が開始される時間(以下「消去処理開始時間」という)が格納される。
消去処理開始時間は、例えば、消去処理対象イベントが検知されてから、その消去処理対象イベントの、消去処理対象インパクテッドノード数に関して決められた解析時間幅が経過した時点の時間とされる。解析時間幅が経過したイベントについては、確信度計算処理の対象から除外される。解析時間幅は、1つのイベントについて、そのイベントを示す条件に関連付けられている結論のインパクテッドノード数に基づいて値が決められる。例えば、そのイベントを示す条件に関連付けられている結論のインパクテッドノード数が複数種類あれば、それぞれのインパクテッドノード数に基づいて値が決められる。解析時間幅は、インパクテッドノード数に基づいて、例えば、以下の式1又は式2により計算される。
解析時間幅 = T0×Ni ・・・(式1)
解析時間幅 = T0×(1+log(Ni)) ・・・(式2)
解析時間幅 = T0×Ni ・・・(式1)
解析時間幅 = T0×(1+log(Ni)) ・・・(式2)
ここで、T0は、1インパクテッドノードあたりの、イベントの検知の有効期間であり、予め定められる基準値である。なお、この基準値は、最低1つあればよいが、例えば、ノード装置の種別とイベントの種別との組み合わせごとに用意されていてもよい。Niは、インパクテッドノード数である。式1及び式2は、いずれも、インパクテッドノード数が大きいほど、解析時間幅がより広くなるように定義されている。これにより、影響範囲の広い結論については、より広い解析時間幅を用いて原因解析を行うことができるようになる。なお、本実施例において、解析時間幅は、イベント消去タスクが生成される際に決定されるが、原因解析が行われる際に決定されてもよい。
図14は、重みの値の変化の例を示す図である。
実線1411は、本実施例における重み(すなわち、イベントの検知の有効の度合いが考慮されていない重み)の変化を示している。イベントが検知された時間Aにおいて、重みの値は「1.0」に設定される。この際、この重みに関係するインパクテッドノード数に基づいて、検知されたイベントの解析時間幅1421が決定される。その後、解析時間幅1421が経過した時間Bにおいて、重みの値は「0.0」に設定される。なお、この重みに関係するイベントは、時間Aから解析期間幅1421経過後の時間Bまでの間に原因解析が行われた場合に、検知が有効であるとして取り扱われ、それ以降は、再び検知されるまで検知が無効であるとして取り扱われる。
一方、破線1412は、イベントの検知の有効の度合いが考慮された重みの変化の一例を示している。有効の度合いが考慮されていない場合(実線1411)と同様に、イベントが検知された時間Aにおいて、重みの値は「1.0」に設定され、重みの値は、重みが一定として扱われる予め決められた有効期間が経過する時間Bまで一定とされる。その後、重みの値は、徐々に減少され、時間Cにおいて「0.0」に設定される。なお、この場合、この重みに関係するイベントは、時間Aから時間Cまでの間に原因解析が行われたときに、検知が有効であるとして取り扱われ、それ以降は、再び検知されるまで検知が無効であるとして取り扱われる。従って、この場合、時間Aから時間Cまでの時間幅1422が解析時間幅となる。また、時間Bから時間Cまでの間は、イベントの検知の有効の度合いが最大ではないことも考慮されて、確信度が計算される。なお、時間Bから時間Cまでの間の重みの減衰は、同図のような直線的な減衰に限られず、折れ線や曲線に従った減衰であってもよい。
以下に、イベントの検知の有効の度合いが考慮された重みの計算方法の一例を示す。この例は、インパクテッドノード数が増えると重みの減衰の傾きが緩やかになる例を示している。
(1)まず、以下の式3に基づいて、イベント超過時間が計算される。
イベント超過時間 = 現在時間 −(イベントの受信時間+有効期間) ・・・(式3)
(ここで、有効期間は、重みの値が「1.0」と一定に扱われる期間であり、予め設定されている。)
イベント超過時間 = 現在時間 −(イベントの受信時間+有効期間) ・・・(式3)
(ここで、有効期間は、重みの値が「1.0」と一定に扱われる期間であり、予め設定されている。)
(2)次に、以下の式4に基づいて、減衰量が計算される。
減衰量 = 減衰率 × イベント超過時間 ÷(1+log(インパクテッドノード数)) ・・・(式4)
(ここで、減衰率は、予め設定された値となっている。)
減衰量 = 減衰率 × イベント超過時間 ÷(1+log(インパクテッドノード数)) ・・・(式4)
(ここで、減衰率は、予め設定された値となっている。)
(3)次に、以下の処理が行われる。
(3−1)(2)での結果、減衰量が0よりも小さい場合は、重みの値は「1.0」とされる。
(3−2)(2)での結果、減衰量が1よりも大きい場合は、重みの値は「0.0」とされる。
(3−3)(2)での結果、減衰量が0以上かつ1以下の場合は、重みの値は、「1.0」から減衰量を減算した値とされる。
(3−1)(2)での結果、減衰量が0よりも小さい場合は、重みの値は「1.0」とされる。
(3−2)(2)での結果、減衰量が1よりも大きい場合は、重みの値は「0.0」とされる。
(3−3)(2)での結果、減衰量が0以上かつ1以下の場合は、重みの値は、「1.0」から減衰量を減算した値とされる。
以下、管理計算機100が行う各処理についてフローチャートを参照して説明する。
図15は、ルール展開処理のフローチャートである。
ルール展開処理は、構成情報121及び汎用ルールに基づいて、展開ルール及びルールメモリデータ124を生成する処理である。管理計算機100は、監視対象オブジェクトの監視を行う前、すなわちイベントの検知前にルール展開処理を行って、ルールメモリデータ124を予め生成しておいてもよいし、イベントの検知後或いは後述する確信度計算処理(図19参照)の実行の際にルール展開処理を行って、オンデマンドにルールメモリデータ124の全部又は一部を生成してもよい。ルールメモリデータ124又は展開ルールは、管理計算機100がイベントの原因解析を行う上での一時的な生成物であってもよい。
まず、ルール展開プログラム112は、監視対象装置から構成に関する情報を取得し、取得した情報に基づいて構成情報121を生成し又は更新する(ステップS101)。
次に、ルール展開プログラム112は、構成情報121及び汎用ルールに基づいて、展開ルール及びルールメモリデータ124を生成する(ステップS102)。本ステップは、具体的には、(A)汎用ルールの条件と結論の関係を満たすノード装置の組み合わせを構成情報121から探し、探した組み合わせで汎用ルールの条件と結論にノード装置の識別子を加えて展開ルールを作成し、(B)展開ルールの条件と結論に対応する条件オブジェクト、結論オブジェクト、演算子オブジェクトをルールメモリデータ124に作成する。なお、ここで生成されるルールメモリデータ124は、重みオブジェクト1003を未だ含んでいない中間的な状態のデータである。
次に、ルール展開プログラム112は、重みオブジェクト追加プログラム117に重みオブジェクト追加処理(図16参照)を実行させる(ステップS103)。この重みオブジェクト追加処理により、ステップS102で生成された中間的な状態のルールメモリデータ124に、重みオブジェクト1003が追加され、最終的な状態のルールメモリデータ124が生成される。
その後、ルール展開プログラム112は、生成したルールメモリデータ124を記憶資源102に記憶し(ステップS104)、ルール展開処理を終了する。
図16は、重みオブジェクト追加処理のフローチャートである。
重みオブジェクト追加処理は、中間的な状態のルールメモリデータ124に重みオブジェクト1003を追加する処理である。重みオブジェクト追加処理は、図15におけるステップS103の処理に対応する。
重みオブジェクト追加プログラム117は、ルールメモリデータ124に含まれる結論オブジェクト1004のそれぞれについて、ステップS201〜ステップS205の処理を繰り返して行う。まず、重みオブジェクト追加プログラム117は、ルールメモリデータ124に含まれる結論オブジェクト1004のうちの1つ(以下のステップS201〜ステップS205において「対象結論オブジェクト」という)を選択する。
重みオブジェクト追加プログラム117は、インパクテッドノード数算出プログラム113に、対象結論オブジェクト1004に対応する結論(以下「対象結論」という)を指定するパラメータを入力として、対象結論についてのインパクテッドノード数算出処理(図17参照)を実行させる(ステップS201)。このインパクテッドノード数算出処理により、対象結論のインパクテッドノード数が算出される。
次に、重みオブジェクト追加プログラム117は、対象結論オブジェクト1004の「Impact」1054に、ステップS201で算出された対象結論のインパクテッドノード数を設定する(ステップS202)。
その後、重みオブジェクト追加プログラム117は、対象結論オブジェクト1004に接続されている演算子オブジェクト1002のそれぞれについて、ステップS203〜ステップS205の処理を繰り返して行う。重みオブジェクト追加プログラム117は、対象結論オブジェクト1004に接続されている演算子オブジェクト1002のうちの1つ(以下のステップS203〜ステップS205において「対象演算子オブジェクト」という)を選択する。
重みオブジェクト追加プログラム117は、対象演算子オブジェクト1002に接続されている重みオブジェクト1003の中に、対象結論のインパクテッドノード数と同一のインパクテッドノード数が設定されている重みオブジェクト1003(以下「指標値同一重みオブジェクト」という)が存在するか否かを判定する(ステップS203)。この判定は、対象演算子オブジェクト1002に接続されている各重みオブジェクト1003について、その「Impact」1013の値が対象結論のインパクテッドノード数と一致するか否かを判定することにより行われる。なお、対象演算子オブジェクト1002に接続されている条件オブジェクト1001は、対象結論に関連付けられている条件の1つに対応する。従って、ここで判定の対象としている、対象演算子オブジェクト1002に接続されている重みオブジェクト1003とは、対象結論に関連付けられている条件の1つに関係する重み(条件が示すイベントに関係する重み)を管理する重みオブジェクト1003である。
指標値同一重みオブジェクト1003が存在しない場合(ステップS203:NO)、重みオブジェクト追加プログラム117は、重みオブジェクト1003を1つ生成し、その生成した重みオブジェクト1003の「Impact」1013に対象結論のインパクテッドノード数を設定する。また、重みオブジェクト追加プログラム117は、生成した重みオブジェクト1003と対象演算子オブジェクト1002とを接続する(ステップS204)。
その後、重みオブジェクト追加プログラム117は、ステップS204で生成した重みオブジェクト1003と対象結論オブジェクト1004とを接続する(ステップS205)。
一方、ステップS203において、指標値同一重みオブジェクト1003が存在すると判定された場合(ステップS203:YES)、重みオブジェクト追加プログラム117は、ステップS204の処理を行わずに、すなわち、重みオブジェクト1003を新たに生成することなく、ステップS205の処理を行う。この場合、重みオブジェクト追加プログラム117は、ステップS205において、指標値同一重みオブジェクト1003と対象結論オブジェクト1004とを接続する。これにより、同じ条件に関連付けられている、インパクテッドノード数が同一の複数の結論オブジェクト1004間で、重みオブジェクト1003を共有することができる。
重みオブジェクト追加プログラム117は、対象結論オブジェクト1004に接続されている演算子オブジェクト1002のそれぞれについてステップS203〜ステップS205の処理を終え、ルールメモリデータ124に含まれる結論オブジェクト1004のそれぞれについてステップS201〜ステップS205の処理を終えた後、重みオブジェクト追加処理を終了する。
このように、管理計算機100は、各結論のインパクテッドノード数を算出し、各条件について、その条件に関連付けられている結論のインパクテッドノード数ごとに重みオブジェクトを生成する。また、同じ条件に関連付けられている、インパクテッドノード数が同一の複数の結論オブジェクト1004間で、重みオブジェクト1003が共有される。これにより、重みオブジェクト1003に必要なデータ量を低減でき、ルールメモリデータ124のデータサイズが削減される。また、ルールメモリデータ124内のオブジェクト数及びオブジェクト間の接続の数が減ることから、重みの設定変更に要する時間が短縮される。なお、同じ条件オブジェクトに関連付けられている、インパクテッドノード数が同一の複数の結論オブジェクトについて、重みオブジェクト1003を共有せずに、それぞれ別々に重みオブジェクト1003を生成してもよい。
図17は、インパクテッドノード数算出処理のフローチャートである。
インパクテッドノード数算出処理は、重みオブジェクト追加プログラム117から入力された結論についてのインパクテッドノード数を算出する処理である。インパクテッドノード数算出処理は、図16におけるステップS201の処理に対応する。
インパクテッドノード数算出プログラム113は、重みオブジェクト追加プログラム117から、インパクテッドノード数の算出対象となる結論(図17の説明において「対象結論」という)を指定するパラメータを受信する(ステップS301)と、変数「ImpNum」に0を代入する(ステップS302)。
次に、インパクテッドノード数算出プログラム113は、ルールメモリデータ124から、対象結論に対応する結論オブジェクト1004(図17の説明において「対象結論オブジェクト」という)に接続されている条件オブジェクト1001のうちの1つ(以下のステップS303〜ステップS305において「対象条件オブジェクト」という)を取得し、対象条件オブジェクト1001の「Node」1011を参照し、対象条件オブジェクト1001が管理するイベントの発生元となるノード装置を特定する(ステップS303)。この特定されたノード装置が、対象結論が原因となる場合に影響範囲に属するノード装置、すなわち、影響を受けてイベントを発生するノード装置(インパクテッドノード)である。
その後、インパクテッドノード数算出プログラム113は、ステップS303で特定したノード装置がカウント済みのノード装置であるか否かを判定する(ステップS304)。
ステップS303で特定したノード装置がカウント済みのノード装置ではない場合(ステップS304:NO)、インパクテッドノード数算出プログラム113は、変数「ImpNum」の値に1を加え,特定したノード装置をカウント済みのノード装置とする情報を記憶資源102に記憶し(ステップS305)、ステップS306へ処理を進める。
一方、ステップS303で特定したノード装置がカウント済みのノード装置である場合(ステップS304:YES)、インパクテッドノード数算出プログラム113は、ステップS305の処理を行わずに、ステップS306へ処理を進める。すなわち、イベントの発生元となるノード装置が同一である場合は、インパクテッドノード数算出プログラム113は、それら同一のノード装置を重複してカウントしない。
その後、インパクテッドノード数算出プログラム113は、対象結論オブジェクト1004に接続されている全ての条件オブジェクト1001についてステップS303以降の処理を行ったか否か、すなわちインパクテッドノード数のカウントの対象としたかか否かを判定する(ステップS306)。
この結果、対象結論オブジェクト1004に接続されている条件オブジェクト1001の中に未だインパクテッドノード数のカウントの対象とされていない条件オブジェクト1001が存在する場合(ステップS306:NO)、インパクテッドノード数算出プログラム113は、そのカウントの対象とされていない条件オブジェクト1001を対象条件オブジェクト1001として選択し、再度ステップS303以降の処理を行う。
一方、対象結論オブジェクト1004に接続されている全ての条件オブジェクト1001についてインパクテッドノード数のカウントの対象とされた場合(ステップS306:YES)、インパクテッドノード数算出プログラム113は、変数「ImpNum」の値を対象結論のインパクテッドノード数として、重みオブジェクト追加プログラム117に対して出力し、インパクテッドノード数算出処理を終了する。
このように、管理計算機100は、ルールメモリデータ124に基づいて、対象結論オブジェクト1004に接続されている条件オブジェクト1001が管理するイベントの発生元となるノード装置の数をカウントすることにより、対象結論のインパクテッドノード数を算出する。なお、管理計算機100は、例えば、展開ルールに基づいて、対象結論に関連付けられている条件が示すイベントの発生元となるノード装置の数をカウントすることにより、対象結論のインパクテッドノード数を算出してもよい。
図18は、イベント検知処理のフローチャートである。
イベント検知処理は、管理計算機100が監視対象装置からイベントメッセージ1100を受信した際に行う処理である。
まず、イベント検知プログラム111は、監視対象装置(具体的には、監視対象装置内の監視エージェント402、502)からイベントメッセージ1100を受信する(ステップS401)。
次に、イベント検知プログラム111は、受信したイベントメッセージ1100(以下「受信メッセージ」という)が示すイベント(以下「検知イベント」という)に関するイベントエントリ1250を作成する。検知イベントに関するイベントエントリ1250には、受信メッセージ1100に含まれる、検知イベントの発生元のノード装置の種別及び名称、並びに検知イベントの種別と、受信メッセージ1100の受信時間とが格納される。そして、イベント検知プログラム111は、その作成したイベントエントリ1250をイベント管理テーブル125に追加する(ステップS402)。
その後、イベント検知プログラム111は、検知イベントを管理する条件オブジェクト1001がルールメモリデータ124に存在するか否かを判定する(ステップS403)。具体的には、イベント検知プログラム111は、検知イベントの種別及びその発生元のノード装置の名称をキーにルールメモリデータ124を検索し、「Event」1021及び「Node」1011に設定されているイベントの種別及び発生元のノード装置の名称がキーと一致する条件オブジェクト1001(検知イベントを管理する条件オブジェクト1001)が存在するか否かを判定する。
検知イベントを管理する条件オブジェクト1001がルールメモリデータ124に存在しない場合(ステップS403:NO)、イベント検知プログラム111は、イベント検知処理を終了する。
一方、検知イベントを管理する条件オブジェクト1001がルールメモリデータ124に存在する場合(ステップS403:YES)、イベント検知プログラム111は、検知イベントを管理する条件オブジェクト1001の「Received」1031に受信メッセージ1100の受信時間を設定する(ステップS404)。
そして、イベント検知プログラム111は、検知イベントを管理する条件オブジェクト1001に接続されている各重みオブジェクト1003の「Weight」1023に重みの値「1.0」を設定する(ステップS405)。
その後、イベント検知プログラム111は、検知イベントを管理する条件オブジェクト1001を指定するパラメータを入力として、確信度計算プログラム114に確信度計算処理を実行させる(ステップS406)。この確信度計算処理により、検知イベントを示す条件に関連付けられている各結論について、確信度が計算され、その結果が返却される。
その後、イベント検知プログラム111は、検知イベントを管理する条件オブジェクト1001を指定するパラメータを入力として、イベント消去タスク生成プログラム116にイベント消去タスク生成処理を実行させる(ステップS407)。このイベント消去タスク生成処理により、検知イベントを管理する条件オブジェクト1001に接続されている各重みオブジェクト1003について、その設定されている重みを解析時間幅経過後にリセットするためのイベント消去タスクが生成される。その後、イベント検知プログラム111は、イベント検知処理を終了する。
このように、管理計算機100は、イベントメッセージ1100を受信した場合、検知イベントに関するイベントエントリ1250をイベント情報テーブル125に追加し、検知イベントに関係する重みを有効に設定(具体的には、重みの値を「1.0」に設定)し、ルールメモリデータ124に基づいて確信度を計算し、検知イベントに関係する重みをリセットするためのイベント消去タスクを生成する。
図19は、確信度計算処理のフローチャートである。
確信度計算処理は、ルールメモリデータ124に基づいて、入力された条件オブジェクト1001に接続されている各結論オブジェクト1004について、その結論の確信度を計算する処理である。確信度計算処理は、図18におけるステップS406の処理又は図21におけるステップS708の処理に対応する。
確信度計算プログラム114は、イベント検知プログラム111、又は、イベント消去プログラム115により入力された処理の対象となる条件オブジェクト1001(図19の説明において「対象条件オブジェクト」という)を指定するパラメータを受信する(ステップS501)。
まず、確信度計算プログラム114は、ルールメモリデータ124から、対象条件オブジェクト1001に接続されている演算子オブジェクト1002のうちの1つ(以下のステップS502〜ステップS509において「対象演算子オブジェクト」という)を取得する(ステップS502)。
次に、確信度計算プログラム114は、ルールメモリデータ124から、対象演算子オブジェクト1002に接続されている重みオブジェクト1003のうちの1つ(以下のステップS503〜ステップS508において「対象重みオブジェクト」という)を取得する(ステップS503)。
次に、確信度計算プログラム114は、ルールメモリデータ124から、対象重みオブジェクト1003に接続されている結論オブジェクト1004のうちの1つ(以下のステップS504〜ステップS507において「対象結論オブジェクト」という)を取得する(ステップS504)。なお、以下のステップS504〜ステップS507において、対象結論オブジェクト1004に対応する結論を「対象結論」という。
その後、確信度計算プログラム114は、ルールメモリデータ124から、対象結論オブジェクト1004に接続されている全ての重みオブジェクト1003を取得する(ステップS505)。なお、ここで取得される重みオブジェクト1003は、いずれも、対象結論に関連付けられている条件に対応する条件オブジェクト1001に演算識別オブジェクト1002を介して接続されており、対象結論に関連付けられている条件に関係する重みを管理する。つまり、このステップS505では、対象結論に関連付けられている各条件の、対象結論のインパクテッドノード数に関係する重みを管理する重みオブジェクト1003が、全て取得される。
そして、確信度計算プログラム114は、ステップS505で取得した重みオブジェクト1003のそれぞれに設定されている重みの値、すなわち、「Weight」1023に設定されている値を合計する(ステップS506)。
その後、確信度計算プログラム114は、「重みの合計」を「条件オブジェクトの数」で除算することにより、対象結論の確信度を計算する。ここで、「重みの合計」は、ステップS505で計算された重みの合計値であり、「条件オブジェクトの数」は、対象結論オブジェクト1004に接続されている条件オブジェクト1001の数である。なお、重みは、イベントの検知が有効であるか無効であるかを示しており、その値を「1.0」又は「0.0」の2値としている場合には、「重みの合計」は、イベントの検知が有効となっているイベント(すなわち、イベントが検知されてから解析時間幅を経過していないイベント)の数となる。つまり、計算される確信度は、対象結論に関連付けられている条件が示すイベントのうちの、その検知が有効となっているイベントの割合を示している。そして、確信度計算プログラム114は、計算した確信度を対象結論オブジェクト1004のフィールド「MR」1044に設定する(ステップS507)。
その後、確信度計算プログラム114は、対象重みオブジェクト1003に接続されている全ての結論オブジェクト1004についてステップS504〜ステップS507の処理が行われたか否かを判定する(ステップS508)。
ステップS504〜ステップS507の処理が未だ行われていない、対象重みオブジェクト1003に接続されている結論オブジェクト1004が存在する場合(ステップS508:NO)、確信度計算プログラム114は、未処理の結論オブジェクト1004に対してステップS504〜ステップS507の処理を行う。
一方、対象重みオブジェクト1003に接続されている全ての結論オブジェクト1004についてステップS504〜ステップS507の処理が行われている場合(ステップS508:YES)、確信度計算プログラム114は、対象演算子オブジェクト1002に接続されている全ての重みオブジェクト1003についてステップS503〜ステップS508の処理が行われたか否かを判定する(ステップS509)。
ステップS503〜ステップS508の処理が未だ行われていない、対象演算子オブジェクト1002に接続されている重みオブジェクト1003が存在する場合(ステップS509:NO)、確信度計算プログラム114は、未処理の重みオブジェクト1003に対してステップS503〜ステップS508の処理を行う。
一方、対象演算子オブジェクト1002に接続されている全ての重みオブジェクト1003についてステップS503〜ステップS508の処理が行われている場合(ステップS509:YES)、確信度計算プログラム114は、対象条件オブジェクト1001に接続されている全ての演算子オブジェクト1002についてステップS502〜ステップS509の処理が行われたか否かを判定する(ステップS510)。
ステップS502〜ステップS509の処理が未だ行われていない、対象条件オブジェクト1001に接続されている演算子オブジェクト1002が存在する場合(ステップS510:NO)、確信度計算プログラム114は、未処理の演算子オブジェクト1002に対して、ステップS502〜ステップS509の処理を行う。
一方、対象条件オブジェクト1001に接続されている全ての演算子オブジェクト1002についてステップS502〜ステップS509の処理が行われている場合(ステップS510:YES)、確信度計算プログラム114は、確信度計算処理を終了する。
このように、管理計算機100は、ルールメモリデータ124に基づいて、入力された条件オブジェクト1001に対応する条件に関連付けられている各結論の確信度を計算する。各結論の確信度を計算する際は、当該結論に関連付けられている各条件の、当該結論のインパクテッドノード数に関係する重みが参照され、当該結論に関連付けられている条件が示すイベントのうちのその検知が有効となっているイベントの数が求められる。また、管理計算機100は、計算した確信度に基づいて、根本原因となる可能性のある結論、すなわち根本原因の候補(以下「原因候補」という)を決定する。例えば、管理計算機100は、ルールメモリデータ124から、確信度が所定の値を超えている結論オブジェクト1004を検出し、その検出した結論オブジェクト1004に対応する結論を原因候補と決定する。また、例えば、管理計算機100は、ルールメモリデータ124から、確信度が高い上位数個の結論オブジェクト1004を抽出し、その抽出した結論オブジェクト1004に対応する結論を原因候補と決定する。そして、管理計算機100は、原因候補を示す原因解析の結果情報(第1、第2の解析結果表示画面等:図23、24)を、表示計算機200に接続されたディスプレイ206に表示する。なお、確信度の計算は、条件が示すイベントを多く検知すればより高い確信が得られたことを意味する値を出力する計算式であれば他の計算式であってもよい。
図20は、イベント消去タスク生成処理のフローチャートである。
イベント消去タスク生成処理は、ルールメモリデータ124に基づいて、イベント検知プログラム111から入力された条件オブジェクト1001に接続されている各重みオブジェクト1003について、イベント消去タスクを生成する処理である。イベント消去タスク生成処理は、図18におけるステップS407の処理に対応する。
イベント消去タスク生成プログラム116は、イベント検知プログラム111から処理の対象となる条件オブジェクト1001(図20の説明において「対象条件オブジェクト」という)を指定するパラメータを受信すると(ステップS601)、ルールメモリデータ124から、対象条件オブジェクト1001に接続されている演算子オブジェクト1002のうちの1つ(以下のステップS602〜ステップS608において「対象演算子オブジェクト」という)を取得する(ステップS602)。
次に、イベント消去タスク生成プログラム116は、ルールメモリデータ124から、対象演算子オブジェクト1002に接続されている重みオブジェクト1003のうちの1つ(以下のステップS603〜ステップS607において「対象重みオブジェクト」という)を取得する(ステップS603)。
その後、イベント消去タスク生成プログラム116は、対象重みオブジェクト1003を処理対象とするイベント消去タスク(以下、図20の説明において「対象イベント消去タスク」という)を生成し、その対象イベント消去タスクに関するイベント消去タスクエントリ1260(以下、図20の説明において「対象イベント消去タスクエントリ」という)を作成する(生成済みであれば生成は省略してもよい)。そして、イベント消去タスク生成プログラム116は、対象イベント消去タスクエントリ1260のノード名1262及びイベントタイプ1263に、受信した条件オブジェクト1001の「Node」1011及び「Event」1021に設定されているノード装置の名称及びイベントの種別を格納する。また、イベント消去タスク生成プログラム116は、対象イベント消去タスクエントリ1260の受信時間1265を、受信された条件オブジェクト1001の「Received」1031に設定されている受信時間に設定又は更新する(ステップS604)。
また、イベント消去タスク生成プログラム116は、対象イベント消去タスクエントリ1260のインパクテッドノード数1264に、対象重みオブジェクト1003の「Impact」1013に設定されているインパクテッドノード数を格納する(ステップS605)。
また、イベント消去タスク生成プログラム116は、対象重みオブジェクト1003に設定されているインパクテッドノード数に基づいて、対象イベント消去タスクに関する解析時間幅を計算する。そして、イベント消去タスク生成プログラム116は、計算した対象イベント消去タスクに関する解析時間幅と、受信した条件オブジェクト1001が管理するイベントの受信時間とに基づいて、対象イベント消去タスクの消去処理開始時間を決定する。そして、イベント消去タスク生成プログラム116は、決定した消去処理開始時間を対象イベント消去タスクエントリ1260の開始時間1261に格納する(ステップS606)。
その後、イベント消去タスク生成プログラム116は、対象イベント消去タスクエントリ1260を、イベント消去タスクテーブル126に登録する(ステップS607)。
その後、イベント消去タスク生成プログラム116は、対象演算子オブジェクト1002に接続されている全ての重みオブジェクト1003についてステップS603〜ステップS607の処理を行ったか否かを判定する(ステップS608)。
ステップS603〜ステップS607の処理が未だ行われていない、対象演算子オブジェクト1002に接続されている重みオブジェクト1003が存在する場合(ステップS608:NO)、イベント消去タスク生成プログラム116は、未処理の重みオブジェクト1003に対して、ステップS603〜ステップS607の処理を行う。
一方、対象演算子オブジェクト1002に接続されている全ての重みオブジェクト1003についてステップS603〜ステップS607の処理を行っている場合(ステップS608:YES)、イベント消去タスク生成プログラム116は、対象条件オブジェクト1001に接続されている全ての演算子オブジェクト1002についてステップS602〜ステップS608の処理を行ったか否かを判定する(ステップS609)。
ステップS602〜ステップS608の処理が未だ行われていない、対象条件オブジェクト1001に接続されている演算子オブジェクト1002が存在する場合(ステップS609:NO)、イベント消去タスク生成プログラム116は、未処理の演算子オブジェクト1002に対してステップS602〜ステップS608の処理を行う。
一方、対象条件オブジェクト1001に接続されている全ての演算子オブジェクト1002についてステップS602〜ステップS608の処理を行っている場合(ステップS609:YES)、イベント消去タスク生成プログラム116は、イベント消去タスク生成処理を終了する。
図21は、イベント消去処理のフローチャートである。
イベント消去処理は、検知されてから解析時間幅が経過したイベントに関係する重みをリセットするイベント消去タスクの実行及び管理をする処理である。イベント消去処理は、くり返し(例えば、所定の時間間隔毎に)実行される。この時間間隔は、解析時間幅に比して、比較的小さい時間間隔であればよい。まず、イベント消去プログラム115は、イベント消去タスクテーブル126から開始時間が最も早い一つのイベント消去タスクエントリ1260を選択し、取得する(ステップS701)。
次いで、イベント消去プログラム115は、取得したイベント消去タスクエントリ1260の開始時間が現在時間と同一であるか、又は現在時間より早いか否かを判定する(ステップS702)。この結果、取得したイベント消去タスクエントリ1260の開始時間が現在時間と同一でなく、且つ現在時間より早くない場合(ステップS702:NO)、実行するイベント消去タスクが存在しないことを意味しているので、イベント消去プログラム115は、イベント消去処理を終了する。
一方、取得したイベント消去タスクエントリ1260の開始時間が現在時間と同一であるか、又は現在時間より早い場合(ステップS702:YES)、イベント消去プログラム115は、当該イベント消去タスクエントリ(以下、図21の説明において「対象イベント消去タスクエントリ」という。)に対応するイベントタスク(以下、図21の説明において「対象イベント消去タスク」という)の実行を開始する。すなわち、イベント消去プログラム115は、対象イベント消去タスクエントリ1260のノード名1262及びイベントタイプ1263から、消去処理対象イベントの発生元のノード装置の名称及び消去処理対象イベントの種別を取得する(ステップS703)。なお、消去処理対象イベントとは、対象イベント消去タスクの処理対象の重みオブジェクト1003が管理する重みに関係するイベントのことである。
次に、イベント消去プログラム115は、ルールメモリデータ124から、消去処理対象イベントを管理する条件オブジェクト1001を取得する(ステップS704)。具体的には、イベント消去プログラム115は、ステップS703で取得した、消去処理対象イベントの発生元のノード装置の名称及び消去処理対象イベントの種別をキーにルールメモリデータ124を検索し、「Node」1011及び「Event」1021に設定されている発生元のノード装置の名称及びイベントの種別がキーと一致する条件オブジェクト1001(消去処理対象イベントを管理する条件オブジェクト1001)を取得する。
次に、イベント消去プログラム115は、ステップS704で取得した条件オブジェクト1001に接続されている、対象イベント消去タスクエントリ1260のインパクテッドノード数1264に格納されているインパクテッドノード数と同じ値のインパクテッドノード数が設定されている重みオブジェクト1003を取得する(ステップS705)。なお、ここで取得された重みオブジェクト1003が、対象イベント消去タスクの処理対象の重みオブジェクト1003である。
その後、イベント消去プログラム115は、ステップS705で取得した重みオブジェクト1003の「Weight」1023に重みの値「0.0」を設定する(ステップS706)。
そして、イベント消去プログラム115は、イベント消去タスクテーブル126から対象イベント消去タスクエントリ1260を削除する(ステップS707)。
その後、イベント消去プログラム115は、ステップS702で取得した、消去処理対象イベントを管理する条件オブジェクト1001を指定するパラメータを入力として、確信度計算プログラム114に確信度計算処理(図19)を実行させる(ステップS708)。この確信度計算処理により、消去処理対象イベントを示す条件に関連付けられている各結論について、確信度が再計算される。その後、イベント消去プログラム115は、イベント消去処理を終了する。
このように、管理計算機100は、現在時間が消去処理開始時間に達したイベント消去タスクを実行することで、検知されてから解析時間幅が経過したイベントに関係する重みを無効に設定(具体的には、重みの値を「0.0」に設定)する。その後、管理計算機100は、確信度計算処理を行い、無効に設定された重みに関係する条件に関連付けられている各結論の確信度を再計算する。
また、ルールメモリデータ124内の重みオブジェクト1003に着目すると、まず、重みオブジェクト1003は、各条件について、その条件に関連付けられている1以上の結論のインパクテッドノード数ごとに生成される。そして、各重みオブジェクト1003が管理する重みは、その重みに関係するイベントが検知された時点で有効に設定される。一方、イベント消去タスク情報1260によって、重みが有効に設定された重みオブジェクト1003ごとに、その重みを無効に設定する時間(消去処理開始時間)が管理される。言い換えれば、イベント消去タスク情報1260によって、重みが有効に設定された重みオブジェクト1003ごとに、その重みに関係するイベントの解析時間幅が管理される。ここで、解析時間幅は、インパクテッドノード数に基づいて、例えばインパクテッドノード数が大きいほど解析時間幅がより大きくなるように決定される。そして、各重みオブジェクト1003が管理する重みは、その重みに関係するイベントが検知されてから、イベント消去タスク情報1260によって管理される解析時間幅が経過した時点で無効に設定される。
このように、重みオブジェクト1003ごとに第2の検知データ(本実施例では、重み)を管理することで、影響範囲を示す指標値(本実施例では、インパクテッドノード数)の異なるイベントごとに、解析時間幅を異ならせることが可能となる。これにより、同じイベントであっても、影響範囲を示す指標値が異なる結論に対しては、それぞれ異なる解析時間幅を用いて確信度の計算を行うことができるようになる。そして、解析時間幅を、影響範囲を示す指標値が大きいほどより大きい値にすることで、同じイベントであっても、影響範囲の大きい結論に対しては、より大きい解析時間幅を用いて確信度の計算を行うことができるようになる。従って、例えば、情報処理システムの規模が大きい場合であっても、解析時間幅を一律に大きくする必要はなくなり、イベントの発生時期の差が比較的大きくなると考えられる影響範囲の大きい結論に対しては解析時間幅を或る程度大きくとり、影響範囲の小さい結論に対しては解析時間幅を小さくとる、ということが可能となる。これにより、原因解析時におけるイベントの検知の取りこぼしを防ぐとともにノイズが含まれる可能性を低下させることができ、解析の精度を向上させることが可能となる。
ここで、上記実施例では、イベント消去タスクテーブル126の開始時間を、現在時間と比較することにより、対応するイベント消去タスク(ステップS703〜S708)を実行するようにしていたが、例えば、予めイベント消去タスクを、対応する開始時間に起動するように設定しておくことにより、開始時間にイベント消去タスクを実行するようにしてもよい。
図22は、管理計算機が行う各処理の関係を示す図である。
管理計算機100は、例えば情報処理システムのシステム構成の変更等を契機に、ルール展開処理2215(図15)を実行する。ルール展開処理2215により、重みオブジェクト1003を含まない中間的なルールメモリデータ124が生成される。
また、管理計算機100は、ルール展開処理2215において、重みオブジェクト追加処理2216(図16)を実行する。重みオブジェクト追加処理2216により、重みオブジェクト1003を含む最終的なルールメモリデータ124が生成される。
また、管理計算機100は、重みオブジェクト追加処理2216において、インパクテッドノード数算出処理2217(図17)を実行する。インパクテッドノード数算出処理2217により、ルールメモリデータ124内の各結論オブジェクト1004に設定されるインパクテッドノード数が算出される。
また、管理計算機100は、イベントの検知を契機に、イベント検知処理2218(図18)を実行する。イベント検知処理2218により、検知イベントに関するイベントエントリ1250が作成され、検知イベントに関係する重みが有効に設定される。
また、管理計算機100は、イベント検知処理2218において、確信度計算処理2219(図19)及びイベント消去タスク生成処理2220(図20)を実行する。確信度計算処理2219により、検知イベントを示す条件に関連付けられている各結論の確信度が計算される。また、イベント消去タスク生成処理2220により、検知イベントに関係する重みをリセットするためのイベント消去タスクが生成される。
また、管理計算機100は、イベント消去処理2221(図21)を実行する。イベント消去処理により、検知されてから解析時間幅が経過したイベントに関係する重みが無効に設定される。その後、管理計算機100は、確信度計算処理2219(図19)を行い、無効に設定された重みに関係する条件に関連付けられている各結論の確信度を再計算する。
また、管理計算機100は、例えば管理者からの表示要求の受信等を契機に、表示処理2222を実行する。管理計算機100は、表示処理2222において、ルールメモリデータ124内の各結論オブジェクト1004が管理する確信度に基づいて、原因候補を決定する。例えば、管理計算機100は、確信度が所定数以上の原因候補を決定するようにしてもよく、また、確信度が上位所定数の原因候補を決定するようにしてもよい。そして、管理計算機100は、原因候補を示す原因解析の結果情報(第1、第2の解析結果表示画面等)を、表示計算機200に接続されたディスプレイ206に表示する。
図23は、第1の解析結果表示画面の一例を示す図である。
第1の解析結果表示画面には、複数の原因候補2300が表示される。同図では、10個の原因候補#1〜#10が表示されている。また、第1の解析結果表示画面には、原因候補2300ごとに、その原因候補2300のインパクテッドノード数2301と、その原因候補2300の確信度2302と、その原因候補2300の解析時間幅2303とが表示される。
原因候補2300は、インパクテッドノード数2301及び確信度2302のいずれでもソートして表示することができる。同図の例では、原因候補2300は、確信度2302で降順にソートされた中で、さらにインパクテッドノード数2301で降順にソートされている。具体的には、原因候補2300は、その確信度2302が大きいほうから順に、また、確信度2302が同一の原因候補2300については、そのインパクテッドノード数2301が大きいほうから順に、画面の上から下方向に並べて表示されている。
このように、原因候補2300を、インパクテッドノード数2301及び確信度2302のいずれでもソートして表示できるようにすることで、影響範囲の大きい原因候補2300に注意を向けたり、確信度の高い原因候補2300に注意を向けたりすることができるようになる。例えば、原因候補2300を、インパクテッドノード数2301で降順にソートし、さらにインパクテッドノード数2301で降順にソートするようにすることもできる。従って、管理者が、確信度2302はそれほど高くないものの本来注目されるべき重要な原因候補2300(例えば、影響範囲の大きい原因候補2300)を見落とさないようにすることができる。
なお、ソート列をすばやく切り替えられるために、管理計算機100は、例えば、インパクテッドノード数2301でソートした上位10件の原因候補2300に関する情報と、確信度2302でソートした上位10件の原因候補2300に関する情報とを含む情報を、表示計算機200の表示用結果表示プログラム211に送信することができる。
図24は、第2の解析結果表示画面の一例を示す図である。
第2の解析結果表示画面は、1つの原因候補2300に関する、確信度2302と解析時間幅2303との対応関係を表す画面である。例えば、第1の解析結果表示画面において、所望の原因候補2300を指定すると、その指定された原因候補2300(以下「指定原因候補」という)に関する第2の解析結果表示画面が表示される。
同図では、確信度2302と解析時間幅2303との対応関係を、グラフとして表示している。X軸(横軸)2402は、時間軸である。X軸2402の右端が現在時間(now)を示し、左端に向かうほどより過去に遡る。Y軸(縦軸)2401は、指定原因候補2300の確信度2302を表す。プロット2440(2440a、2440b等)は、指定原因候補2300に関連付けられている条件が示すイベント、すなわち、指定原因候補2300が原因となる場合にその影響を受けて発生するイベントのうちの検知されたイベントを示している。プロット2440のX座標は、そのイベントが検知された時間を示す。プロット2440のY座標は、そのイベントの検知が有効であった場合の指定原因候補2300の確信度2302を示す。同図は、指定原因候補2300に関して、5つのイベント(プロット2440a、2440b、2440c、2440d、2440eのそれぞれが示すイベント)が検知されており、それら全てのイベントの検知が有効であった場合に確信度2302が100%になることを示している。なお、このことから、指定原因候補2300が原因となる場合にその影響を受けて発生するイベントは、5つ(プロット2440a、2440b、2440c、2440d、2440eのそれぞれが示すイベント)であることもわかる。
破線で囲まれた矩形領域2410の横幅は、時間幅2420に対応し、この時間幅2420は、現在採用されている指定原因候補の解析時間幅2303を示している。すなわち、矩形領域2410は、現在、その領域内にあるイベント(プロット2440c、2440d、2440eが示すイベント)の検知が有効となっており、その領域外にあるイベント(プロット2440a、2440bが示すイベント)の検知が無効となっていることを示している。また、各プロット2440を繋いだ線2460と矩形領域2410との交点2430のY座標は、指定原因候補2300の現在の確信度2302を示している。同図においては、5つのイベントのうちの3つのイベント(プロット2440c、2440d、2440eが示すイベント)の検知が有効となっているため、指定原因候補2300の現在の確信度2302は、60(=3/5×100)%である。管理者は、このグラフを参照することにより、解析時間幅2303をさらに時間幅2450だけ大きくすると、指定原因候補2300の確信度2302が100%になることを知り得る。
このように、確信度2302と解析時間幅2303との対応関係を表示することにより、管理者は、解析時間幅2303を変化させた場合に確信度2302がどのように変化するかを知ることができる。例えば、管理者は、解析時間幅2303を少しだけ大きくすることで確信度2302が100%になるのであれば、指定原因候補2300が原因である可能性は高いと判断することができる。逆に、管理者は、解析時間幅2303を大きくしても確信度2302が100%に近付かないのであれば、指定原因候補2300が原因である可能性は低いと判断することができる。
また、線2460は、指定原因候補2300が原因となる場合にその影響を受けて発生するイベントのうちの検知されたイベントを、その検知された時間が新しいものから順に下から積み上げ、階段状に線で繋ぐことで作成される。本実施例では、イベントの段階の幅を全てのイベントについて同一にしているが、例えば各イベントの影響度等に応じてイベントごとにその段階の幅を変えてもよい。また、例えば、イベントに関係する重みにイベントの検知の有効の度合いが考慮されている場合に、その重みの値の変化に応じて確信度2302が徐々に変化するように、線2460を作成してもよい。また、確信度2302と解析時間幅2303との対応関係として、過去時点を表すX軸上の或る時点から所定の基準時点(現時点とは異なる)との間に検知したイベントに基づいて、確信度が計算されて、その値が表示されてもよい。
以上によれば、以下のこと、すなわち、
複数の監視対象オブジェクトのいずれかで発生したイベントをルールを用いて原因解析を行い、記憶デバイスを有する監視システムを構成するコンピュータに実行させる監視プログラムであって、
前記ルールは、所定の結論を原因と決定するために必要な条件を含み、
前記監視プログラムは、
前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行い、原因となる可能性のある複数の結論を決定し、
前記決定した複数の結論を、当該結論が原因となる場合の影響範囲を示す指標値、に従ってソートして表示する、
が説明された。なお、この場合は、重み付けオブジェクトや演算子オブジェクトは、省略されてもよい。
複数の監視対象オブジェクトのいずれかで発生したイベントをルールを用いて原因解析を行い、記憶デバイスを有する監視システムを構成するコンピュータに実行させる監視プログラムであって、
前記ルールは、所定の結論を原因と決定するために必要な条件を含み、
前記監視プログラムは、
前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行い、原因となる可能性のある複数の結論を決定し、
前記決定した複数の結論を、当該結論が原因となる場合の影響範囲を示す指標値、に従ってソートして表示する、
が説明された。なお、この場合は、重み付けオブジェクトや演算子オブジェクトは、省略されてもよい。
なお、以下のこと、すなわち、
前記ルールは、イベントの種別と当該イベントの発生元となる監視対象オブジェクトの種別との組み合わせによりイベントを示した1以上の第1の条件と、前記1以上の第1の条件を満たす場合に原因となる第1の結論との関連付けを示す汎用ルールを含み、
前記記憶デバイスは、前記複数の監視対象オブジェクト間におけるデータ通信の有無を示す関係情報をさらに記憶しており、
前記監視プログラムは、
前記汎用ルール及び前記関係情報に基づいて、イベントの種別と当該イベントの発生元となる監視対象オブジェクトを特定する情報との組み合わせによりイベントを示した1以上の第2の条件と、前記1以上の第2の条件を満たす場合に原因となる第2の結論との関連付けを複数含む展開情報を生成し、
前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件に基づいて当該各第2の結論の前記指標値を決定し、
前記原因解析において、原因となる可能性のある複数の第2の結論を決定し、
前記決定した複数の第2の結論を、各第2の結論それぞれの前記指標値に従ってソートして表示してもよい、
が説明された。
前記ルールは、イベントの種別と当該イベントの発生元となる監視対象オブジェクトの種別との組み合わせによりイベントを示した1以上の第1の条件と、前記1以上の第1の条件を満たす場合に原因となる第1の結論との関連付けを示す汎用ルールを含み、
前記記憶デバイスは、前記複数の監視対象オブジェクト間におけるデータ通信の有無を示す関係情報をさらに記憶しており、
前記監視プログラムは、
前記汎用ルール及び前記関係情報に基づいて、イベントの種別と当該イベントの発生元となる監視対象オブジェクトを特定する情報との組み合わせによりイベントを示した1以上の第2の条件と、前記1以上の第2の条件を満たす場合に原因となる第2の結論との関連付けを複数含む展開情報を生成し、
前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件に基づいて当該各第2の結論の前記指標値を決定し、
前記原因解析において、原因となる可能性のある複数の第2の結論を決定し、
前記決定した複数の第2の結論を、各第2の結論それぞれの前記指標値に従ってソートして表示してもよい、
が説明された。
なお、以下のこと、すなわち、
前記記憶デバイスは、前記展開情報の各第2の条件ごとに、当該第2の条件が示すイベントの検知の有効又は無効を示す検知データをさらに記憶しており、
前記監視プログラムは、
イベントを検知した場合、当該検知したイベントである検知イベントの前記検知データを有効に設定し、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の前記指標値に基づいて前記検知イベントの解析時間幅を決定し、
前記検知イベントを検知してから前記決定した解析時間幅が経過した場合、前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの前記検知データに基づいて、当該各第2の結論が原因であることの確からしさを示す確信度を決定し、前記決定した確信度に基づいて、原因となる可能性のある複数の第2の結論を決定してもよい、
が説明された。
前記記憶デバイスは、前記展開情報の各第2の条件ごとに、当該第2の条件が示すイベントの検知の有効又は無効を示す検知データをさらに記憶しており、
前記監視プログラムは、
イベントを検知した場合、当該検知したイベントである検知イベントの前記検知データを有効に設定し、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の前記指標値に基づいて前記検知イベントの解析時間幅を決定し、
前記検知イベントを検知してから前記決定した解析時間幅が経過した場合、前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの前記検知データに基づいて、当該各第2の結論が原因であることの確からしさを示す確信度を決定し、前記決定した確信度に基づいて、原因となる可能性のある複数の第2の結論を決定してもよい、
が説明された。
なお、以下のこと、すなわち、
前記原因解析において決定した第2の結論ごとに、前記監視プログラムは、当該第2の結論の確信度と解析時間幅との対応関係を表す情報を表示してもよい、
ことが説明された。
前記原因解析において決定した第2の結論ごとに、前記監視プログラムは、当該第2の結論の確信度と解析時間幅との対応関係を表す情報を表示してもよい、
ことが説明された。
また、以下のこと、すなわち、
前記監視プログラムは、前記解析時間幅を変化させたと仮定した場合の変化後の確信度を特定し、その変化後の確信度を表示してもよい、ことが説明された。
前記監視プログラムは、前記解析時間幅を変化させたと仮定した場合の変化後の確信度を特定し、その変化後の確信度を表示してもよい、ことが説明された。
また、以下のこと、すなわち、
或るイベントの有効期限は指標値ごとにあってもよい、
ことが説明された。
或るイベントの有効期限は指標値ごとにあってもよい、
ことが説明された。
なお、以下のこと、すなわち、
前記記憶デバイスは、前記展開情報の各第2の条件について、関連付けられている1以上の第2の結論の前記指標値ごとに、前記検知データを記憶しており、
前記監視プログラムは、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の中に前記指標値がそれぞれ異なる複数の第2の結論が存在する場合、前記異なる指標値ごとに前記検知イベントの解析時間幅を決定し、前記検知イベントを検知してから前記決定した複数の解析時間幅のうちのいずれかが経過した場合、前記経過した解析時間幅に対応する前記指標値に関する前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの、当該第2の結論の前記指標値に関する前記検知データに基づいて、当該第2の結論の確信度を計算してもよい、
が説明された。
前記記憶デバイスは、前記展開情報の各第2の条件について、関連付けられている1以上の第2の結論の前記指標値ごとに、前記検知データを記憶しており、
前記監視プログラムは、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の中に前記指標値がそれぞれ異なる複数の第2の結論が存在する場合、前記異なる指標値ごとに前記検知イベントの解析時間幅を決定し、前記検知イベントを検知してから前記決定した複数の解析時間幅のうちのいずれかが経過した場合、前記経過した解析時間幅に対応する前記指標値に関する前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの、当該第2の結論の前記指標値に関する前記検知データに基づいて、当該第2の結論の確信度を計算してもよい、
が説明された。
なお、以下のこと、すなわち、
前記監視プログラムが、前記第2の条件が示すイベントを管理する複数の条件オブジェクトと、前記第2の結論に対応し当該第2の結論の前記指標値及び確信度を管理する複数の結論オブジェクトと、前記条件オブジェクト及び前記結論オブジェクトにそれぞれ接続され、当該接続されている条件オブジェクトが管理するイベントの、当該接続されている結論オブジェクトが管理する前記指標値に関する前記検知データを管理する複数の重みオブジェクトと、を有するルールメモリデータを、前記展開情報として生成してもよい、
が説明された。
前記監視プログラムが、前記第2の条件が示すイベントを管理する複数の条件オブジェクトと、前記第2の結論に対応し当該第2の結論の前記指標値及び確信度を管理する複数の結論オブジェクトと、前記条件オブジェクト及び前記結論オブジェクトにそれぞれ接続され、当該接続されている条件オブジェクトが管理するイベントの、当該接続されている結論オブジェクトが管理する前記指標値に関する前記検知データを管理する複数の重みオブジェクトと、を有するルールメモリデータを、前記展開情報として生成してもよい、
が説明された。
なお、以下のこと、すなわち、
前記記憶デバイスは、前記検知データが有効に設定された重みオブジェクトと、当該重みオブジェクトに接続された条件オブジェクトが管理するイベントの、当該重みオブジェクトに接続された結論オブジェクトが管理する前記指標値に関して決定された前記解析時間幅との対応関係を示す解析時間幅情報を記憶しており、
前記監視プログラムは、前記解析時間幅情報に含まれる重みオブジェクトに接続されている条件オブジェクトが管理するイベントを検知してから、当該重みオブジェクトに対応する解析時間幅が経過した場合、当該重みオブジェクトが管理する前記検知データを無効に設定してもよいこと、
が説明された。
前記記憶デバイスは、前記検知データが有効に設定された重みオブジェクトと、当該重みオブジェクトに接続された条件オブジェクトが管理するイベントの、当該重みオブジェクトに接続された結論オブジェクトが管理する前記指標値に関して決定された前記解析時間幅との対応関係を示す解析時間幅情報を記憶しており、
前記監視プログラムは、前記解析時間幅情報に含まれる重みオブジェクトに接続されている条件オブジェクトが管理するイベントを検知してから、当該重みオブジェクトに対応する解析時間幅が経過した場合、当該重みオブジェクトが管理する前記検知データを無効に設定してもよいこと、
が説明された。
なお、以下のこと、すなわち、
前記監視プログラムは、前記展開情報の各第2の結論について、当該第2の結論に対応する1以上の第2の条件が示すイベントの発生元となる監視対象オブジェクトのうちの監視対象装置の数を計算し、前記計算した数を当該第2の結論の前記指標値としてもよい、
が説明された。
前記監視プログラムは、前記展開情報の各第2の結論について、当該第2の結論に対応する1以上の第2の条件が示すイベントの発生元となる監視対象オブジェクトのうちの監視対象装置の数を計算し、前記計算した数を当該第2の結論の前記指標値としてもよい、
が説明された。
また、別な視点に於いて、監視システムは、ルール(所定の結論を原因と決定するために必要な条件を含む)を記憶し、前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行う。なお、原因解析として、監視システムは、前記条件に適合し、かつ所定の解析時間幅内で検知したイベントよって定まる確信度を計算する。なお、解析時間幅は、前記結論が原因となる場合の影響範囲を示す指標値に基づいて計算される。このような処理は前述の指標値に基づいたソートとは独立に実施しても良いが、組み合わせて実行してもよい。
また、別な視点に於いて、監視システムは、ルール(所定の結論を原因と決定するために必要な条件を含む)を記憶し、前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行う。なお、原因解析として監視システムは、前記条件に適合し、かつ所定の解析時間幅内で検知したイベントよって定まる確信度を計算する。そして、監視システムは、前記解析時間幅を変化させたと仮定した場合の変化後の確信度を特定し、その変化後の確信度を表示する。なお、このような処理は前述の指標値に基づいたソートや指標値に基づいた解析時間幅の決定とは独立に実施しても良いが、組み合わせて実行してもよい。
なお、本発明は、この実施例に限定されるものでなく、その趣旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
例えば、各重みオブジェクト1003が、第2の検知データを管理する代わりに、その第2の検知データに関係するイベントの、その第2の検知データに関係するインパクテッドノード数に関する解析時間幅を管理し、解析時に、管理計算機100が、重みオブジェクト1003が管理する解析時間幅と条件オブジェクト1001が管理する第1の検知データ(特に、イベントが検知された時間)とに基づいてイベントの検知の有無を判断し(例えば、イベントが検知された時間から解析時間幅経過後の時間が現在時間以降であれば、イベントの検知は有効であると判断し)、その検知の有効、無効に基づいて確信度の計算を行ってもよい。
100…管理計算機、200…表示計算機、300…通信ネットワーク、400…サーバ、500…ストレージ
Claims (16)
- 複数の監視対象オブジェクトのいずれかで発生したイベントをルールを用いて原因解析を行い、記憶デバイスを有する監視システムを構成するコンピュータに実行させる監視プログラムであって、
前記ルールは、所定の結論を原因と決定するために必要な条件を含み、
前記監視プログラムは、
前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行い、原因となる可能性のある複数の結論を決定し、
前記決定した複数の結論の各々について、当該結論について前記ルールを基に、当該結論が原因となる場合の影響範囲を示す指標値を算出し、
前記決定した複数の結論を、当該結論について算出された指標値に従ってソートして表示し、
前記影響範囲を示す指標値は、原因が生じた場合にその影響を受けて発生するイベントの数に関する値である、
ことを前記コンピュータに実行させる監視プログラム。 - 前記ルールは、イベントの種別と当該イベントの発生元となる監視対象オブジェクトの種別との組み合わせによりイベントを示した1以上の第1の条件と、前記1以上の第1の条件を満たす場合に原因となる第1の結論との関連付けを示す汎用ルールを含み、
前記記憶デバイスは、前記複数の監視対象オブジェクト間におけるデータ通信の有無を示す関係情報をさらに記憶しており、
前記汎用ルール及び前記関係情報に基づいて、イベントの種別と当該イベントの発生元となる監視対象オブジェクトを特定する情報との組み合わせによりイベントを示した1以上の第2の条件と、前記1以上の第2の条件を満たす場合に原因となる第2の結論との関連付けを複数含む展開情報を生成し、
前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件に基づいて当該各第2の結論の前記指標値を決定し、
前記原因解析において、原因となる可能性のある複数の第2の結論を決定し、
前記決定した複数の第2の結論を、各第2の結論それぞれの前記指標値に従ってソートして表示する、
ことを前記コンピュータに実行させる請求項1に記載の監視プログラム。 - 前記記憶デバイスは、前記展開情報の各第2の条件ごとに、当該第2の条件が示すイベントの検知の有効又は無効を示す検知データをさらに記憶しており、
イベントを検知した場合、当該検知したイベントである検知イベントの前記検知データを有効に設定し、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の前記指標値に基づいて前記検知イベントの解析時間幅を決定し、
前記検知イベントを検知してから前記決定した解析時間幅が経過した場合、前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの前記検知データに基づいて、当該各第2の結論が原因であることの確からしさを示す確信度を決定し、前記決定した確信度に基づいて、原因となる可能性のある複数の第2の結論を決定する、
ことを前記コンピュータに実行させる請求項2に記載の監視プログラム。 - 前記原因解析において決定した第2の結論ごとに、当該第2の結論の確信度と解析時間幅との対応関係を表す情報を表示する、
ことを前記コンピュータに実行させる請求項3に記載の監視プログラム。 - 前記解析時間幅を変化させたと仮定した場合の変化後の確信度を特定し、その変化後の確信度を表示する、
ことを前記コンピュータに実行させる請求項4に記載の監視プログラム。 - 或るイベントの有効期限は指標値ごとにある、
請求項5に記載の監視プログラム。 - 前記記憶デバイスは、前記展開情報の各第2の条件について、関連付けられている1以上の第2の結論の前記指標値ごとに、前記検知データを記憶しており、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の中に前記指標値がそれぞれ異なる複数の第2の結論が存在する場合、前記異なる指標値ごとに前記検知イベントの解析時間幅を決定し、前記検知イベントを検知してから前記決定した複数の解析時間幅のうちのいずれかが経過した場合、前記経過した解析時間幅に対応する前記指標値に関する前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの、当該第2の結論の前記指標値に関する前記検知データに基づいて、当該第2の結論の確信度を計算する
ことを前記コンピュータに実行させる請求項6に記載の監視プログラム。 - 前記第2の条件が示すイベントを管理する複数の条件オブジェクトと、前記第2の結論に対応し当該第2の結論の前記指標値及び確信度を管理する複数の結論オブジェクトと、前記条件オブジェクト及び前記結論オブジェクトにそれぞれ接続され、当該接続されている条件オブジェクトが管理するイベントの、当該接続されている結論オブジェクトが管理する前記指標値に関する前記検知データを管理する複数の重みオブジェクトと、を有するルールメモリデータを、前記展開情報として生成する、
ことを前記コンピュータに実行させる請求項7に記載の監視プログラム。 - 前記記憶デバイスは、前記検知データが有効に設定された重みオブジェクトと、当該重みオブジェクトに接続された条件オブジェクトが管理するイベントの、当該重みオブジェクトに接続された結論オブジェクトが管理する前記指標値に関して決定された前記解析時間幅との対応関係を示す解析時間幅情報を記憶しており、
前記解析時間幅情報に含まれる重みオブジェクトに接続されている条件オブジェクトが管理するイベントを検知してから、当該重みオブジェクトに対応する解析時間幅が経過した場合、当該重みオブジェクトが管理する前記検知データを無効に設定する、
ことを前記コンピュータに実行させる請求項8に記載の監視プログラム。 - 前記展開情報の各第2の結論について、当該第2の結論に対応する1以上の第2の条件が示すイベントの発生元となる監視対象オブジェクトのうちの監視対象装置の数を計算し、前記計算した数を当該第2の結論の前記指標値とする、
ことを前記コンピュータに実行させる請求項9に記載の監視プログラム。 - 複数の監視対象オブジェクトのいずれかで発生したイベントの原因解析をルールを用いて行う監視システムであって、
前記ルールを記憶する記憶デバイスと、
前記記憶デバイスに接続された制御デバイスと
を有し、
前記ルールは、所定の結論を原因と決定するために必要な条件を含み、
前記制御デバイスは、
前記ルールに基づいて、前記監視対象オブジェクトで発生したイベントの原因解析を行い、原因となる可能性のある複数の結論を決定し、
前記決定した複数の結論の各々について、当該結論について前記ルールを基に、当該結論が原因となる場合の影響範囲を示す指標値を算出し、
前記決定した複数の結論を、当該結論について算出された指標値に従ってソートして表示し、
前記影響範囲を示す指標値は、原因が生じた場合にその影響を受けて発生するイベントの数に関する値である、
監視システム。 - 前記ルールは、イベントの種別と当該イベントの発生元となる監視対象オブジェクトの種別との組み合わせによりイベントを示した1以上の第1の条件と、前記1以上の第1の条件を満たす場合に原因となる第1の結論との関連付けを示す汎用ルールを含み、
前記記憶デバイスは、前記複数の監視対象オブジェクト間におけるデータ通信の有無を示す関係情報をさらに記憶し、
前記制御デバイスは、
前記汎用ルール及び前記関係情報に基づいて、イベントの種別と当該イベントの発生元となる監視対象オブジェクトを特定する情報との組み合わせによりイベントを示した1以上の第2の条件と、前記1以上の第2の条件を満たす場合に原因となる第2の結論との関連付けを複数含む展開情報を生成し、
前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件に基づいて当該第2の結論の前記指標値を決定し、
前記原因解析において、原因となる可能性のある複数の第2の結論を決定し、
前記決定した複数の第2の結論を、各第2の結論それぞれの前記指標値に従ってソートして表示する、
請求項11に記載の監視システム。 - 前記記憶デバイスは、前記展開情報の各第2の条件ごとに、当該第2の条件が示すイベントの検知の有効または無効を示す検知データをさらに記憶し、
前記制御デバイスは、
イベントを検知した場合、当該検知したイベントである検知イベントの前記検知データを有効に設定し、
前記検知イベントを示す前記展開情報の第2の条件に関連付けられている第2の結論の前記指標値に基づいて前記検知イベントの解析時間幅を決定し、
前記検知イベントを検知してから前記決定した解析時間幅が経過した場合、前記検知イベントの前記検知データを無効に設定し、
前記原因解析において、前記展開情報の各第2の結論について、関連付けられている1以上の第2の条件が示す各イベントの前記検知データに基づいて、当該第2の結論が原因であることの確からしさを示す確信度を決定し、前記決定した確信度に基づいて、原因となる可能性のある複数の第2の結論を決定する、
請求項12に記載の監視システム。 - 前記制御デバイスは、前記原因解析において決定した第2の結論ごとに、当該第2の結論の確信度と解析時間幅との対応関係を表す情報を表示する、
請求項12に記載の監視システム。 - 前記制御デバイスは、前記解析時間幅を変化させたと仮定した場合の変化後の確信度を特定し、その変化後の確信度を表示する、
請求項14に記載の監視システム。 - イベントの数に関する値とは、原因が生じた場合にその影響を受けてイベントが発生する監視対象オブジェクトの数、又は、原因が生じた場合に発生するイベントの数である、
請求項1乃至10のうちのいずれか1項に記載の監視プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/054794 WO2013128550A1 (ja) | 2012-02-27 | 2012-02-27 | 監視システム及び監視プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5658417B2 true JP5658417B2 (ja) | 2015-01-28 |
JPWO2013128550A1 JPWO2013128550A1 (ja) | 2015-07-30 |
Family
ID=49004764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014501858A Expired - Fee Related JP5658417B2 (ja) | 2012-02-27 | 2012-02-27 | 監視システム及び監視プログラム |
Country Status (3)
Country | Link |
---|---|
US (2) | US8863154B2 (ja) |
JP (1) | JP5658417B2 (ja) |
WO (1) | WO2013128550A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113127309A (zh) * | 2021-04-30 | 2021-07-16 | 北京奇艺世纪科技有限公司 | 一种程序监控方法、装置、电子设备及存储介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011158372A1 (ja) * | 2010-06-18 | 2011-12-22 | 三菱電機株式会社 | データ処理装置及びデータ処理方法及びプログラム |
JP6114818B2 (ja) * | 2013-04-05 | 2017-04-12 | 株式会社日立製作所 | 管理システム及び管理プログラム |
WO2015121925A1 (ja) * | 2014-02-12 | 2015-08-20 | 株式会社日立製作所 | システム管理方法 |
WO2015181897A1 (ja) * | 2014-05-27 | 2015-12-03 | 株式会社日立製作所 | 情報システムを管理する管理システム |
WO2016013056A1 (ja) * | 2014-07-22 | 2016-01-28 | 株式会社日立製作所 | 計算機システムを管理する方法 |
US10176033B1 (en) * | 2015-06-25 | 2019-01-08 | Amazon Technologies, Inc. | Large-scale event detector |
CN106713049B (zh) * | 2017-02-04 | 2020-08-04 | 杭州迪普科技股份有限公司 | 一种监控的告警方法及装置 |
JP7036106B2 (ja) * | 2017-02-22 | 2022-03-15 | 日本電気株式会社 | 情報処理装置、情報処理システム、監視方法、及び、プログラム |
US11210158B2 (en) * | 2017-11-29 | 2021-12-28 | Riverbed Technology, Inc. | Automated problem diagnosis on logs using anomalous telemetry analysis |
JP7027912B2 (ja) * | 2018-01-29 | 2022-03-02 | 富士通株式会社 | 順序制御プログラム、順序制御方法、及び情報処理装置 |
CN110008077B (zh) * | 2018-11-06 | 2023-05-02 | 创新先进技术有限公司 | 一种异常报警监控方法及装置、一种计算设备及存储介质 |
US11520673B2 (en) * | 2020-07-21 | 2022-12-06 | Hewlett Packard Enterprise Development Lp | Maintenance operations based on analysis of collected data |
US11747791B2 (en) * | 2020-11-04 | 2023-09-05 | Mitsubishi Electric Corporation | Recording medium storing system construction assistance program, system construction assistance method, and system construction assistance device |
US11587595B1 (en) * | 2021-10-18 | 2023-02-21 | EMC IP Holding Company LLC | Method of identifying DAE-context issues through multi-dimension information correlation |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01214998A (ja) * | 1988-02-23 | 1989-08-29 | Hitachi Ltd | 警報表示装置 |
JPH02259906A (ja) * | 1989-03-31 | 1990-10-22 | Omron Tateisi Electron Co | ファジィ制御装置およびファジィ制御装置に用いられるファジィ推論装置 |
JPH0342725A (ja) * | 1989-07-11 | 1991-02-22 | Nec Corp | オブジェクト選択優先度の動的変更による知識ベース管理・学習方式 |
JPH10187232A (ja) * | 1996-12-19 | 1998-07-14 | Toshiba Corp | 監視制御装置 |
WO2004061681A1 (ja) * | 2002-12-26 | 2004-07-22 | Fujitsu Limited | 運用管理方法および運用管理サーバ |
JP2012022614A (ja) * | 2010-07-16 | 2012-02-02 | Hitachi Ltd | 計算機システムの管理方法、及び管理システム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020032764A1 (en) * | 2000-09-04 | 2002-03-14 | Routrek Networks, Inc. | Technology for managing trouble creating devices in a network |
US8112378B2 (en) | 2008-06-17 | 2012-02-07 | Hitachi, Ltd. | Methods and systems for performing root cause analysis |
US8429455B2 (en) | 2010-07-16 | 2013-04-23 | Hitachi, Ltd. | Computer system management method and management system |
-
2012
- 2012-02-27 JP JP2014501858A patent/JP5658417B2/ja not_active Expired - Fee Related
- 2012-02-27 WO PCT/JP2012/054794 patent/WO2013128550A1/ja active Application Filing
- 2012-02-27 US US13/581,535 patent/US8863154B2/en not_active Expired - Fee Related
-
2014
- 2014-09-11 US US14/483,229 patent/US9329924B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01214998A (ja) * | 1988-02-23 | 1989-08-29 | Hitachi Ltd | 警報表示装置 |
JPH02259906A (ja) * | 1989-03-31 | 1990-10-22 | Omron Tateisi Electron Co | ファジィ制御装置およびファジィ制御装置に用いられるファジィ推論装置 |
JPH0342725A (ja) * | 1989-07-11 | 1991-02-22 | Nec Corp | オブジェクト選択優先度の動的変更による知識ベース管理・学習方式 |
JPH10187232A (ja) * | 1996-12-19 | 1998-07-14 | Toshiba Corp | 監視制御装置 |
WO2004061681A1 (ja) * | 2002-12-26 | 2004-07-22 | Fujitsu Limited | 運用管理方法および運用管理サーバ |
JP2012022614A (ja) * | 2010-07-16 | 2012-02-02 | Hitachi Ltd | 計算機システムの管理方法、及び管理システム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113127309A (zh) * | 2021-04-30 | 2021-07-16 | 北京奇艺世纪科技有限公司 | 一种程序监控方法、装置、电子设备及存储介质 |
CN113127309B (zh) * | 2021-04-30 | 2023-10-10 | 北京奇艺世纪科技有限公司 | 一种程序监控方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2013128550A1 (ja) | 2013-09-06 |
JPWO2013128550A1 (ja) | 2015-07-30 |
US8863154B2 (en) | 2014-10-14 |
US20140380100A1 (en) | 2014-12-25 |
US9329924B2 (en) | 2016-05-03 |
US20130227589A1 (en) | 2013-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5658417B2 (ja) | 監視システム及び監視プログラム | |
US9851911B1 (en) | Dynamic distribution of replicated data | |
WO2014013603A1 (ja) | 監視システム及び監視プログラム | |
JP5532150B2 (ja) | 運用管理装置、運用管理方法、及びプログラム | |
JP5385982B2 (ja) | 障害の根本原因に対応した復旧方法を表す情報を出力する管理システム | |
US10797971B2 (en) | Diagnostic framework in computing systems | |
JP6114818B2 (ja) | 管理システム及び管理プログラム | |
CN113454600A (zh) | 使用跟踪数据在分布式系统中进行自动根因分析 | |
US20110087924A1 (en) | Diagnosing Abnormalities Without Application-Specific Knowledge | |
US20160378583A1 (en) | Management computer and method for evaluating performance threshold value | |
CN103513983A (zh) | 用于预测性警报阈值确定工具的方法和系统 | |
JP2016143299A (ja) | リスク評価システムおよびリスク評価方法 | |
JP2011175357A5 (ja) | 管理装置及び管理プログラム | |
JP5222876B2 (ja) | 計算機システムにおけるシステム管理方法、及び管理システム | |
WO2014068705A1 (ja) | 監視システム及び監視プログラム | |
WO2015121925A1 (ja) | システム管理方法 | |
EP3722945A1 (en) | Program operation system and program operation method | |
EP3188022A2 (en) | System monitoring device | |
US10599509B2 (en) | Management system and management method for computer system | |
CN112860496A (zh) | 故障修复操作推荐方法、装置及存储介质 | |
US9898357B1 (en) | Root cause detection and monitoring for storage systems | |
US20160004584A1 (en) | Method and computer system to allocate actual memory area from storage pool to virtual volume | |
CN111587433A (zh) | 安保评价服务器和安保评价方法 | |
US11036561B2 (en) | Detecting device utilization imbalances | |
JP2021081929A (ja) | 監視装置、監視システム及び監視プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141024 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20141118 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141127 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5658417 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |