JP2007257184A - Obstacle factor estimation system, method and program - Google Patents

Obstacle factor estimation system, method and program Download PDF

Info

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
Application number
JP2006079266A
Other languages
Japanese (ja)
Other versions
JP4862446B2 (en
Inventor
Toshio Touchi
敏夫 登内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2006079266A priority Critical patent/JP4862446B2/en
Publication of JP2007257184A publication Critical patent/JP2007257184A/en
Application granted granted Critical
Publication of JP4862446B2 publication Critical patent/JP4862446B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an obstacle factor estimation system for estimating the fundamental factor of an obstacle without further defining by manpower complicated dependency. <P>SOLUTION: An initial model generation means 40 generates an initial obstacle generation model by modeling the correspondence relation of an event and the occurrence factor and inter-occurrence factor transition by a finite automaton based on basic model definition 20. A Baum-Welch calculation means 50 learns which probability has resulted in the transition of the status of the finite automaton corresponding to the factor, based on the initial model occurrence model and an event column 100 for learning. A Viterbi calculation means 60 searches the status transition column in which the possibility of the observation of an event column 110 for obstacle factor discovery is judged to be the highest by an obstacle occurrence model after learning. A filtering module estimates the fundamental factor of the obstacle which has occurred in a monitor object device from the status transition column. <P>COPYRIGHT: (C)2008,JPO&INPIT

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 Patent Document 1. In the conventional failure cause detection apparatus 200, the process information acquisition unit 201 acquires process information executed on the computer system, and the environment file information acquisition unit 202 acquires system environment file information. Further, the device information acquisition unit 203 acquires information on device drivers incorporated in the computer system.

基準環境情報獲得部204は、計算機システムが正常動作しているときに、プロセス情報獲得部201、環境ファイル情報獲得部202、及び、デバイス情報獲得部203が獲得した各情報を収集し、これを基準環境情報記憶部205に記憶する。検査環境情報獲得部206は、計算機システムに異常が発生したか否かを検出する際に、プロセス情報獲得部201、環境ファイル情報獲得部202、及び、デバイス情報獲得部203が獲得した各情報を収集し、これを検査環境情報記憶部207に記憶する。   The reference environment information acquisition unit 204 collects each information acquired by the process information acquisition unit 201, the environment file information acquisition unit 202, and the device information acquisition unit 203 when the computer system is operating normally. The information is stored in the reference environment information storage unit 205. When the inspection environment information acquisition unit 206 detects whether or not an abnormality has occurred in the computer system, each information acquired by the process information acquisition unit 201, the environment file information acquisition unit 202, and the device information acquisition unit 203 is obtained. Collected and stored in the inspection environment information storage unit 207.

環境情報比較判定部209は、基準環境情報記憶部205の内容と検査環境情報記憶部207の内容とを比較し、状態内容変化を見つけ出す。環境情報比較判定部209は、状態変化内容が、状態内容変化の許容値を記憶する許容範囲情報記憶部208を参照して、見つけ出した状態内容変化が、許容される範囲を超えるか否かを判断する。異常原因特定部211は、環境情報比較判定部209が許容される範囲を超えると判断すると、状態変化内容から、計算機システムの異常発生原因を特定する。   The environment information comparison / determination unit 209 compares the contents of the reference environment information storage unit 205 and the contents of the inspection environment information storage unit 207 to find a state content change. The environmental information comparison / determination unit 209 refers to the allowable range information storage unit 208 in which the state change content stores the allowable value of the state content change, and determines whether or not the found state content change exceeds the allowable range. to decide. When the abnormality cause identifying unit 211 determines that the environment information comparison / determination unit 209 exceeds the allowable range, the abnormality cause identifying unit 211 identifies the cause of the abnormality of the computer system from the state change content.

例えば、基準環境情報記憶部205には、「実行中のプロセスは、nfsが1個」が記憶される。また、許容範囲情報記憶部208には、マウントデバイスの追加が許可される状況に対応して、プロセス“nfs”について、実行中のプロセスの最大値が“8個”である旨を記憶している。この場合に、検査環境情報獲得部206によって、マウントデバイスの追加が許可された状況で、「実行中のプロセスは、nfsが11個」という状態が検出されると、環境情報比較判定部209は、許容された範囲を超えると判定し、異常を検出する。異常原因特定部211は、計算機システムで異常が検出された原因を、プロセス“nfs”が許容プロセス数を超えたためと特定する。   For example, the reference environment information storage unit 205 stores “the process being executed has one nfs”. Further, the allowable range information storage unit 208 stores that the maximum value of the process being executed is “8” for the process “nfs” corresponding to the situation where the addition of the mount device is permitted. Yes. In this case, when the inspection environment information acquisition unit 206 permits the addition of the mount device and detects a state that “the process being executed has 11 nfs”, the environment information comparison determination unit 209 It is determined that the allowable range is exceeded, and an abnormality is detected. The abnormality cause identifying unit 211 identifies the cause of the abnormality being detected in the computer system because the process “nfs” has exceeded the allowable number of processes.

従来の障害原因を推定するシステムの別の例としては、特許文献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 generation storage unit 311 which is a database representing a causal relationship, a causal data generation storage unit 312 which is a reverse mapping thereof, a plurality of events correspond to one event group, or a plurality of events A causal system model construction device that maps the relationship between a cause group and an event group by a partial causal system model configuration unit 314 using the same result data set generation unit 313 that records a relationship that causes each cause to correspond to one cause group Build 300.

図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 model storage unit 324 stores the causal system model constructed by the causal system model construction apparatus 300 (FIG. 8). The cause estimation device 320 applies the cause mapping from the events of the causal system model stored in the causal system model storage unit 324 from the events recognized by the observation data recognition unit 321 to obtain the cause of the failure. Further, by applying the mapping from the cause to the event, an event that can occur from the cause is obtained. In this way, by applying the mapping from the event to the cause and the mapping from the cause to the event in a transitive manner to obtain transitive closure, the cause including a possible root cause is transitively obtained.

また、システムのトラブルシューティングを行う自動トラブルシュート機構に関する技術として、特許文献3に記載された技術がある。特許文献3では、変数を表すノードと変数間の依存関係を表すアークからなる方向を持った非環式グラフであるベイジアンネットワークで、システムの故障を引き起こすシステムコンポーネントをモデル化し、このモデルを用いて、プリンタシステムの自動診断を行う。   Further, as a technique related to an automatic troubleshooting mechanism for troubleshooting a system, there is a technique described in Patent Document 3. In Patent Document 3, a system component that causes a system failure is modeled in a Bayesian network, which is an acyclic graph having a direction composed of nodes representing variables and arcs representing dependencies between variables, and this model is used. Automatic diagnosis of the printer system.

特開平8−255093号公報(段落0013〜0031、図1)JP-A-8-255093 (paragraphs 0013 to 0031, FIG. 1) 特開2004−126641号公報Japanese Patent Laid-Open No. 2004-126641 特開2001−75808号公報JP 2001-75808 A

特許文献1では、状態内容変化を検出し、検出した状態内容変化が、許容される範囲を超えるときには、状態変化内容から、計算機システムの異常発生原因を特定している。しかし、特許文献1で特定できるのは、直接の状態のみであり、ある障害が発生したことに起因して異常状態となったような場合には、その根源となる障害を特定することはできない。   In Patent Document 1, a state content change is detected, and when the detected state content change exceeds an allowable range, the cause of the abnormality in the computer system is specified from the state change content. However, in Patent Document 1, only a direct state can be specified, and in the case where an abnormal state occurs due to the occurrence of a certain failure, the root failure cannot be specified. .

例えば、「マウントデバイスの追加が許可される」状況における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 Patent Document 1, it is specified as a cause of failure that the number of nfs processes exceeds an allowable value.

しかしながら、上記の場合、本来の故障原因は、「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 Patent Document 1, for a failure that occurs transitively, for example, a failure C that is caused directly by the failure B and that is caused directly by the failure B, only the direct failure C can be specified. There is a problem that failure A cannot be specified.

また、特許文献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 Patent Document 3, DAG (a graph without a loop) is used for fault modeling. When a failure occurs, an event often occurs repeatedly from the same failure. However, since Patent Document 3 uses a DAG, there is a problem that an event that occurs repeatedly cannot be handled.

本発明は、上記従来技術の問題点を解消し、人手により複雑な依存関係を定義しなくても、障害の根源的な原因を推定できる障害原因推定システム、方法、及び、プログラムを提供することを目的とする。   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に正常状態sを加えた状態の集合と、各状態について、当該状態から各状態に遷移する確率を示す条件付確率Pr(sj|si)si,sj∈Sと、各状態について、開始時に当該状態にいる初期確率{P0 sisi∈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 estimation apparatus 10 includes an initial model parser 30, an initial model generation means 40, a Baum-Welch calculation means 50, a Viterbi calculation means 60, a filtering module 70, a model storage database 120, an event string parser 130, an event string database 140, a cause An estimation result database 150 is provided. The failure cause estimation device 10 is configured by a computer system such as a workstation, for example, and functions of each unit are realized by operating a predetermined program.

初期モデルパーザ30は、装置開発者が記述した基本モデル定義20を読み込み、それを構文解釈して構文情報を生成し、初期モデル生成手段40に受け渡す。基本モデル定義20は、監視対象装置80で発生し得るイベントと、それを引き起こす障害原因とを定義したものである。初期モデル生成手段40は、初期モデルパーザ30が生成した構文情報に基づいて、イベントとその発生原因の対応関係、及び、発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベース120に格納する。   The initial model parser 30 reads the basic model definition 20 described by the device developer, parses it, generates syntax information, and passes it to the initial model generation means 40. The basic model definition 20 defines an event that can occur in the monitoring target device 80 and a failure cause that causes the event. Based on the syntax information generated by the initial model parser 30, the initial model generation means 40 generates an initial failure occurrence model in which the correspondence relationship between events and their occurrence causes, and transitions between occurrence causes are modeled by a finite automaton. And stored in the model storage database 120.

イベントモニタ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 monitoring target device 80 and generates a learning event sequence 100 and a failure cause discovery event sequence 110. The event sequence parser 130 parses the learning event sequence 100 and the failure cause discovery event sequence 110 to generate event data and store it in the event sequence database 140. The Baum-Welch calculating means 50 includes an initial failure occurrence model stored in the model storage database 120 and event data corresponding to the learning event sequence 100 stored in the event sequence database 140 (hereinafter, simply referred to as the learning event sequence 100). And the probability that the state of the finite automaton corresponding to the cause has changed, and the failure occurrence model reflecting the learning result is stored in the model storage database 120.

Viterbi計算手段60は、モデル格納データベース120に格納された障害発生モデルと、イベント列データベース140に格納された障害原因発見用イベント列110に対応するイベントデータ(以下、単に障害発見用イベント列とも呼ぶ)とを用いて、最も発生確率が高い障害発生モデルの状態遷移列を求め、フィルタリングモジュール70に出力する。その際、Viterbi計算手段60は、状態遷移列を求める元となった障害原因発見用イベント列110を、あわせて出力する。   The Viterbi calculation means 60 is a failure occurrence model stored in the model storage database 120 and event data corresponding to the failure cause discovery event sequence 110 stored in the event sequence database 140 (hereinafter also simply referred to as a failure discovery event sequence). ) To obtain the state transition sequence of the failure occurrence model having the highest probability of occurrence and output it to the filtering module 70. At this time, the Viterbi calculation means 60 also outputs the failure cause discovery event sequence 110 that is the source for obtaining the state transition sequence.

フィルタリングモジュール70は、Viterbi計算手段60が求めた、最も発生したと推測される状態遷移列(障害原因の列)のうちで、確率的に低い遷移を切り捨て、もっともらしい遷移列を発見して、その遷移列の開始状態を根源的な原因と推定する。フィルタリングモジュール70は、推定した根源的な原因と、それに連なる派生原因とを含む原因列を、原因推定結果データベース150に格納する。また、その際、障害原因発見用イベント列110のうちで、根源的な原因及び派生原因を発生原因とするイベントを、各原因に対応付けて原因推定結果データベース150に格納する。管理者は、原因推定結果データベース150を参照することで、障害の発生原因等の解析を行う。   The filtering module 70 truncates a probabilistic low sequence from the state transition sequence (failure cause sequence) estimated by the Viterbi calculation means 60 and estimated to have occurred most, The starting state of the transition sequence is estimated as the root cause. The filtering module 70 stores in the cause estimation result database 150 a cause string that includes the estimated root cause and the derived causes that are related thereto. At that time, in the failure cause finding event sequence 110, the event having the root cause and the derived cause as the cause of occurrence is stored in the cause estimation result database 150 in association with each cause. The administrator refers to the cause estimation result database 150 to analyze the cause of the failure.

図2は、障害発生モデルを生成する際の障害原因推定装置10の動作手順を示している。初期モデルパーザ30は、装置開発者によって記述された基本モデル定義20を読み込み、読み込んだ基本モデル定義20を、初期モデル生成手段40が解釈可能な構文情報に変換する(ステップA1)。基本モデル定義20は、イベントの集合Σと、障害原因の集合Sと、関数f:Σ→Sで定義される。基本的に、関数fは全域関数であるが、部分関数でもよい。   FIG. 2 shows an operation procedure of the failure cause estimation device 10 when generating a failure occurrence model. The initial model parser 30 reads the basic model definition 20 described by the device developer, and converts the read basic model definition 20 into syntax information that can be interpreted by the initial model generation means 40 (step A1). The basic model definition 20 is defined by an event set Σ, a failure cause set S, and a function f: Σ → S. Basically, the function f is a global function, but may be a partial function.

図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 basic model definition 20. The basic model definition 20 is described in a text file as shown in FIG. In this example, a paragraph beginning with [states] assuming Windows (registered trademark) as the OS defines a set S of failure causes. In the example of FIG. 9, nine causes such as “Print” and “Application Popup” are defined. The paragraph beginning with [obsservations] defines a set of events Σ. In the event monitor tool “event viewer” of Windows (registered trademark), the event type is given by a numerical ID such as “3”, “4”, “16”, etc. Use that ID.

[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 initial model parser 30 reads such a text file and passes the syntax information corresponding to the described basic model definition 20 to the initial model generation means 40.

図2に戻り、初期モデル生成手段40は、基本モデル定義20に相当する構文情報に基づいて、初期障害発生モデルを生成する(ステップA2)。障害発生モデルMを次式で定義する。
M={Σ,S∪{s},{Pr(sj|si)}si,sj∈S,{P0 i}si∈S,{Pr(ej|si)}si∈S,ej∈Σ
Pr(a|b)は、条件付確率であり、bという条件下でaが発生する確率を示す。また、P は、障害発生モデルMが状態Sから開始する確率を示す。sは、監視対象装置80が正常である状態を示す。上記障害発生モデルMにおいて、「S∪{s},{Pr(sj|si)}si,sj∈S,{P0 i}si,sj∈S」は、有限状態オートマトンを表し、これは、次の状態s∈S∪{s}は、直前の状態S’∈S∪{s}のみで定まり、固定の確率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 monitoring target device 80 is normal. In the failure occurrence model M, “S∪ {s 0 }, {Pr (s j | s i )} si, sj∈S , {P 0 i } si, sj∈S ” represents a finite state automaton, This indicates that the next state s∈S∪ {s 0 } is determined only by the immediately preceding state S′∈S∪ {s 0 } and transitions with a fixed probability Pr (s | s ′). .

初期モデル生成手段40が生成する初期障害発生モデルMについて詳細に説明する。初期障害発生モデルMで扱うイベントの集合Σは、基本モデル定義20で定義したΣと同一である。また、初期障害発生モデルMで扱う原因の集合S∪{s}は、基本モデル定義20で定義したSに、正常状態sを加えた集合である。{Pr(sj|si)}si,sj∈Sは、原因間の遷移確率を示しており、この遷移確率は、等確率とする。具体的には、|S|を原因の集合Sの個数として、Pr(sj|si)=1/(|S|+1)とする。この確率を等確率にせずに、自身へ遷移する確率Pr(si|si)のみを大きくするなどして、定常状態になる確率を高く設定してもよい。{P0 i}si∈Sは、P =1、P =0(i≠0)とする。これは、初期障害発生モデルMが正常状態sから開始することを意味する。 Be described in detail early failure model M 0 initial model generating unit 40 generates. The set of events Σ handled in the initial failure occurrence model M 0 is the same as Σ defined in the basic model definition 20. The cause set S 集合 {s 0 } handled in the initial failure occurrence model M 0 is a set obtained by adding the normal state s 0 to S defined in the basic model definition 20. {Pr (s j | s i )} si and sjεS indicate transition probabilities between causes, and the transition probabilities are equal. Specifically, Pr (s j | s i ) = 1 / (| S | +1), where | S | The probability of becoming a steady state may be set high by increasing only the probability Pr (s i | s i ) of transitioning to itself without making this probability equal. {P 0 i } siεS is set to P 0 0 = 1 and P 0 i = 0 (i ≠ 0). This means that the initial failure occurrence model M 0 starts from the normal state s 0 .

{Pr(ej|si)}si∈S,ej∈Σは、イベントと原因との対応関係を示しており、状態Sでイベントeが発生する確率を示す。{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∪{s}について、Σ{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 basic model definition 20, that is, for the cause s of the event e, the probability of occurrence of e from s is the probability of probability p if f (e) ≠ s. It indicates that the setting is k times. When the function f is a partial function and f is not defined, f (e | s) is given a probability p according to the above definition.

管理者は、オンライン又はオフラインで、学習用イベント列100を障害原因推定装置10に与える(ステップA3)。管理者は、例えば監視対象装置80を試運転した際にイベントモニタ90がモニタしたイベント列を、オフラインで、学習用イベント列100として与える。または、監視対象装置80の運用中にイベントモニタ90がモニタしたイベント列のうちで、障害原因解析が既に行われたイベント列を、オンラインで、学習用イベント列100として与える。   The administrator gives the event sequence for learning 100 to the failure cause estimating apparatus 10 online or offline (step A3). For example, the administrator gives the event sequence monitored by the event monitor 90 when the monitoring target device 80 is run as a learning event sequence 100 offline. Alternatively, among the event strings monitored by the event monitor 90 during the operation of the monitoring target device 80, an event string for which the cause of failure analysis has already been performed is given as a learning event string 100 online.

イベント列パーザ130は、与えられた学習用イベント列100から、他のモジュールで解釈可能なイベントデータを生成し、イベント列データベース140に格納する。イベント列パーザ130は、イベントデータを生成する際に、学習用イベント列100を、所定の条件で、複数のイベントの列に分割する。図4は、イベント列の分割の様子を示している。イベント列パーザ130は、イベントの発生間隔が所定のしきい値Tよりも大きいと、イベント列を分割する。具体的には、例えば、イベント列(e(0),…,e(n))があるとき、イベントe(i)の発生時刻と、e(i+1)の発生時刻との間の時間がしきい値Tよりも長いと、イベント列(e(0),…,e(n))を、イベントリージョンR:(e(0),…,e(i))と、イベントリージョンR:(e(i+1),…,e(n))とに分割する。このことは、イベントリージョン内では、イベント発生間隔がしきい値T以下であり、イベントリージョン間のイベント発生間隔はしきい値Tよりも大きいことを意味している。なお、ここでのイベントe(i)は、イベントタイプ(イベントの種別)ではなくイベントそのものである。 The event sequence parser 130 generates event data that can be interpreted by other modules from the given learning event sequence 100 and stores the event data in the event sequence database 140. When generating event data, the event string parser 130 divides the learning event string 100 into a plurality of event strings under a predetermined condition. FIG. 4 shows how the event sequence is divided. The event string parser 130 divides the event string when the event occurrence interval is larger than a predetermined threshold T. Specifically, for example, when there is an event sequence (e (0),..., E (n)), the time between the occurrence time of the event e (i) and the occurrence time of e (i + 1) is shortened. If it is longer than the threshold value T, the event sequence (e (0),..., E (n)), the event region R 0 : (e (0),..., E (i)) and the event region R 1 : (E (i + 1),..., E (n)). This means that the event occurrence interval is equal to or less than the threshold value T within the event region, and the event occurrence interval between the event regions is larger than the threshold value T. The event e (i) here is not the event type (event type) but the event itself.

再び図2に戻り、Baum−Welch計算手段50は、Baum−Welchアルゴリズムにより、イベント列パーザ130から入力した学習用イベント列100のイベントリージョンを用いて、初期モデル生成手段40が生成した初期障害発生モデルMの学習を行う。Baum−Welch計算手段50は、与えられた学習対象のイベント列(イベントリージョン)に対して、最も確率を高くするモデルM={Σ,S∪{s},{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∈Σとを求める。ただし、最適な値を求めるのではなく、初期モデルMに対して、そこから局所解を求める最尤法である。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 learning event sequence 100 input from the event sequence parser 130 by the Baum-Welch algorithm. It performs learning of the model M 0. The Baum-Welch calculation means 50 has a model M = {Σ, S∪ {s 0 }, {Pr (s j | s i ) that has the highest probability for a given event sequence (event region) to be learned. )} si, sj∈S , {P 0 i } si, sj∈S , {Pr (e j │s i )} siS, ej∈Σ } transition probability {Pr (s j │s i )} Si, sjεS and event occurrence probability {Pr (e j | s i )} siεS, ejεΣ are obtained. However, it is a maximum likelihood method for obtaining a local solution from the initial model M 0 instead of obtaining an optimum value. The Baum-Welch algorithm is a well-known algorithm as described in, for example, “Statistical Methods for Speech Recognition (Language, Speech, and Communication)” (Frederick Jelinek), Section 9.3. Is omitted.

Baum−Welch計算手段50は、初期障害発生モデルMの遷移確率{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 cause estimating apparatus 10 when estimating the cause of the failure. The administrator provides the event sequence observed by the event monitor 90 on the monitoring target device 80 online to the failure cause estimation device 10 as the failure cause discovery event sequence 110 (step B1). The event sequence parser 130 divides the given failure cause discovery event sequence 110 into a plurality of event regions (FIG. 4), and delivers them to the Viterbi calculation means 60 via the event sequence database 140.

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 model storage database 120. The sequence (s (0), s (1), s (2),..., S (n)) of the cause having the highest possibility (likelihood) of realizing is obtained (step B2). S (i) in the cause sequence column does not indicate the type of cause, but indicates the state transition sequence of the cause in time order, and the numbers in parentheses are assigned in time order. The Viterbi algorithm is a generally well-known algorithm as described in, for example, “Statistical Methods for Speech Recognition (Language, Speech, and Communication)” (by Frederick Jelinek) Chapter 5, etc. Then, the detailed description is abbreviate | omitted.

フィルタリングモジュール70は、Viterbi計算手段60が求めた原因の順序列(s(0),s(1),s(2),..,s(n))を、この順序列の隣接する2つの状態間の状態遷移確率Pr(si+1|s)に基づいて、複数のグループに分割する(ステップ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 filtering module 70 converts the cause sequence (s (0), s (1), s (2), ..., s (n)) obtained by the Viterbi calculation means 60 into two adjacent sequences. Based on the state transition probability Pr (s i + 1 | s i ) between states, it is divided into a plurality of groups (step B3). For example, if Pr (s (q + 1) | s (q)) <L, (s (0), s (1)..., S (q)) and (s (q + 1),. s (n)). The probability L for determining the division is a threshold value between 0 and 1, and is a relatively small probability value. The reason for dividing in this way is that when there are two sequences due to different root causes, it may happen to be regarded as one sequence because it happens to be the maximum value. Therefore, the filtering module 70 divides a sequence having a transition probability lower than the threshold value L by considering that it is not a sequence stochastically, but happens to overlap in time series.

フィルタリングモジュール70は、分割されたシーケンス(原因の順序列)を、原因推定結果データベース150に格納する。また、分割されたシーケンスのうちの先頭を、根源的な原因として推定する。フィルタリングモジュール70は、原因推定結果データベース150に、原因の順序列を格納する際に、各原因に対応するイベントを、各原因に対応付けて、原因推定結果データベース150に格納する。例えば、根源的な原因がSであった場合には、障害原因発見用イベント列110(e(0),e(1),・・・,e(n))のうちで、基本モデル定義20で障害原因Sに対応付けられているイベントを、障害原因Sに対応付けて原因推定結果データベース150に格納する。 The filtering module 70 stores the divided sequences (cause order sequence) in the cause estimation result database 150. Also, the head of the divided sequence is estimated as the root cause. When storing the cause sequence in the cause estimation result database 150, the filtering module 70 stores the events corresponding to the causes in the cause estimation result database 150 in association with the causes. For example, when the root cause is S i , the basic model definition is included in the failure cause discovery event sequence 110 (e (0), e (1),..., E (n)). The event associated with the failure cause S i at 20 is stored in the cause estimation result database 150 in association with the failure cause S i .

以下、具体例を用いて説明する。基本モデル定義20としては、図3に示したものを考える。初期モデル生成手段40が生成する初期障害発生モデルMで扱うイベントの集合Σは、
Σ={3,4,16,17,18,19,20}
=>{e,e,e,e,e,e,e
である。状態の集合は、
S∪{s}={s,“Print”,“Windows Update Agent”,“W32Time”,“Application Popup”,“i8042prt”,“Windows Installer”,“DHCP”,“Browser”,“Tcpip”}
=>{s,s,s,s,s,s,s,s,s,s,s10
である。原因間の遷移確率{Pr(sj|si)}si,sj∈Sは、状態数が計10個であるため、
Pr(sj|si)=1/10
である。初期確率は、P =1、P =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 basic model definition 20, the one shown in FIG. 3 is considered. A set Σ of events handled by the initial failure occurrence model M 0 generated by the initial model generation means 40 is
Σ = {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は、R={e(0)、・・・、e(i)}と、R={e(i+1)、・・・、e(n)}とに分割される。Baum−Welch計算手段50は、R、Rを含む多くのイベントリージョンを与えられることで、初期障害発生モデルMから、遷移確率Pr(s|s)とイベント発生確率Pr(e|s)とに関して、与えられたイベントリージョンを最も発生する確率を学習し、障害発生モデルM’を得る。 Let the learning event sequence 100 be {e (0),..., E (n)}. This e (i) is not an event type but an event itself, and an occurrence time is recorded. In this event sequence, the difference between the occurrence times of e (i) and e (i + 1) is 2 seconds, and the difference between the occurrence times of other events is 1 second or less. Assuming that the threshold T when the event sequence parser 130 divides the event sequence into a plurality of regions is 1 second, the learning event sequence 100 has R 1 = {e (0),..., E (i) } And R 2 = {e (i + 1),..., E (n)}. The Baum-Welch calculation means 50 is provided with many event regions including R 1 and R 2 , so that the transition probability Pr (s j | s i ) and the event occurrence probability Pr (e) are obtained from the initial failure occurrence model M 0. With respect to | s), the probability of most occurrence of a given event region is learned, and a failure occurrence model M ′ is obtained.

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 discovery event sequence 110 for the learned failure occurrence model M ′. The filtering module 70 divides the sequence of causes obtained by the Viterbi calculation means 60 based on the state transition probability between causes of the failure occurrence model M ′, and the divided sequence sequences in the cause estimation result database 150. Store. At that time, the event corresponding to each cause in the failure cause discovery event sequence 110 is stored in the cause estimation result database 150 in association with the cause of the failure. The administrator estimates the root cause by referring to the information stored in the cause estimation result database 150.

図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 estimation result database 150. In the figure, the part indicated by state corresponds to the cause. In addition, {} in the state indicates an event corresponding to the cause. In this example, the cause sequence is transitioning from bottom to top, and it is estimated that Tcpip is the root cause. The administrator refers to the information stored in the cause estimation result database 150, and the TCP / IP protocol stack error is causing the cause of failure such as “Browser”, “Dhcp”, “Windows Installer 3.1”, etc. Can know.

本実施形態では、イベントとその原因との対応関係を与えて障害発生モデルを生成し、その障害発生モデルに、監視対象装置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 monitoring target device 80 is given to the failure occurrence model, and the cause is determined from the transition of the event sequence. Find the sequence of. By dividing the sequence of cause obtained in this way based on the transition probability between causes, it is possible to estimate the root cause of the failure that is the source of the cause transition. In the present embodiment, the relationship between the cause of failure is obtained by giving the learning event sequence 100 to the initial failure occurrence model, and it is not necessary to manually define the dependency between causes. In this embodiment, when generating an initial failure occurrence model, it is only necessary to define an event and its cause, and the relationship between the event and its cause is relatively easy to describe. Can be estimated.

以上、本発明をその好適な実施形態に基づいて説明したが、本発明の障害原因推定システム、方法、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。   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.

本発明の一実施形態の障害原因推定装置の構成を示すブロック図。The block diagram which shows the structure of the failure cause estimation apparatus of one Embodiment of this invention. 障害発生モデルを生成する際の障害原因推定装置の動作手順を示すフローチャート。The flowchart which shows the operation | movement procedure of the failure cause estimation apparatus at the time of generating a failure generation model. 基本モデル定義の記述例を示す図。The figure which shows the example of a description of a basic model definition. イベント列の分割の様子を示す模式図。The schematic diagram which shows the mode of a division | segmentation of an event sequence. 障害原因を推定する際の障害原因推定装置の動作手順を示すフローチャート。The flowchart which shows the operation | movement procedure of the failure cause estimation apparatus at the time of estimating a failure cause. 原因推定結果データベースに格納された情報の具体例を示す図。The figure which shows the specific example of the information stored in the cause estimation result database. 特許文献1に記載された障害原因発見装置の構成を示すブロック図。The block diagram which shows the structure of the failure cause discovery apparatus described in patent document 1. FIG. 特許文献2に記載された障害原因推定システムに用いられる因果システムモデル構築装置の構成を示すブロック図。The block diagram which shows the structure of the causal system model construction apparatus used for the failure cause estimation system described in patent document 2. FIG. 特許文献2に記載された障害原因推定システムに用いられる原因推定装置の構成を示すブロック図。The block diagram which shows the structure of the cause estimation apparatus used for the failure cause estimation system described in patent document 2. FIG. 因果関係をモデル化して示すモデル図。The model figure which models and shows a causal relationship.

符号の説明Explanation of symbols

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.
前記障害発生モデル学習手段が、Baum−Welchアルゴリズムにより、前記原因間の状態遷移確率と、各原因でのイベント発生確率とを学習する、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein the failure occurrence model learning means learns a state transition probability between the causes and an event occurrence probability at each cause by a Baum-Welch algorithm. 前記状態遷移列計算手段が、Viterbiアルゴリズムにより、前記状態遷移列を求める、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein the state transition sequence calculation means obtains the state transition sequence by a Viterbi algorithm. 前記初期障害発生モデルが、前記発生し得るイベントの集合Σと、前記障害原因の集合Sに正常状態sを加えた状態の集合と、各状態について、当該状態から各状態に遷移する確率を示す条件付確率Pr(sj|si)si,sj∈Sと、各状態について、開始時に当該状態にいる初期確率{P0 sisi∈Sと、各状態について、当該状態で前記イベントが発生する確率を示すPr(ej|si)}si∈S,ej∈Σとを含む、請求項1に記載の障害原因推定システム。 The initial failure occurrence model includes the set of events Σ that can occur, the set of states obtained by adding the normal state s 0 to the set S of failure causes, and the probability of transition from the state to each state for each state. The conditional probability Pr (s j | s i ) si, sj∈S shown, the initial probability {P 0 si } si∈S that is in the state at the start for each state, and the event in the state for each state The failure cause estimation system according to claim 1, further comprising : Pr (e j | s i )} siεS, ejεΣ indicating a probability of occurrence of a failure. 前記フィルタリングモジュールは、前記状態遷移列計算手段が求めた状態遷移列を{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)}とに分割する、請求項4に記載の障害原因推定システム。   When the state transition sequence obtained by the state transition sequence calculating means is {s (0), s (1),..., S (n)}, the filtering module is in a 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 expressed as {s (0) , S (1), ..., s (i)} and {s (i + 1), ..., s (n)}. 前記フィルタリングモジュールは、前記分割された各状態遷移列の先頭の状態を、障害の根源的原因と推定する、請求項5に記載の障害原因推定システム。   6. The failure cause estimation system according to claim 5, wherein the filtering module estimates a leading state of each of the divided state transition sequences as a root cause of the failure. 前記学習用イベント列が、前記監視対象装置を試運転した際にモニタされたイベント列である、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein the learning event sequence is an event sequence monitored when the monitoring target device is trial run. 前記学習用イベント列が、前記監視対象装置の運用時にモニタされたイベント列であって、障害の発生原因が解析済みのイベント列である、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein the learning event sequence is an event sequence monitored during operation of the monitoring target device, and the cause of failure has been analyzed. 前記障害原因発見用イベント列が、前記監視対象装置の運用時にモニタされたイベント列である、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein the failure cause discovery event sequence is an event sequence monitored during operation of the monitoring target device. 前記学習用イベント列及び前記障害原因発見用イベント列のそれぞれにおける隣接する2つのイベントの発生時間間隔が所定の値以下である、請求項1に記載の障害原因推定システム。   The failure cause estimation system according to claim 1, wherein an occurrence time interval between two adjacent events in each of the learning event sequence and the failure cause discovery event sequence is equal to or less than a predetermined value. 前記フィルタリングモジュールは、前記状態遷移列計算手段が求めた状態遷移列を原因推定結果データベースに記憶すると共に、前記障害原因発見用イベント列のうちで、前記状態遷移列に含まれる各状態を発生原因とするイベントを、各状態に対応付けて記憶する、請求項1に記載の障害原因推定システム。   The filtering module stores the state transition sequence obtained by the state transition sequence calculation means in a cause estimation result database, and causes each state included in the state transition sequence to occur in the failure cause discovery event sequence The failure cause estimation system according to claim 1, wherein the event is stored in association with each state. コンピュータを用いて、監視対象装置で発生した障害の根源的な原因を推定する方法であって、
前記コンピュータが、前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、
前記コンピュータが、前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、
前記コンピュータが、イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、
前記コンピュータが、前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを有することを特徴とする方法。
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.
前記初期障害発生モデルを学習するステップでは、前記コンピュータは、Baum−Welchアルゴリズムにより、前記原因間の状態遷移確率と、各原因でのイベント発生確率とを学習する、請求項12に記載の方法。   The method according to claim 12, wherein in the step of learning the initial failure occurrence model, the computer learns a state transition probability between the causes and an event occurrence probability at each cause by a Baum-Welch algorithm. 前記状態遷移列を計算するステップでは、前記コンピュータは、Viterbiアルゴリズムにより、前記状態遷移列を求める、請求項12に記載の方法。   The method according to claim 12, wherein in the step of calculating the state transition sequence, the computer obtains the state transition sequence by a Viterbi algorithm. 前記初期障害発生モデルが、前記発生し得るイベントの集合Σと、前記障害原因の集合Sに正常状態sを加えた状態の集合と、各状態について、当該状態から各状態に遷移する確率を示す条件付確率Pr(sj|si)si,sj∈Sと、各状態について、開始時に当該状態にいる初期確率{P0 sisi∈Sと、各状態について、当該状態で前記イベントが発生する確率を示すPr(ej|si)}si∈S,ej∈Σとを含む、請求項12に記載の方法。 The initial failure occurrence model includes the set of events Σ that can occur, the set of states obtained by adding the normal state s 0 to the set S of failure causes, and the probability of transition from the state to each state for each state. The conditional probability Pr (s j | s i ) si, sj∈S shown, the initial probability {P 0 si } si∈S that is in the state at the start for each state, and the event in the state for each state The method according to claim 12, comprising Pr (e j | s i )} siεS, ejεΣ indicating the probability of occurrence of. 前記障害の根源的原因を推定するステップは、
前記コンピュータが、前記状態遷移列を計算するステップで求めた状態遷移列を{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.
前記コンピュータが、前記状態遷移列を計算するステップで求めた状態遷移列を原因推定結果データベースに記憶すると共に、前記障害原因発見用イベント列のうちで、前記状態遷移列に含まれる各状態を発生原因とするイベントを、各状態に対応付けて記憶するステップを更に有する、請求項12に記載の方法。   The computer stores the state transition sequence obtained in the step of calculating the state transition sequence in a cause estimation result database and generates each state included in the state transition sequence in the failure cause finding event sequence The method according to claim 12, further comprising storing a causal event in association with each state. コンピュータに、監視対象装置で発生した障害の根源的な原因を推定する方法を実行させるプログラムであって、前記コンピュータに、
前記監視対象装置で発生し得るイベントと、該イベントを引き起こす障害原因とを定義した基本モデル定義を読み出し、該読み出した基本モデル定義に基づいて、イベントとその発生原因との対応関係及び発生原因間の遷移を有限オートマトンでモデル化した初期障害発生モデルを生成し、モデル格納データベースに記憶するステップと、
前記初期障害発生モデルと、イベント列データベースに記憶された学習用イベント列とに基づいて、原因に対応する有限オートマトンの状態がどの確率で推移したかを学習し、該学習の結果を反映させた障害発生モデルをモデル格納データベースに記憶するステップと、
イベント列データベースから障害原因発見用イベント列を読み出し、前記学習後の障害発生モデルで、前記読み出した障害原因発見用イベント列が観察される確率が最も高いと考えられる状態遷移列を求め、原因推定結果データベースに記憶するステップと、
前記状態遷移列計算手段が求めた状態遷移列と、前記学習後の障害発生モデルとに基づいて、監視対象装置で発生した障害の根源的な原因を推定するステップとを実行させることを特徴とするプログラム。
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.
前記初期障害発生モデルを学習するステップでは、Baum−Welchアルゴリズムにより、前記原因間の状態遷移確率と、各原因でのイベント発生確率とを学習する、請求項18に記載のプログラム。   The program according to claim 18, wherein in the step of learning the initial failure occurrence model, a state transition probability between the causes and an event occurrence probability at each cause are learned by a Baum-Welch algorithm. 前記状態遷移列を計算するステップでは、Viterbiアルゴリズムにより、前記状態遷移列を求める、請求項18に記載のプログラム。   The program according to claim 18, wherein in the step of calculating the state transition sequence, the state transition sequence is obtained by a Viterbi algorithm. 前記初期障害発生モデルが、前記発生し得るイベントの集合Σと、前記障害原因の集合Sに正常状態sを加えた状態の集合と、各状態について、当該状態から各状態に遷移する確率を示す条件付確率Pr(sj|si)si,sj∈Sと、各状態について、開始時に当該状態にいる初期確率{P0 sisi∈Sと、各状態について、当該状態で前記イベントが発生する確率を示すPr(ej|si)}si∈S,ej∈Σとを含む、請求項18に記載のプログラム。 The initial failure occurrence model includes the set of events Σ that can occur, the set of states obtained by adding the normal state s 0 to the set S of failure causes, and the probability of transition from the state to each state for each state. The conditional probability Pr (s j | s i ) si, sj∈S shown, the initial probability {P 0 si } si∈S that is in the state at the start for each state, and the event in the state for each state The program according to claim 18, comprising : Pr (e j | s i )} siεS, ejεΣ indicating the probability of occurrence of. 前記障害の根源的原因を推定するステップは、
前記状態遷移列を計算するステップで求めた状態遷移列を{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.
前記コンピュータに、前記状態遷移列を計算するステップで求めた状態遷移列を原因推定結果データベースに記憶すると共に、前記障害原因発見用イベント列のうちで、前記状態遷移列に含まれる各状態を発生原因とするイベントを、各状態に対応付けて記憶するステップを更に実行させる、請求項18に記載のプログラム。   In the computer, the state transition sequence obtained in the step of calculating the state transition sequence is stored in a cause estimation result database, and each state included in the state transition sequence is generated in the failure cause finding event sequence The program according to claim 18, further causing a step of storing a cause event in association with each state.
JP2006079266A 2006-03-22 2006-03-22 Failure cause estimation system, method, and program Expired - Fee Related JP4862446B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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