JP2007257184A - Obstacle factor estimation system, method and program - Google Patents
Obstacle factor estimation system, method and program Download PDFInfo
- Publication number
- JP2007257184A JP2007257184A JP2006079266A JP2006079266A JP2007257184A JP 2007257184 A JP2007257184 A JP 2007257184A JP 2006079266 A JP2006079266 A JP 2006079266A JP 2006079266 A JP2006079266 A JP 2006079266A JP 2007257184 A JP2007257184 A JP 2007257184A
- Authority
- JP
- Japan
- Prior art keywords
- failure
- cause
- state
- event
- sequence
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、障害原因推定システム、方法、及び、プログラムに関し、更に詳しくは、監視対象装置で発生した障害の原因を推定する障害原因推定システム、方法、及び、プログラムに関する。 The present invention relates to a failure cause estimation system, method, and program, and more particularly to a failure cause estimation system, method, and program for estimating the cause of a failure that has occurred in a monitoring target device.
コンピュータ等の管理対象機器を監視し、管理対象機器に障害が発生した際に、その障害の原因を推定するシステムがある。図7は、特許文献1に記載された障害原因発見装置の構成を示している。この従来の障害原因発見装置200では、プロセス情報獲得部201は、計算機システム上で実行されているプロセス情報を獲得し、環境ファイル情報獲得部202は、システム環境ファイル情報を獲得する。また、デバイス情報獲得部203は、計算機システムに組み込まれているデバイスドライバの情報を獲得する。
There is a system that monitors a managed device such as a computer and estimates the cause of the failure when the managed device has a failure. FIG. 7 shows the configuration of the failure cause detection device described in
基準環境情報獲得部204は、計算機システムが正常動作しているときに、プロセス情報獲得部201、環境ファイル情報獲得部202、及び、デバイス情報獲得部203が獲得した各情報を収集し、これを基準環境情報記憶部205に記憶する。検査環境情報獲得部206は、計算機システムに異常が発生したか否かを検出する際に、プロセス情報獲得部201、環境ファイル情報獲得部202、及び、デバイス情報獲得部203が獲得した各情報を収集し、これを検査環境情報記憶部207に記憶する。
The reference environment
環境情報比較判定部209は、基準環境情報記憶部205の内容と検査環境情報記憶部207の内容とを比較し、状態内容変化を見つけ出す。環境情報比較判定部209は、状態変化内容が、状態内容変化の許容値を記憶する許容範囲情報記憶部208を参照して、見つけ出した状態内容変化が、許容される範囲を超えるか否かを判断する。異常原因特定部211は、環境情報比較判定部209が許容される範囲を超えると判断すると、状態変化内容から、計算機システムの異常発生原因を特定する。
The environment information comparison /
例えば、基準環境情報記憶部205には、「実行中のプロセスは、nfsが1個」が記憶される。また、許容範囲情報記憶部208には、マウントデバイスの追加が許可される状況に対応して、プロセス“nfs”について、実行中のプロセスの最大値が“8個”である旨を記憶している。この場合に、検査環境情報獲得部206によって、マウントデバイスの追加が許可された状況で、「実行中のプロセスは、nfsが11個」という状態が検出されると、環境情報比較判定部209は、許容された範囲を超えると判定し、異常を検出する。異常原因特定部211は、計算機システムで異常が検出された原因を、プロセス“nfs”が許容プロセス数を超えたためと特定する。
For example, the reference environment
従来の障害原因を推定するシステムの別の例としては、特許文献2に記載されたものがある。図8は、特許文献2に記載された障害原因推定システムに用いられる因果システムモデル構築装置の構成を示している。この特許文献2では、因果関係をあらわすデータベースである因果データ生成記憶部311と、その逆マッピングである果因データ生成記憶部312と、複数の事象を一つの事象グループに対応させ、或いは、複数の原因を一つの原因グループに対応させる関係を記録する同一結果データ集合生成部313とを用い、部分因果システムモデル構成部314により、原因グループと事象グループとの関係をマッピングする因果システムモデル構築装置300を構築する。
Another example of a conventional system for estimating the cause of failure is described in Patent Document 2. FIG. 8 shows the configuration of a causal system model construction device used in the failure cause estimation system described in Patent Document 2. In this Patent Document 2, a causal data
図9は、特許文献2に記載された障害原因推定システムに用いられる原因推定装置の構成を示している。因果システムモデル記憶部324には、因果システムモデル構築装置300(図8)によって構築された因果システムモデルが格納される。原因推定装置320は、観測データ認識部321で認識した事象から、因果システムモデル記憶部324に格納した因果システムモデルの事象から原因のマッピングを適用し、障害の原因を求める。更に、原因から事象へのマッピングを適用することで、その原因から発生しうる事象を求める。このように、事象から原因へのマッピング、及び、原因から事象へのマッピングを推移的に適用し、推移的閉包を求めることで、起こりうる根源原因を含む原因を推移的に求める。
FIG. 9 shows the configuration of a cause estimation apparatus used in the failure cause estimation system described in Patent Document 2. The causal system
また、システムのトラブルシューティングを行う自動トラブルシュート機構に関する技術として、特許文献3に記載された技術がある。特許文献3では、変数を表すノードと変数間の依存関係を表すアークからなる方向を持った非環式グラフであるベイジアンネットワークで、システムの故障を引き起こすシステムコンポーネントをモデル化し、このモデルを用いて、プリンタシステムの自動診断を行う。
Further, as a technique related to an automatic troubleshooting mechanism for troubleshooting a system, there is a technique described in
特許文献1では、状態内容変化を検出し、検出した状態内容変化が、許容される範囲を超えるときには、状態変化内容から、計算機システムの異常発生原因を特定している。しかし、特許文献1で特定できるのは、直接の状態のみであり、ある障害が発生したことに起因して異常状態となったような場合には、その根源となる障害を特定することはできない。
In
例えば、「マウントデバイスの追加が許可される」状況におけるnfsプロセスの最大値(許容値)が「12」で、「マウントデバイスの追加が許可されない」状況におけるnfsプロセスの最大値が「8」であるとする。現在、システムが、「マウントデバイスの追加が許可される」状況にあり、nfsプロセス数が11個であったとすると、nfsプロセス数は、最大値「12」を超えない状態であるため、正常であると判断される。 For example, the maximum value (allowable value) of the nfs process in the situation “addition of mount device is allowed” is “12”, and the maximum value of the nfs process in the situation “addition of mount device is not allowed” is “8”. Suppose there is. If the system is currently in a state where “addition of a mount device is permitted” and the number of nfs processes is 11, the number of nfs processes is not exceeding the maximum value “12”. It is judged that there is.
その後、「SCSIボートの故障」に起因して、「マウントデバイスの追加が許可されない」状況になったとする。nfsプロセス数が変化せずに、12個のままであったとすると、「マウントデバイスの追加が許可されない」状況におけるnfsプロセスの最大値は「8」であるため、nfsプロセス数は最大値を超える。従って、特許文献1では、nfsプロセス数が許容値を超えたことを、障害原因として特定する。
After that, it is assumed that due to the “failure of the SCSI boat”, the state where “addition of mount device is not permitted” is entered. If the number of nfs processes does not change and remains twelve, the maximum value of the nfs process in the situation “addition of mount device is not permitted” is “8”, so the number of nfs processes exceeds the maximum value. . Therefore, in
しかしながら、上記の場合、本来の故障原因は、「SCSIボードの故障」であり、nfsプロセスの数が正常値を逸脱しているということの原因が、「SCSIボードの故障」であると認識して対応しないと、正しい障害対応はできない。特許文献1では、推移的におきる障害、例えば、障害Aにより状態Bに移行し、状態Bを直接原因に起きる障害Cに対しては、直接の障害Cしか特定することができず、根源原因である障害Aを特定することができないという問題がある。
However, in the above case, the original failure cause is “SCSI board failure”, and the cause that the number of nfs processes deviates from the normal value is recognized as “SCSI board failure”. If you do not respond correctly, you cannot respond correctly. In
また、特許文献2では、原因と障害との対応関係を事前に登録する必要があるが、一般事象の関係は複雑であるため、障害や状態の種類が多いと、その対応関係を記述することは困難であり、根源的な障害原因を求めるための規則を入力することが困難であるという問題がある。特許文献2には、このような記述の困難性を軽減するため、障害原因をグループ化し、その間のマッピングを記載している。しかし、グループごとにマッピングを定義する場合であっても、マッピングの定義は必要であり、グループを定義するのに手間がかかるのに加えて、上手にグループ化しないと、原因と障害のマッピングの精度が落ちる可能性があるという問題が残る。 In Patent Document 2, it is necessary to register the correspondence between the cause and the failure in advance. However, since the relationship between the general events is complicated, the correspondence is described when there are many types of failures and states. Is difficult, and it is difficult to input rules for determining the root cause of failure. In Patent Document 2, in order to reduce the difficulty of such description, failure causes are grouped and mapping between them is described. However, even when mapping is defined for each group, it is necessary to define the mapping. In addition to the time and effort required to define the group, if mapping is not done well, mapping of the cause and fault The problem remains that accuracy may drop.
図10は、因果関係をモデル化して示している。例えば、特許文献2には、同図に示す事例が記載されている。同図では、矢印は、因果関係を示している。例えば、新たな事象y’を定義し、y’がx2の原因であるとする。この関係は、
y’→x2
と書ける。特許文献2では、マッピングの定義を容易にするため、y’→x2、かつ、x2∈X1ならば、
h(X1)=y’
という果因関係を抽象化したマッピングhを設ける。これにより、hは、X1をx2,x3と細かく見ないことで、果因関係を簡単に記述できる。しかし、「細かく見ない」ために、x3∈X1のとき、h(x3)=y’となる。すなわち、x3の原因として、本来、因果関係のない、y’が原因とみなされる危険性があるという問題がある。
FIG. 10 shows the causal relationship as a model. For example, Patent Document 2 describes an example shown in FIG. In the figure, arrows indicate causal relationships. For example, a new event y ′ is defined and y ′ is the cause of x2. This relationship
y '→ x2
Can be written. In Patent Document 2, in order to facilitate the definition of mapping, if y ′ → x2 and x2∈X1,
h (X1) = y ′
A mapping h that abstracts the causal relationship is provided. Thus, h can easily describe the causal relationship by not looking at X1 as x2 and x3. However, in order to “not look closely”, h (x3) = y ′ when x3εX1. That is, as a cause of x3, there is a problem that there is a risk that y ′, which is not causally related, is regarded as a cause.
特許文献3では、障害のモデル化に、DAG(ループのないグラフ)を用いている。障害の発生では、同一障害からイベントが繰り返し発生する場合も多いが、特許文献3では、DAGを用いているので、繰り返し発生するイベントには対応できないという問題がある。
In
本発明は、上記従来技術の問題点を解消し、人手により複雑な依存関係を定義しなくても、障害の根源的な原因を推定できる障害原因推定システム、方法、及び、プログラムを提供することを目的とする。 The present invention provides a failure cause estimation system, method, and program capable of solving the above-described problems of the prior art and estimating a root cause of a failure without manually defining complicated dependency relationships. With the goal.
上記目的を達成するために、本発明の障害原因推定システムは、監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶する初期モデル生成手段と、前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶する障害発生モデル学習手段と、イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶する状態遷移列計算手段と、前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するフィルタリングモジュールとを備えることを特徴とする。 In order to achieve the above object, the failure cause estimation system of the present invention reads a basic model definition that defines an event that can occur in a monitored device and a failure cause that causes the event, and uses the read basic model definition as a read-out basic model definition. Based on the initial failure generation model in which the correspondence relationship between the event and the cause of the occurrence and the transition between the occurrence causes are modeled by a finite automaton and stored in the model storage database, and the initial failure occurrence model And a learning event sequence stored in the event sequence database, learning the probability that the state of the finite automaton corresponding to the cause has changed, and modeling a failure occurrence model that reflects the learning result Failure occurrence model learning means stored in the storage database and failure cause discovery event from the event sequence database A state transition sequence that is considered to have the highest probability that the read failure cause discovery event sequence is observed in the learned failure occurrence model, and that is stored in the cause estimation result database And a filtering module that estimates a root cause of a failure that has occurred in the monitoring target device based on the state transition sequence obtained by the state transition sequence calculating unit and the failure occurrence model after learning. It is characterized by that.
本発明の障害原因推定方法は、コンピュータを用いて、監視対象装置で発生した障害の根源的な原因を推定する方法であって、前記コンピュータが、前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、前記コンピュータが、前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、前記コンピュータが、イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、前記コンピュータが、前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを有することを特徴とする。 The failure cause estimation method of the present invention is a method for estimating a root cause of a failure that has occurred in a monitoring target device using a computer, and the computer can generate an event that can occur in the monitoring target device, Read out the basic model definition that defines the cause of the failure that causes the event, and based on the basic model definition that was read out, the initial failure occurrence modeled the correspondence between the event and its cause and the transition between the causes with a finite automaton Based on the initial failure occurrence model and the learning event sequence stored in the event sequence database, the state of the finite automaton corresponding to the cause is generated by generating a model and storing it in the model storage database. Learning the probability of transition and storing the failure occurrence model reflecting the learning result as a model And the computer reads the failure cause finding event sequence from the event sequence database, and in the failure occurrence model after learning, the probability that the read failure cause finding event sequence is observed is the highest. Monitoring based on the state transition sequence obtained by the state transition sequence calculating means and the failure occurrence model after learning And estimating a root cause of a failure that has occurred in the target device.
本発明のプログラムは、コンピュータに、監視対象装置で発生した障害の根源的な原因を推定する方法を実行させるプログラムであって、前記コンピュータに、前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを実行させることを特徴とする。 The program of the present invention is a program that causes a computer to execute a method for estimating a root cause of a failure that has occurred in a monitoring target device, the computer having an event that can occur in the monitoring target device, and the event An initial failure occurrence model in which a basic model definition that defines a failure cause that causes a failure is read, and a correspondence relationship between an event and its occurrence cause and a transition between the occurrence causes are modeled by a finite automaton based on the read basic model definition Is generated and stored in the model storage database, the probability that the state of the finite automaton corresponding to the cause has changed based on the initial failure occurrence model and the learning event sequence stored in the event sequence database And the failure occurrence model reflecting the learning result is stored in the model storage database. And a state transition that is considered to have the highest probability of observing the read failure cause discovery event sequence in the failure occurrence model after learning, and storing the failure cause discovery event sequence from the event sequence database The root of the failure that occurred in the monitoring target device based on the step of obtaining the sequence and storing it in the cause estimation result database, the state transition sequence obtained by the state transition sequence calculating means, and the failure occurrence model after learning And a step of estimating a new cause.
本発明の障害原因推定システム、方法、及び、プログラムでは、基本定義モデルに基づいて作成された初期障害発生モデルを、学習用イベント列を用いて学習し、学習によってえられた障害発生モデルから、障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、その状態遷移列に基づいて、監視対象装置で発生した障害の根源的な原因を推定する。本発明では、人手で定義が必要なのは、発生し得るイベントと、イベントを引き起こす障害原因と、その対応関係とであり、これらは、人手で容易に定義できる。従って、複雑な原因、結果間の依存関係を定義しなくても、障害の根源的な原因を推定できる。 In the failure cause estimation system, method, and program of the present invention, the initial failure occurrence model created based on the basic definition model is learned using the learning event sequence, and from the failure occurrence model obtained by learning, A state transition sequence that is considered to have the highest probability of observing a failure cause finding event sequence is obtained, and based on the state transition sequence, a root cause of a failure that has occurred in the monitoring target device is estimated. In the present invention, what needs to be defined manually is the event that can occur, the cause of the failure that causes the event, and the correspondence between them, which can be easily defined manually. Therefore, it is possible to estimate the root cause of a failure without defining a complicated cause and dependency between results.
本発明の障害原因推定システム、方法、及び、プログラムでは、Baum−Welchアルゴリズムにより、前記原因間の状態遷移確率と、各原因でのイベント発生確率とを学習する構成を採用できる。学習のアルゴリズムとしては、出力記号列からパラメータを推定するBaum−Welchアルゴリズムを用いることができる。 The fault cause estimation system, method, and program of the present invention can employ a configuration in which the state transition probability between the causes and the event occurrence probability at each cause are learned by the Baum-Welch algorithm. As a learning algorithm, a Baum-Welch algorithm that estimates a parameter from an output symbol string can be used.
本発明の障害原因推定システム、方法、及び、プログラムでは、Viterbiアルゴリズムにより、前記状態遷移列を求める構成を採用できる。学習後の障害発生モデルから状態連に列を求める際に用いるアルゴリズムとしては、出力記号列から状態列を推定するViterbiアルゴリズムを用いることができる。 The fault cause estimation system, method, and program of the present invention can employ a configuration for obtaining the state transition sequence by the Viterbi algorithm. A Viterbi algorithm that estimates a state string from an output symbol string can be used as an algorithm used when obtaining a string of states from a failure occurrence model after learning.
本発明の障害原因推定システム、方法、及び、プログラムでは、前記初期障害発生モデルが、前記発生し得るイベントの集合Σと、前記障害原因の集合Sに正常状態s0を加えた状態の集合と、各状態について、当該状態から各状態に遷移する確率を示す条件付確率Pr(sj|si)si,sj∈Sと、各状態について、開始時に当該状態にいる初期確率{P0 si}si∈Sと、各状態について、当該状態で前記イベントが発生する確率を示すPr(ej|si)}si∈S,ej∈Σとを含む構成を採用できる。 In the failure cause estimation system, method, and program of the present invention, the initial failure occurrence model includes the set of events Σ that can occur and a set of states obtained by adding a normal state s 0 to the failure cause set S. For each state, a conditional probability Pr (s j | s i ) si, sjεS indicating the probability of transition from the state to each state, and for each state, the initial probability of being in that state at the start {P 0 si } It is possible to adopt a configuration including si∈S and Pr (e j | s i )} si∈S, ej∈Σ indicating the probability of occurrence of the event in each state.
本発明の障害原因推定システム、方法、及び、プログラムでは、前記フィルタリングモジュールは、求めた状態遷移列を{s(0)、s(1)、・・・、s(n)}とするとき、状態s(i)(0≦i<n)から次状態s(i+1)への前記条件付確率Pr(s(i+1)|s(i))が、所定の確率よりも低いと、前期状態遷移列を、{s(0)、s(1)、・・・、s(i)}と、{s(i+1)、・・・、s(n)}とに分割する構成を採用できる。この場合、前記フィルタリングモジュールは、前記分割された各状態遷移列の先頭の状態を、障害の根源的原因と推定することができる。このように分割することで、異なる根源原因による2つの状態列(シーケンス)が、たまたま確率的に最大値であるために1つのシーケンスとしてみなされている場合に、そのシーケンスを、根源原因ごとのシーケンスに分割でき、各シーケンスの先頭の状態を、根源原因と推定できる。 In the failure cause estimation system, method, and program of the present invention, the filtering module sets {s (0), s (1),..., S (n)} as the obtained state transition sequence. If the conditional probability Pr (s (i + 1) | s (i)) from the state s (i) (0 ≦ i <n) to the next state s (i + 1) is lower than a predetermined probability, the previous state transition A configuration in which a column is divided into {s (0), s (1),..., S (i)} and {s (i + 1),. In this case, the filtering module can estimate the leading state of each of the divided state transition sequences as the root cause of the failure. By dividing in this way, when two state sequences (sequences) due to different root causes happen to be regarded as one sequence because they happen to be probabilistically maximum values, the sequences are separated for each root cause. It can be divided into sequences, and the leading state of each sequence can be estimated as the root cause.
本発明の障害原因推定システムでは、前記学習用イベント列が、前記監視対象装置を試運転した際にモニタされたイベント列である構成を採用できる。或いは、前記学習用イベント列が、前記監視対象装置の運用時にモニタされたイベント列であって、障害の発生原因が解析済みのイベント列である構成を採用できる。 In the failure cause estimation system of the present invention, a configuration can be adopted in which the learning event sequence is an event sequence monitored when the monitoring target device is tested. Alternatively, it is possible to adopt a configuration in which the learning event sequence is an event sequence monitored during operation of the monitoring target device, and the cause of the failure is an analyzed event sequence.
本発明の障害原因推定システムでは、前記障害原因発見用イベント列が、前記監視対象装置の運用時にモニタされたイベント列である構成を採用できる。この場合、運用中の監視対象装置で発生した障害の根源的原因を推定することができる。 In the failure cause estimation system of the present invention, a configuration can be adopted in which the failure cause discovery event sequence is an event sequence monitored during operation of the monitored device. In this case, it is possible to estimate the root cause of the failure that has occurred in the monitoring target device in operation.
本発明の障害原因推定システムでは、前記学習用イベント列及び前記障害原因発見用イベント列のそれぞれにおける隣接する2つのイベントの発生時間間隔が所定の値以下である構成を採用できる。この場合、ある障害原因に対して、互いに関連性のあるイベントの列学習用イベント列及び障害原因発見用イベント列とすることができる。 In the failure cause estimation system of the present invention, it is possible to adopt a configuration in which occurrence time intervals of two adjacent events in each of the learning event sequence and the failure cause discovery event sequence are equal to or less than a predetermined value. In this case, for a certain cause of failure, an event sequence for learning events and an event sequence for finding failure causes can be used.
本発明の障害原因推定システム、方法、及び、プログラムでは、求められた状態遷移列を原因推定結果データベースに記憶すると共に、前記障害原因発見用イベント列のうちで、前記状態遷移列に含まれる各状態を発生原因とするイベントを、各状態に対応付けて記憶する構成を採用できる。このようにして記憶された原因推定結果データベースを参照することで、管理者等は、障害の根源的な原因や、それに付随して発生した原因等を解析することができる。 In the failure cause estimation system, method, and program of the present invention, the obtained state transition sequence is stored in the cause estimation result database, and each of the failure cause discovery event sequences included in the state transition sequence It is possible to employ a configuration in which an event that causes a state is stored in association with each state. By referring to the cause estimation result database stored in this way, the administrator or the like can analyze the root cause of the failure, the cause that accompanies it, and the like.
本発明の障害原因推定システム、方法、及び、プログラムでは、基本定義モデルに基づいて作成された初期障害発生モデルを、学習用イベント列を用いて学習し、学習によって得られた障害発生モデルから、障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、その状態遷移列に基づいて、監視対象装置で発生した障害の根源的な原因を推定する。本発明では、人手で定義が必要なのは、発生し得るイベントと、イベントを引き起こす障害原因と、その対応関係とであり、これらは、人手で容易に定義できる。従って、複雑な原因、結果間の依存関係を定義しなくても、障害の根源的な原因を推定できる。 In the failure cause estimation system, method, and program of the present invention, the initial failure occurrence model created based on the basic definition model is learned using the learning event sequence, and from the failure occurrence model obtained by learning, A state transition sequence that is considered to have the highest probability of observing a failure cause finding event sequence is obtained, and based on the state transition sequence, a root cause of a failure that has occurred in the monitoring target device is estimated. In the present invention, what needs to be defined manually is the event that can occur, the cause of the failure that causes the event, and the correspondence between them, which can be easily defined manually. Therefore, it is possible to estimate the root cause of a failure without defining a complicated cause and dependency between results.
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の一実施形態の障害原因推定装置の構成を示している。障害原因推定装置10は、初期モデルパーザ30、初期モデル生成手段40、Baum−Welch計算手段50、Viterbi計算手段60、フィルタリングモジュール70、モデル格納データベース120、イベント列パーザ130、イベント列データベース140、原因推定結果データベース150を備える。障害原因推定装置10は、例えばワークステーション等のコンピュータシステムで構成され、所定のプログラムを動作させることで、各部の機能が実現される。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 shows the configuration of a failure cause estimation apparatus according to an embodiment of the present invention. The failure cause
初期モデルパーザ30は、装置開発者が記述した基本モデル定義20を読み込み、それを構文解釈して構文情報を生成し、初期モデル生成手段40に受け渡す。基本モデル定義20は、監視対象装置80で発生し得るイベントと、それを引き起こす障害原因とを定義したものである。初期モデル生成手段40は、初期モデルパーザ30が生成した構文情報に基づいて、イベントとその発生原因の対応関係、及び、発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベース120に格納する。
The
イベントモニタ90は、監視対象装置80で発生するイベントをモニタし、学習用イベント列100と、障害原因発見用イベント列110とを生成する。イベント列パーザ130は、これら学習用イベント列100及び障害原因発見用イベント列110を構文解釈して、イベントデータを生成し、イベント列データベース140に記憶する。Baum−Welch計算手段50は、モデル格納データベース120に格納された初期障害発生モデルと、イベント列データベース140に格納された学習用イベント列100に対応するイベントデータ(以下、単に学習用イベント列100とも呼ぶ)とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、その学習結果を反映した障害発生モデルをモデル格納データベース120に格納する。
The event monitor 90 monitors events that occur in the
Viterbi計算手段60は、モデル格納データベース120に格納された障害発生モデルと、イベント列データベース140に格納された障害原因発見用イベント列110に対応するイベントデータ(以下、単に障害発見用イベント列とも呼ぶ)とを用いて、最も発生確率が高い障害発生モデルの状態遷移列を求め、フィルタリングモジュール70に出力する。その際、Viterbi計算手段60は、状態遷移列を求める元となった障害原因発見用イベント列110を、あわせて出力する。
The Viterbi calculation means 60 is a failure occurrence model stored in the
フィルタリングモジュール70は、Viterbi計算手段60が求めた、最も発生したと推測される状態遷移列(障害原因の列)のうちで、確率的に低い遷移を切り捨て、もっともらしい遷移列を発見して、その遷移列の開始状態を根源的な原因と推定する。フィルタリングモジュール70は、推定した根源的な原因と、それに連なる派生原因とを含む原因列を、原因推定結果データベース150に格納する。また、その際、障害原因発見用イベント列110のうちで、根源的な原因及び派生原因を発生原因とするイベントを、各原因に対応付けて原因推定結果データベース150に格納する。管理者は、原因推定結果データベース150を参照することで、障害の発生原因等の解析を行う。
The
図2は、障害発生モデルを生成する際の障害原因推定装置10の動作手順を示している。初期モデルパーザ30は、装置開発者によって記述された基本モデル定義20を読み込み、読み込んだ基本モデル定義20を、初期モデル生成手段40が解釈可能な構文情報に変換する(ステップA1)。基本モデル定義20は、イベントの集合Σと、障害原因の集合Sと、関数f:Σ→Sで定義される。基本的に、関数fは全域関数であるが、部分関数でもよい。
FIG. 2 shows an operation procedure of the failure
図3は、基本モデル定義20の記述例を示している。基本モデル定義20は、例えば同図に示すようなテキストファイルで記述される。この例では、OSにWindows(登録商標)を想定している、[states]で始まる段落は、障害原因の集合Sを定義する。同図の例では、“Print”や“Application Popup”など、9つの原因を定義している。[observations]で始まる段落は、イベントの集合Σを定義している。Windows(登録商標)のイベントモニタツール「event viewer」では、イベントの種別は“3”,“4”,“16”などの数字のIDで与えられており、イベントの集合Σの定義には、そのIDを用いる。
FIG. 3 shows a description example of the
[observations]で、イベントの種類(ID)と“,”で区切られた部分は、イベントに対して想定される原因を表す。この部分が、障害から原因への関数(マッピング)f:Σ→Sを定義する。例えば、イベント“3”は“Print”関係の状態を発生原因としており、f(“3”)=“Print”と定義される。初期モデルパーザ30は、このようなテキストファイルを読み込んで、記述された基本モデル定義20に相当する構文情報を初期モデル生成手段40に受け渡す。
In [Observations], the part delimited by the event type (ID) and “,” represents a possible cause for the event. This part defines the function (mapping) f: Σ → S from the fault to the cause. For example, the event “3” is caused by the state related to “Print”, and is defined as f (“3”) = “Print”. The
図2に戻り、初期モデル生成手段40は、基本モデル定義20に相当する構文情報に基づいて、初期障害発生モデルを生成する(ステップA2)。障害発生モデルMを次式で定義する。
M={Σ,S∪{s0},{Pr(sj|si)}si,sj∈S,{P0 i}si∈S,{Pr(ej|si)}si∈S,ej∈Σ}
Pr(a|b)は、条件付確率であり、bという条件下でaが発生する確率を示す。また、P0 iは、障害発生モデルMが状態Siから開始する確率を示す。s0は、監視対象装置80が正常である状態を示す。上記障害発生モデルMにおいて、「S∪{s0},{Pr(sj|si)}si,sj∈S,{P0 i}si,sj∈S」は、有限状態オートマトンを表し、これは、次の状態s∈S∪{s0}は、直前の状態S’∈S∪{s0}のみで定まり、固定の確率Pr(s|s’)で遷移することを表している。
Returning to FIG. 2, the initial model generation means 40 generates an initial failure occurrence model based on the syntax information corresponding to the basic model definition 20 (step A2). The failure occurrence model M is defined by the following equation.
M = {Σ, S∪ {s 0 }, {Pr (s j | s i )} si, sj∈S , {P 0 i } si∈S , {Pr (e j | s i )} si∈S , Ej∈Σ }
Pr (a | b) is a conditional probability and indicates the probability of occurrence of a under the condition of b. P 0 i indicates the probability that the failure occurrence model M starts from the state S i . s 0 indicates a state in which the
初期モデル生成手段40が生成する初期障害発生モデルM0について詳細に説明する。初期障害発生モデルM0で扱うイベントの集合Σは、基本モデル定義20で定義したΣと同一である。また、初期障害発生モデルM0で扱う原因の集合S∪{s0}は、基本モデル定義20で定義したSに、正常状態s0を加えた集合である。{Pr(sj|si)}si,sj∈Sは、原因間の遷移確率を示しており、この遷移確率は、等確率とする。具体的には、|S|を原因の集合Sの個数として、Pr(sj|si)=1/(|S|+1)とする。この確率を等確率にせずに、自身へ遷移する確率Pr(si|si)のみを大きくするなどして、定常状態になる確率を高く設定してもよい。{P0 i}si∈Sは、P0 0=1、P0 i=0(i≠0)とする。これは、初期障害発生モデルM0が正常状態s0から開始することを意味する。
Be described in detail early failure model M 0 initial
{Pr(ej|si)}si∈S,ej∈Σは、イベントと原因との対応関係を示しており、状態Siでイベントejが発生する確率を示す。{Pr(ej|si)}si∈S,ej∈Σは、
Pr(e|s)=k×p (f(e)=sのとき)
Pr(e|s)=p (f(e)≠sのとき)
と定義する。ただし、kは1以上の定数である。また、全てのs∈S∪{s0}について、Σ{e|f(e)=s}k×p+Σ{e|f(e)≠s}p≦1である。上記定義は、基本モデル定義20で定義されたf(e)=s、すなわち、イベントeの発生原因sについては、sからeが発生する確率を、f(e)≠sの場合確率pのk倍に設定することを示している。関数fが部分関数で、f(e)が定義されていないeの場合には、上記定義に従って、f(e|s)には、確率pを与える。
{Pr (e j | s i )} siεS, ejεΣ indicates the correspondence between the event and the cause, and indicates the probability that the event e j will occur in the state S i . {Pr (e j | s i )} si∈S, ej∈Σ is
Pr (e | s) = k × p (when f (e) = s)
Pr (e | s) = p (when f (e) ≠ s)
It is defined as However, k is a constant of 1 or more. In addition, for all sεS∪ {s 0 }, Σ {e | f (e) = s} k × p + Σ {e | f (e) ≠ s} p ≦ 1. In the above definition, f (e) = s defined in the
管理者は、オンライン又はオフラインで、学習用イベント列100を障害原因推定装置10に与える(ステップA3)。管理者は、例えば監視対象装置80を試運転した際にイベントモニタ90がモニタしたイベント列を、オフラインで、学習用イベント列100として与える。または、監視対象装置80の運用中にイベントモニタ90がモニタしたイベント列のうちで、障害原因解析が既に行われたイベント列を、オンラインで、学習用イベント列100として与える。
The administrator gives the event sequence for learning 100 to the failure
イベント列パーザ130は、与えられた学習用イベント列100から、他のモジュールで解釈可能なイベントデータを生成し、イベント列データベース140に格納する。イベント列パーザ130は、イベントデータを生成する際に、学習用イベント列100を、所定の条件で、複数のイベントの列に分割する。図4は、イベント列の分割の様子を示している。イベント列パーザ130は、イベントの発生間隔が所定のしきい値Tよりも大きいと、イベント列を分割する。具体的には、例えば、イベント列(e(0),…,e(n))があるとき、イベントe(i)の発生時刻と、e(i+1)の発生時刻との間の時間がしきい値Tよりも長いと、イベント列(e(0),…,e(n))を、イベントリージョンR0:(e(0),…,e(i))と、イベントリージョンR1:(e(i+1),…,e(n))とに分割する。このことは、イベントリージョン内では、イベント発生間隔がしきい値T以下であり、イベントリージョン間のイベント発生間隔はしきい値Tよりも大きいことを意味している。なお、ここでのイベントe(i)は、イベントタイプ(イベントの種別)ではなくイベントそのものである。
The
再び図2に戻り、Baum−Welch計算手段50は、Baum−Welchアルゴリズムにより、イベント列パーザ130から入力した学習用イベント列100のイベントリージョンを用いて、初期モデル生成手段40が生成した初期障害発生モデルM0の学習を行う。Baum−Welch計算手段50は、与えられた学習対象のイベント列(イベントリージョン)に対して、最も確率を高くするモデルM={Σ,S∪{s0},{Pr(sj|si)}si,sj∈S,{P0 i}si,sj∈S,{Pr(ej|si)}si∈S,ej∈Σ}の遷移確率{Pr(sj|si)}si,sj∈Sと、イベントの発生確率{Pr(ej|si)}si∈S,ej∈Σとを求める。ただし、最適な値を求めるのではなく、初期モデルM0に対して、そこから局所解を求める最尤法である。Baum−Welchアルゴリズムは、例えば「“Statistical Methods for Speech Recognition (Language, Speech, and Communication)” (Frederick Jelinek著) 9.3節」にも記載されるようによく知られたアルゴリズムであり、その詳細な説明は省略する。
Returning to FIG. 2 again, the Baum-Welch calculation means 50 generates an initial failure generated by the initial model generation means 40 using the event region of the
Baum−Welch計算手段50は、初期障害発生モデルM0の遷移確率{Pr(sj|si)}si,sj∈S及びイベントの発生確率{Pr(ej|si)}si∈S,ej∈Σを、それぞれ学習により求めた遷移確率及びイベントの発生確率に置き換えた障害発生モデルM’を生成し、モデル格納データベース120に格納する(ステップA4)。ここまでが、障害発生モデル生成フェーズである。以降、このようにして得た障害発生モデルM’を使用して、障害の根源的な原因を推定する。 The Baum-Welch calculation means 50 determines the transition probability {Pr (s j | s i )} si, sj∈S and the event occurrence probability {Pr (e j | s i )} si∈S of the initial failure occurrence model M 0. , Ε∈Σ is replaced with the transition probability and event occurrence probability obtained by learning, respectively, and a failure occurrence model M ′ is generated and stored in the model storage database 120 (step A4). Up to this point is the failure occurrence model generation phase. Thereafter, the root cause of the fault is estimated using the fault occurrence model M ′ thus obtained.
図5は、障害原因を推定する際の障害原因推定装置10の動作手順を示している。管理者は、オンラインで、イベントモニタ90が監視対象装置80で観察したイベント列を、障害原因発見用イベント列110として障害原因推定装置10に与える(ステップB1)。イベント列パーザ130は、与えられた障害原因発見用イベント列110を、複数のイベントリージョン(図4)に分割し、イベント列データベース140を介して、Viterbi計算手段60に受け渡す。
FIG. 5 shows an operation procedure of the failure
Viterbi計算手段60は、Viterbiアルゴリズムにより、モデル格納データベース120に格納された、図2に示す手順で学習された障害発生モデルM’に対して、入力された障害原因発見用イベント110(イベントリージョン)を実現する可能性(尤度)が最も高い原因の順序列(s(0),s(1),s(2),..,s(n))を求める(ステップB2)。原因順序列中のs(i)は、原因の種類を示すのではなく、原因の状態遷移列を時間順に示したものであり、括弧内の数字は時間順に割り当てたものである。Viterbiアルゴリズムは、例えば、「“Statistical Methods for Speech Recognition (Language, Speech, and Communication)” (Frederick Jelinek著) 5章」などにも記述されているように、一般によく知られたアルゴリズムであり、ここでは、その詳細な説明は省略する。
The Viterbi calculation means 60 uses the Viterbi algorithm to input the failure cause discovery event 110 (event region) for the failure occurrence model M ′ learned in the procedure shown in FIG. 2 and stored in the
フィルタリングモジュール70は、Viterbi計算手段60が求めた原因の順序列(s(0),s(1),s(2),..,s(n))を、この順序列の隣接する2つの状態間の状態遷移確率Pr(si+1|si)に基づいて、複数のグループに分割する(ステップB3)。例えば、Pr(s(q+1)|s(q))<Lであれば、(s(0),s(1)・・・,s(q))と(s(q+1),・・・,s(n))とに分割する。分割の判断となる確率Lは、0〜1までの間のしきい値であり、比較的小さい確率値である。このように分割するのは、異なる根源原因による2つのシーケンスがある場合に、たまたま確率的に最大値であるために1つのシーケンスとしてみなされている可能性があるからである。そこで、フィルタリングモジュール70により、遷移確率がしきい値Lよりも低いシーケンスは、確率的にシーケンスではなく、たまたま時系列的に重なっているものとみなして、分割する。
The
フィルタリングモジュール70は、分割されたシーケンス(原因の順序列)を、原因推定結果データベース150に格納する。また、分割されたシーケンスのうちの先頭を、根源的な原因として推定する。フィルタリングモジュール70は、原因推定結果データベース150に、原因の順序列を格納する際に、各原因に対応するイベントを、各原因に対応付けて、原因推定結果データベース150に格納する。例えば、根源的な原因がSiであった場合には、障害原因発見用イベント列110(e(0),e(1),・・・,e(n))のうちで、基本モデル定義20で障害原因Siに対応付けられているイベントを、障害原因Siに対応付けて原因推定結果データベース150に格納する。
The
以下、具体例を用いて説明する。基本モデル定義20としては、図3に示したものを考える。初期モデル生成手段40が生成する初期障害発生モデルM0で扱うイベントの集合Σは、
Σ={3,4,16,17,18,19,20}
=>{e0,e1,e2,e3,e4,e5,e6}
である。状態の集合は、
S∪{s0}={s0,“Print”,“Windows Update Agent”,“W32Time”,“Application Popup”,“i8042prt”,“Windows Installer”,“DHCP”,“Browser”,“Tcpip”}
=>{s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10}
である。原因間の遷移確率{Pr(sj|si)}si,sj∈Sは、状態数が計10個であるため、
Pr(sj|si)=1/10
である。初期確率は、P0 0=1、P0 i=0(i≠0)である。図3では、イベントの種類が7種類あるとする。この場合、イベント発生確率は、
Pr(e|s)=2/8 (f(e)=sのとき)
Pr(e|s)=1/8 (f(e)≠sのとき)
である。
Hereinafter, a specific example will be described. As the
Σ = {3, 4, 16, 17, 18, 19, 20}
=> {E 0 , e 1 , e 2 , e 3 , e 4 , e 5 , e 6 }
It is. The set of states is
S∪ {s 0 } = {s 0 , “Print”, “Windows Update Agent”, “W32Time”, “Application Popup”, “i8042prt”, “Windows Installer”, “DHCP”, “Browser”, “Tcpip” }
=> {S 0 , s 1 , s 2 , s 3 , s 4 , s 5 , s 6 , s 7 , s 8 , s 9 , s 10 }
It is. Since the transition probability between causes {Pr (s j | s i )} si, sj∈S has a total of 10 states,
Pr (s j | s i ) = 1/10
It is. The initial probabilities are P 0 0 = 1 and P 0 i = 0 (i ≠ 0). In FIG. 3, it is assumed that there are seven types of events. In this case, the event occurrence probability is
Pr (e | s) = 2/8 (when f (e) = s)
Pr (e | s) = 1/8 (when f (e) ≠ s)
It is.
学習用イベント列100を、{e(0), .., e(n)}とする。このe(i)は、イベントタイプではなく、イベントそのものであり、発生時刻が記録されている。このイベント列では、e(i)とe(i+1)の発生時刻の差が2秒であり、他のイベントの発生時刻の差は全て1秒以下とする。イベント列パーザ130がイベント列を複数のリージョンに分割する際のしきい値Tを1秒とすると、学習用イベント列100は、R1={e(0)、・・・、e(i)}と、R2={e(i+1)、・・・、e(n)}とに分割される。Baum−Welch計算手段50は、R1、R2を含む多くのイベントリージョンを与えられることで、初期障害発生モデルM0から、遷移確率Pr(sj|si)とイベント発生確率Pr(e|s)とに関して、与えられたイベントリージョンを最も発生する確率を学習し、障害発生モデルM’を得る。
Let the
Viterbi計算手段60は、学習された障害発生モデルM’に対して、障害原因発見用イベント列110のイベントリージョンを実現する可能性が最も高い原因の順序列(シーケンス)を求める。フィルタリングモジュール70は、Viterbi計算手段60が求めた原因の順序列を、障害発生モデルM’の原因間の状態遷移確率に基づいて分割し、分割された各順序列を、原因推定結果データベース150に格納する。その際、障害原因発見用イベント列110のうちで、各原因に対応するイベントを、障害原因に対応付けて、原因推定結果データベース150に格納する。管理者は、原因推定結果データベース150に格納された情報を参照することで、根源的な原因が何かを推定する。
The Viterbi calculation means 60 obtains a sequence of causes that is most likely to realize the event region of the failure cause
図6は、原因推定結果データベース150に格納された情報の具体例を示す。同図では、stateで示される部分が原因に対応している。また、stateの{ }内が、その原因に対応するイベントを示している。この例では、原因の順序列は、下から上へと遷移しており、Tcpipが根源的な原因であると推定される。管理者は、原因推定結果データベース150に格納された情報を参照することで、TCP/IPプロトコルスタックエラーが、 “Browser”、“Dhcp”、“Windows Installer 3.1”などの障害原因を引き起こしていることを知ることができる。
FIG. 6 shows a specific example of information stored in the cause
本実施形態では、イベントとその原因との対応関係を与えて障害発生モデルを生成し、その障害発生モデルに、監視対象装置80で観察されたイベント列を与えて、イベント列の遷移から、原因の順序列を求める。このようにして求めた原因の順序列を、原因間の遷移確率に基づいて分割することで、原因の遷移の元となる、障害の根源的な原因を推定することができる。また、本実施形態では、障害発生原因間の関係は、学習用イベント列100を初期障害発生モデルに与えることで得られ、人手で、原因間の依存関係を定義する必要がない。本実施形態では、初期障害発生モデルの生成に際して、イベントとその発生原因とを定義すればよく、イベントとその発生原因との関係は、比較的記述が容易であるため、簡易に、障害の根源的な原因を推定することができる。
In this embodiment, a failure occurrence model is generated by giving a correspondence relationship between an event and its cause, an event sequence observed by the
以上、本発明をその好適な実施形態に基づいて説明したが、本発明の障害原因推定システム、方法、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。 As described above, the present invention has been described based on the preferred embodiment. However, the failure cause estimation system, method, and program of the present invention are not limited to the above-described embodiment example, and the configuration of the above-described embodiment. To which various modifications and changes are made within the scope of the present invention.
本発明は、ネットワークやコンピュータシステムの障害監視システムの用途に適用できる。また、組み込みシステムの障害発見系の用途にも適用できる。 The present invention can be applied to the use of a fault monitoring system for a network or a computer system. It can also be applied to fault detection systems in embedded systems.
10:障害原因推定装置
20:基本モデル定義
30:初期モデルパーザ
40:初期モデル生成手段
50:Baum−Welch計算手段
60:Viterbi計算手段
70:フィルタリングモジュール
80:監視対象装置
90:イベントモニタ
100:学習用イベント列
110:障害原因発見用イベント列
120:モデル格納データベース
130:イベント列パーザ
140:イベント列データベース
150:原因推定結果データベース
10: Failure cause estimation device 20: Basic model definition 30: Initial model parser 40: Initial model generation means 50: Baum-Welch calculation means 60: Viterbi calculation means 70: Filtering module 80: Monitoring target device 90: Event monitor 100: Learning Event sequence 110: failure cause discovery event sequence 120: model storage database 130: event sequence parser 140: event sequence database 150: cause estimation result database
Claims (23)
前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶する障害発生モデル学習手段と、
イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶する状態遷移列計算手段と、
前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するフィルタリングモジュールとを備えることを特徴とする障害原因推定システム。 A basic model definition that defines an event that can occur in the monitoring target device and a cause of failure that causes the event is read, and based on the read basic model definition, the correspondence between the event and the cause of the occurrence and between the causes An initial model generation means for generating an initial failure occurrence model in which transitions are modeled by a finite automaton and storing the model in a model storage database;
Based on the initial failure occurrence model and the event sequence for learning stored in the event sequence database, the probability that the state of the finite automaton corresponding to the cause has changed is learned, and the result of the learning is reflected A failure occurrence model learning means for storing a failure occurrence model in a model storage database;
Read the failure cause finding event sequence from the event sequence database, obtain the state transition sequence that is considered to have the highest probability that the read failure cause finding event sequence is observed in the learned failure occurrence model, and estimate the cause A state transition sequence calculating means for storing in the result database;
A filtering module that estimates a root cause of a failure that has occurred in a monitoring target device based on the state transition sequence obtained by the state transition sequence calculation unit and the failure occurrence model after learning; Failure cause estimation system.
前記コンピュータが、前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、
前記コンピュータが、前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、
前記コンピュータが、イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、
前記コンピュータが、前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを有することを特徴とする方法。 A method for estimating the root cause of a failure that has occurred in a monitored device using a computer,
The computer reads a basic model definition that defines an event that can occur in the monitoring target device and a cause of failure that causes the event, and based on the read basic model definition, a correspondence relationship between the event and the cause of the event And generating an initial failure occurrence model in which transition between occurrence causes is modeled with a finite automaton and storing it in a model storage database;
Based on the initial failure occurrence model and the learning event sequence stored in the event sequence database, the computer learns at what probability the state of the finite automaton corresponding to the cause has changed, and results of the learning Storing in the model storage database a failure occurrence model that reflects
The computer reads a failure cause finding event sequence from the event sequence database, and a state transition sequence that is considered to have the highest probability that the read failure cause finding event sequence is observed in the failure occurrence model after learning. Determining and storing in a cause estimation result database;
The computer has a step of estimating a root cause of a failure that has occurred in the monitoring target device based on the state transition sequence obtained by the state transition sequence calculation means and the failure occurrence model after learning. A method characterized by.
前記コンピュータが、前記状態遷移列を計算するステップで求めた状態遷移列を{s(0)、s(1)、・・・、s(n)}とするとき、状態s(i)(0≦i<n)から次状態s(i+1)への前記条件付確率Pr(s(i+1)|s(i))が、所定の確率よりも低いと、前期状態遷移列を、{s(0)、s(1)、・・・、s(i)}と、{s(i+1)、・・・、s(n)}とに分割するステップと、
前記コンピュータが、前記分割された各状態遷移列の先頭の状態を、障害の根源的原因と推定するステップとを含む、請求項15に記載の方法。 Estimating the root cause of the disorder comprises
When the computer determines {s (0), s (1),..., S (n)} as the state transition sequence obtained in the step of calculating the state transition sequence, the state s (i) (0 If the conditional probability Pr (s (i + 1) | s (i)) from ≦ i <n) to the next state s (i + 1) is lower than a predetermined probability, the previous state transition sequence is represented as {s (0 ), S (1),..., S (i)} and {s (i + 1),.
The method according to claim 15, further comprising estimating the state at the head of each of the divided state transition sequences as a root cause of a failure.
前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、
前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、
イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、
前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを実行させることを特徴とするプログラム。 A program for causing a computer to execute a method for estimating a root cause of a failure that has occurred in a monitored device, the computer comprising:
A basic model definition that defines an event that can occur in the monitoring target device and a failure cause that causes the event is read, and the correspondence between the event and the cause of the occurrence and between the occurrence causes based on the read basic model definition Generating an initial failure model in which transitions of the above are modeled by a finite automaton and storing them in a model storage database;
Based on the initial failure occurrence model and the event sequence for learning stored in the event sequence database, the probability that the state of the finite automaton corresponding to the cause has changed is learned, and the result of the learning is reflected Storing a failure occurrence model in a model storage database;
Read the failure cause finding event sequence from the event sequence database, obtain the state transition sequence that is considered to have the highest probability that the read failure cause finding event sequence is observed in the learned failure occurrence model, and estimate the cause Storing in the results database;
Performing a step of estimating a root cause of a failure that has occurred in a monitoring target device based on the state transition sequence obtained by the state transition sequence calculating means and the failure occurrence model after learning. Program to do.
前記状態遷移列を計算するステップで求めた状態遷移列を{s(0)、s(1)、・・・、s(n)}とするとき、状態s(i)(0≦i<n)から次状態s(i+1)への前記条件付確率Pr(s(i+1)|s(i))が、所定の確率よりも低いと、前期状態遷移列を、{s(0)、s(1)、・・・、s(i)}と、{s(i+1)、・・・、s(n)}とに分割するステップと、
前記分割された各状態遷移列の先頭の状態を、障害の根源的原因と推定するステップとを含む、請求項21に記載のプログラム。 Estimating the root cause of the disorder comprises
When the state transition sequence obtained in the step of calculating the state transition sequence is {s (0), s (1),..., S (n)}, the state s (i) (0 ≦ i <n ) To the next state s (i + 1) when the conditional probability Pr (s (i + 1) | s (i)) is lower than a predetermined probability, the previous state transition sequence is expressed as {s (0), s ( 1), ..., s (i)} and {s (i + 1), ..., s (n)},
The program according to claim 21, further comprising: estimating a leading state of each of the divided state transition sequences as a root cause of a failure.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079266A JP4862446B2 (en) | 2006-03-22 | 2006-03-22 | Failure cause estimation system, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079266A JP4862446B2 (en) | 2006-03-22 | 2006-03-22 | Failure cause estimation system, method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007257184A true JP2007257184A (en) | 2007-10-04 |
JP4862446B2 JP4862446B2 (en) | 2012-01-25 |
Family
ID=38631394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006079266A Expired - Fee Related JP4862446B2 (en) | 2006-03-22 | 2006-03-22 | Failure cause estimation system, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4862446B2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008160323A (en) * | 2006-12-21 | 2008-07-10 | Fuji Xerox Co Ltd | Image forming apparatus, sign diagnostic apparatus, sign diagnostic system, and sign diagnostic program |
WO2010131746A1 (en) * | 2009-05-15 | 2010-11-18 | 日本電気株式会社 | Fault cause estimation system, fault cause estimation method, and fault cause estimation program |
WO2011161835A1 (en) * | 2010-06-21 | 2011-12-29 | 株式会社日立製作所 | Method and device for causal analysis of configuration changes |
JP2013020591A (en) * | 2011-07-14 | 2013-01-31 | Kddi Corp | Dependency graph creation device, failure occurrence location diagnosis system, failure occurrence location diagnosis method and computer program |
WO2013046287A1 (en) * | 2011-09-26 | 2013-04-04 | 株式会社日立製作所 | Management computer and method for analysing root cause |
WO2013168495A1 (en) * | 2012-05-10 | 2013-11-14 | 日本電気株式会社 | Hierarchical probability model generating system, hierarchical probability model generating method, and program |
US8612372B2 (en) | 2008-08-29 | 2013-12-17 | International Business Machines Corporation | Detection rule-generating facility |
US8751874B2 (en) | 2010-12-10 | 2014-06-10 | Fujitsu Limited | Managing apparatus, managing method |
JP2020149208A (en) * | 2019-03-12 | 2020-09-17 | 株式会社日立製作所 | Anomaly detection device and anomaly detection method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04359640A (en) * | 1991-06-04 | 1992-12-11 | Toshiba Corp | Method of diagnosing abnormal cause |
JPH0721029A (en) * | 1993-07-05 | 1995-01-24 | Komatsu Ltd | Inference device |
JPH08221295A (en) * | 1995-02-13 | 1996-08-30 | Mitsubishi Electric Corp | Fault supporting device |
JPH08292811A (en) * | 1995-04-24 | 1996-11-05 | Nec Corp | Method and device for diagnosing fault |
JP2005141459A (en) * | 2003-11-06 | 2005-06-02 | Nec Corp | Abnormal behavior detection device, method, and program, and device for calculating rare behavior partial series |
-
2006
- 2006-03-22 JP JP2006079266A patent/JP4862446B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04359640A (en) * | 1991-06-04 | 1992-12-11 | Toshiba Corp | Method of diagnosing abnormal cause |
JPH0721029A (en) * | 1993-07-05 | 1995-01-24 | Komatsu Ltd | Inference device |
JPH08221295A (en) * | 1995-02-13 | 1996-08-30 | Mitsubishi Electric Corp | Fault supporting device |
JPH08292811A (en) * | 1995-04-24 | 1996-11-05 | Nec Corp | Method and device for diagnosing fault |
JP2005141459A (en) * | 2003-11-06 | 2005-06-02 | Nec Corp | Abnormal behavior detection device, method, and program, and device for calculating rare behavior partial series |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4618245B2 (en) * | 2006-12-21 | 2011-01-26 | 富士ゼロックス株式会社 | Predictive diagnostic device, predictive diagnostic program |
JP2008160323A (en) * | 2006-12-21 | 2008-07-10 | Fuji Xerox Co Ltd | Image forming apparatus, sign diagnostic apparatus, sign diagnostic system, and sign diagnostic program |
US8612372B2 (en) | 2008-08-29 | 2013-12-17 | International Business Machines Corporation | Detection rule-generating facility |
JP5489085B2 (en) * | 2009-05-15 | 2014-05-14 | 日本電気株式会社 | Failure cause estimation system, failure cause estimation method, and failure cause estimation program |
WO2010131746A1 (en) * | 2009-05-15 | 2010-11-18 | 日本電気株式会社 | Fault cause estimation system, fault cause estimation method, and fault cause estimation program |
US8484514B2 (en) | 2009-05-15 | 2013-07-09 | Nec Corporation | Fault cause estimating system, fault cause estimating method, and fault cause estimating program |
WO2011161835A1 (en) * | 2010-06-21 | 2011-12-29 | 株式会社日立製作所 | Method and device for causal analysis of configuration changes |
JP2012003647A (en) * | 2010-06-21 | 2012-01-05 | Hitachi Ltd | Method and apparatus for cause analysis configuration change |
US8751874B2 (en) | 2010-12-10 | 2014-06-10 | Fujitsu Limited | Managing apparatus, managing method |
JP2013020591A (en) * | 2011-07-14 | 2013-01-31 | Kddi Corp | Dependency graph creation device, failure occurrence location diagnosis system, failure occurrence location diagnosis method and computer program |
JPWO2013046287A1 (en) * | 2011-09-26 | 2015-03-26 | 株式会社日立製作所 | Management computer and method for analyzing root cause |
WO2013046287A1 (en) * | 2011-09-26 | 2013-04-04 | 株式会社日立製作所 | Management computer and method for analysing root cause |
WO2013168495A1 (en) * | 2012-05-10 | 2013-11-14 | 日本電気株式会社 | Hierarchical probability model generating system, hierarchical probability model generating method, and program |
JPWO2013168495A1 (en) * | 2012-05-10 | 2016-01-07 | 日本電気株式会社 | Hierarchical probability model generation system, hierarchical probability model generation method, and program |
US10163060B2 (en) | 2012-05-10 | 2018-12-25 | Nec Corporation | Hierarchical probability model generation system, hierarchical probability model generation method, and program |
JP2020149208A (en) * | 2019-03-12 | 2020-09-17 | 株式会社日立製作所 | Anomaly detection device and anomaly detection method |
CN111693794A (en) * | 2019-03-12 | 2020-09-22 | 株式会社日立制作所 | Abnormality detection device and abnormality detection method |
JP7072531B2 (en) | 2019-03-12 | 2022-05-20 | 株式会社日立製作所 | Anomaly detection device and anomaly detection method |
CN111693794B (en) * | 2019-03-12 | 2022-08-30 | 株式会社日立制作所 | Abnormality detection device and abnormality detection method |
Also Published As
Publication number | Publication date |
---|---|
JP4862446B2 (en) | 2012-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4862446B2 (en) | Failure cause estimation system, method, and program | |
US8484514B2 (en) | Fault cause estimating system, fault cause estimating method, and fault cause estimating program | |
US20200258057A1 (en) | Repair management and execution | |
US9842302B2 (en) | Population-based learning with deep belief networks | |
US8938406B2 (en) | Constructing a bayesian network based on received events associated with network entities | |
US7349826B2 (en) | Causal ladder mechanism for proactive problem determination, avoidance and recovery | |
JP4609368B2 (en) | Fault diagnosis model generation apparatus, fault diagnosis system, and fault diagnosis model generation program | |
US20070028219A1 (en) | Method and system for anomaly detection | |
US20070028220A1 (en) | Fault detection and root cause identification in complex systems | |
JP2008146591A (en) | Abnormality indication detecting device and method | |
US20100115341A1 (en) | Computing diagnostic explanations of network faults from monitoring data | |
JP5880866B2 (en) | Method, system, and program for failure tree analysis of runtime system | |
US11415975B2 (en) | Deep causality learning for event diagnosis on industrial time-series data | |
JP5413240B2 (en) | Event prediction system, event prediction method, and computer program | |
CN111459692B (en) | Method, apparatus and computer program product for predicting drive failure | |
JP7283485B2 (en) | Estimation device, estimation method, and program | |
Daigle | A qualitative event-based approach to fault diagnosis of hybrid systems | |
Peng et al. | Mining logs files for data-driven system management | |
Strasser et al. | Diagnostic alarm sequence maturation in timed failure propagation graphs | |
Windmann | Data-driven fault detection in industrial batch processes based on a stochastic hybrid process model | |
US11243835B1 (en) | Message-based problem diagnosis and root cause analysis | |
CN114547318A (en) | Fault information acquisition method, device, equipment and computer storage medium | |
JP5191064B2 (en) | Inference method and apparatus for indeterminate and inconsistent ontologies for specific queries | |
EP1545054A1 (en) | System and method for selecting measurements of a communication network | |
EP4134872A1 (en) | Method for automatically detecting anomalies in log files |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20100223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100720 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110401 |
|
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: 20111011 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111024 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141118 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4862446 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |