(57)【特許請求の範囲】
【請求項１】
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値を誤りの値とする学習データとし、前記第２の構成情報における設定値を正解の値とする学習データとし、前記第１の構成情報と前記第２の構成情報のいずれか一方を予兆検知に使用する学習データとして特定する
処理を実行させる予兆検知支援プログラム。
【請求項２】
前記予兆検知に使用する学習データを特定する際に、前記第１の構成情報の設定変更項目及び前記第２の構成情報の設定変更項目の各々について、前記予兆検知に使用する学習データとしての確からしさを示す特定スコアを計算し、前記第１の構成情報の設定変更項目の特定スコアと前記第２の構成情報の設定変更項目の特定スコアとを比較して、前記予兆検知に使用する学習データとしての確からしさの確度が高い設定変更項目を特定する請求項１記載の予兆検知支援プログラム。
【請求項３】
前記第１の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第１の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算し、前記第２の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第２の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算する請求項２記載の予兆検知支援プログラム。
【請求項４】
障害復旧前の期間として予め定めた第１の期間に採取時刻が含まれる構成情報を前記第１の構成情報とし、障害復旧後の期間として予め定めた第２の期間に採取時刻が含まれる構成情報を前記第２の構成情報とする請求項１〜請求項３のいずれか１項記載の予兆検知支援プログラム。
【請求項５】
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値を誤りの値とする学習データとし、前記第２の構成情報における設定値を正解の値とする学習データとし、前記第１の構成情報と前記第２の構成情報のいずれか一方を予兆検知に使用する学習データとして特定し、
特定された前記第１の構成情報の設定変更項目の設定値、または前記第２の構成情報の設定変更項目の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とを比較して、障害発生の予兆検知を行う
処理を実行させる予兆検知プログラム。
【請求項６】
前記予兆検知に使用する情報として前記第２の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する請求項５記載の予兆検知プログラム。
【請求項７】
特定された設定値が前記第２の構成情報に出現する回数を、前記設定変更項目が前記第２の構成情報に出現する回数で除した検知スコアを計算し、前記検知スコアを前記障害発生の予兆検知の結果に付加する請求項６記載の予兆検知プログラム。
【請求項８】
前記検知スコアが予め定めた閾値以上の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する請求項７記載の予兆検知プログラム。
【請求項９】
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値を誤りの値とする学習データとし、前記第２の構成情報における設定値を正解の値とする学習データとし、前記第１の構成情報と前記第２の構成情報のいずれか一方を予兆検知に使用する学習データとして特定する
処理を実行させる予兆検知支援方法。
【請求項１０】
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積する蓄積部と、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出する抽出部と、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値を誤りの値とする学習データとし、前記第２の構成情報における設定値を正解の値とする学習データとし、前記第１の構成情報と前記第２の構成情報のいずれか一方を予兆検知に使用する学習データとして特定する特定部と、
を含む予兆検知支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予兆検知支援プログラム、予兆検知支援方法、予兆検知支援装置、及び予兆検知プログラムに関する。
【背景技術】
【０００２】
従来、ユーザ側で運用しているシステムを監視し、システムでの障害発生の予兆を検知した場合に、ユーザ側のシステム管理者等に障害発生の予兆を検知したことを通知するサービスが行われている。
【０００３】
例えば、プロセスをモニターする方法において、プロセスを表すシグネチャを生成するステップと、生成されたシグネチャを継続的に更新するステップと、継続的に更新されるシグネチャに基づいて異常を検知するステップとを備える方法が提案されている。
【０００４】
また、少なくともひとつのプロセッサとひとつのソフトウェア・アプリケーションをもち、中に搭載するプロセッサによって自動的にワイヤレスデバイスの診断を行うために収集した診断データを管理するシステムが提案されている。このシステムでは、あらゆる不具合に対して診断能力を高めるためにいままで発生した不具合パターンを学習する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３４８７４０号公報
【特許文献２】特開２００７−０５２７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
システムに障害が発生する原因の一つに、システムの構成を示す構成情報における各種設定項目に設定する値の設定ミスがある。さらに、設定ミスには、間違った値を設定した場合と、変更すべき値の変更漏れの場合とがある。システムに障害が発生した場合、ユーザは設定した値が間違っているだろうという推測は可能であるが、値の変更漏れが障害発生の原因である場合には、障害の原因推定及び障害発生の予兆検知をユーザが判断することは難しい。
【０００７】
従来技術では、障害が発生した前後の情報を用いて障害の検知や学習を行っているが、この場合には、値の変更漏れによる障害発生を検知することは困難である。
【０００８】
また、システムに障害が発生し、その復旧作業を行った場合に、障害復旧前の構成情報と障害復旧後の構成情報とを比較することで、障害に関連する構成情報の設定項目が分かる。そこで、一定期間の構成情報を蓄積し、障害復旧前後で値が変更された設定項目の値を設定変更項目の情報として学習する。そして、新たに入力された構成情報の設定項目に設定されている値と、設定変更項目の情報との比較により、障害発生の予兆を検知することが考えられる。しかし、障害の種別や設定項目の相違などにより、適切な設定変更項目の情報として、障害復旧前の値と障害復旧後の値のどちらを使うべきかを特定することは困難である。
【０００９】
本発明は、一つの側面として、障害発生の予兆検知のために適切な設定変更項目の情報を特定することを目的とする。
【課題を解決するための手段】
【００１０】
一つの態様として、システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積する。そして、特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出する。さらに、抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値を誤りの値とする学習データとし、前記第２の構成情報における設定値を正解の値とする学習データとし、前記第１の構成情報と前記第２の構成情報のいずれか一方を予兆検知に使用する学習データとして特定する。
【発明の効果】
【００１１】
一つの側面として、障害発生の予兆検知のために適切な設定変更項目の情報を特定することができる、という効果を有する。
【図面の簡単な説明】
【００１２】
【図１】本実施形態に係る予兆検知装置を含むシステム構成を示す概略図である。
【図２】本実施形態に係る予兆検知装置の機能ブロック図である。
【図３】障害の発生及び復旧と構成情報の採取との関係を説明するための図である。
【図４】事例データの一例を示す図である。
【図５】障害種別リストの一例を示す図である。
【図６】キーリストの一例を示す図である。
【図７】パターンリストの一例を示す図である。
【図８】無視リストの一例を示す図である。
【図９】学習データ・データベースの一例を示す図である。
【図１０】カウントデータ・データベースの一例を示す図である。
【図１１】特定スコア・データベースの一例を示す図である。
【図１２】予兆検知結果リストの一例を示す図である。
【図１３】本実施形態に係る予兆検知装置として機能するコンピュータの概略構成を示すブロック図である。
【図１４】学習処理の一例を示すフローチャートである。
【図１５】パターン生成処理の一例を示すフローチャートである。
【図１６】学習データ生成処理の一例を示すフローチャートである。
【図１７】特定スコア計算処理の一例を示すフローチャートである。
【図１８】検知処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明に係る実施形態の一例を詳細に説明する。
【００１４】
図１に示すように、本実施形態に係る予兆検知装置１０は、インターネット等のネットワーク１２を介して、複数の処理装置１６を有する処理システム１４と接続される。予兆検知装置１０は、処理装置１６の各々を監視し、処理装置１６における障害発生の予兆を検知する。
【００１５】
処理装置１６における障害発生の予兆検知は、例えば、処理装置１６の構成情報（詳細は後述）における各種設定項目の設定値として、正しい値が設定されているか否かを判定することにより行うことができる。設定されている値が正しいか否かを判定する方法としては、設定されている値と、予め用意された正解の学習データ、または誤りの学習データと比較する方法が想定される。設定されている値と正解の学習データとを比較する場合には、両者が一致する場合に、設定されている値が正しいと判定することができる。設定されている値と誤りの学習データとを比較する場合には、両者が一致する場合に、設定されている値が正しくないと判定することができる。
【００１６】
しかし、処理装置１６に障害が発生する要因には、構成情報の各設定項目の値として、誤った値を設定した場合と、変更すべき値の変更漏れが生じた場合とがある。このように、障害発生の要因に相違があるため、設定された値と、正解の学習データまたは誤りの学習データのいずれとを比較した方が、より適切な予兆検知を行うことができるかを判断することは困難である。
【００１７】
例えば、所定の初期値が設定された設定項目の値を、処理装置１６毎に適切な値に変更しなければならない場合において、値の変更漏れがあった場合には、その設定項目の値は初期値のままになってしまい、障害発生の要因となる。この場合、正しい設定値は、処理装置１６毎に各々異なる可能性があり、これら全てを網羅する正解の学習データを用意しておくことは容易ではない。この場合、初期値が設定されている場合には誤りであることを示す学習データを用意しておき、この誤りの学習データと設定されている値とを比較した方が、障害発生の予兆検知を適切に行うことができる。
【００１８】
そこで、本実施形態に係る予兆検知装置１０では、設定されている値と比較するための正解の学習データと、誤りの学習データとを用意しておき、より適切に障害発生の予兆を検知できる学習データを特定して用いる。
【００１９】
また、構成情報の変更前後の値を比較して障害発生の予兆を検知する場合には、設定値の変更漏れが障害発生の要因になる場合を検知することができない。構成情報の変更前後の値を比較しても値に変化がないためである。本実施形態では、障害復旧前後の構成情報から正解の学習データ及び誤りの学習データを生成し、これらの学習データと設定された値とを比較することにより、設定されている値が正しいか否かを判定する。
【００２０】
図２に、予兆検知装置１０の機能ブロック図を示す。図２に示すように、予兆検知装置１０は、パターン生成部２１、学習データ生成部２２、及び特定スコア計算部２３を含む学習部２０と、検知部２４とを有する。また、記憶部３０には、学習データ・データベース（ＤＢ）３１、カウントデータＤＢ３２、及び特定スコアＤＢ３３が記憶される。各データベースについては後述する。なお、学習部２は、本発明の予兆検知支援装置の一例である。パターン生成部２１は、本発明の蓄積部及び抽出部の一例である。また、学習データ生成部２２及び特定スコア計算部２３は、本発明の特定部の一例である。
【００２１】
ここで、図３に示すように、処理装置１６において障害が発生した場合には、障害発生時の状態を確認するために、障害発生直後に構成情報が採取される。そして、障害が復旧した後にも、復旧作業の記録及び動作確認のためなどに構成情報が採取される。予兆検知装置１０には、この障害復旧前後で採取される構成情報の組が、事例データとして入力される。なお、構成情報とは、処理装置１６を構成するハードウェアの構成、及び処理装置１６にインストールされているオペレーティングシステム（Operating System、ＯＳ）やアプリケーション等のソフトウェアの構成を示す情報である。構成情報は、例えば、処理装置１６のファイルシステムから従来既知の専用のツールを用いて構成に関する情報を抽出したディレクトリ構造のデータである。
【００２２】
図４に事例データ３４の一例を示す。図４の例では、障害復旧前に採取した構成情報３５Ａがその採取時刻と共に記録されている。また、障害復旧後に採取した構成情報３５Ｂがその採取時刻と共に記録されている。さらに、障害の種別毎に予め定めた識別情報である障害種別３６が記録されている。障害種別３６は、例えば、障害復旧時に構成情報を採取する作業者等が事例データ３４に記録する。
【００２３】
パターン生成部２１は、複数の事例データ３４を入力として受け付け、所定の記憶領域に蓄積する。また、パターン生成部２１は、蓄積した複数の事例データ３４の各々に含まれる障害種別３６を、例えば、図５に示すような障害種別リスト３７に記録する。なお、重複する障害種別は記録しない。
【００２４】
また、パターン生成部２１は、各事例データ３４に含まれる障害復旧前の構成情報３５Ａ、及び障害復旧後の構成情報３５Ｂの各々から、構成に関する各種設定項目を特定するキーの全てを抽出する。例えば、上述したように、ディレクトリ構造の構成情報では、キーは、ルートディレクトリからファイルまでのパスと、そのファイルに設定されるパラメータ名とで表される。そこで、パターン生成部２１は、例えば、図４の事例データ３４の障害復旧前の構成情報３５Ａの１行目の記述「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ＝３３０６」から、「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ」をキーとして抽出する。パターン生成部２１は、抽出したキーを羅列して、例えば、図６に示すようなキーリスト３８を作成する。
【００２５】
また、パターン生成部２１は、キーリスト３８に記録された各キーについて、障害復旧の前後で値が異なる場合に、障害種別と、キーと、障害復旧前後の値とを対応付けたパターンを生成する。例えば、図４の事例データにおいて、キー「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ」については、障害復旧前の値「３３０６」と、障害復旧後の値「３３０９」とが異なる。そのため、障害種別「Ｆ００１」と、キー「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ」と、障害復旧前の値「３３０６」と、障害復旧後の値「３３０９」とを対応付けたパターンが生成される。パターン生成部２１は、各キーについて生成したパターンを、例えば、図７に示すようなパターンリスト３９に記録する。図７の例では、「値ＶＡ」が障害復旧前の値、「値ＶＢ」が障害復旧後の値である。
【００２６】
さらに、パターン生成部２１は、例えば、図８に示すような無視リスト４０に予め定められた障害種別とキーとの組に一致する障害種別とキーとを有するパターンを、パターンリスト３９から削除する。無視リスト４０には、例えば、システムを起動する毎に値が変わるキーなど、障害復旧前後の値を比較したとしても、障害発生の要因や予兆を見つけることが困難なキーを、障害種別毎に予め定めておく。
【００２７】
学習データ生成部２２は、パターン生成部２１で生成されたパターンリスト３９に記録された各パターンから学習データを生成する。学習データは、障害種別毎に、あるキーについて、ある値が正解として出現した回数、及び誤りとして出現した回数を集計したデータである。パターンリスト３９に記録されたパターンは、各キーについて障害復旧前後の値を有しており、障害復旧前の値ＶＡは誤りの値、障害復旧後の値ＶＢは正解の値である。
【００２８】
例えば、図９に示すように、学習データＤＢ３１には、障害種別、キー、正誤、値、及び回数の項目を有する複数の学習データが記録される。学習データ生成部２２は、あるパターンの障害種別、キー、及び障害復旧前の値ＶＡと、障害種別、キー、及び値が一致する学習データであって、正誤が「Ｆａｉｌｕｒｅ」の学習データの回数を、１つのパターンに付き１増加させる。また、学習データ生成部２２は、あるパターンの障害種別、キー、及び障害復旧後の値ＶＢと、障害種別、キー、及び値が一致する学習データであって、正誤が「Ｓｕｃｃｅｓｓ」の学習データの回数を、１つのパターンに付き１増加させる。なお、学習データ生成部２２は、学習データＤＢ３１に障害種別、キー、及び障害復旧前の値ＶＡまたは障害復旧後の値ＶＢがパターンと一致する学習データが登録されていない場合には、該当の学習データを追加した上で、回数に１を設定する。
【００２９】
また、学習データ生成部２２は、例えば、図１０に示すように、正誤が「Ｓｕｃｃｅｓｓ」の学習データの数を、障害種別毎かつキー毎にカウントした回数ＮＳを、カウントデータＤＢ３２に記録する。同様に、学習データ生成部２２は、正誤が「Ｆａｉｌｕｒｅ」の学習データの数を、障害種別かつキー毎にカウントした回数ＮＦを、カウントデータＤＢ３２に記録する。
【００３０】
特定スコア計算部２３は、新たに入力された構成情報から障害発生の予兆を検知する際に、学習データのうち、正解の値を有する学習データを利用するか、誤りの値を有する学習データを利用するかを特定するための特定スコアを計算する。特定スコアは、あるキーに対する値として、同じ値をとる確率が高いほど、すなわち、あるキーに対する値のバリエーションが少ないほど、その値が正解として、または誤りとして確からしいことを表す。
【００３１】
例えば、特定スコア計算部２３は、学習データＤＢ３１において、ある障害種別のあるキーについて、正誤が「Ｓｕｃｃｅｓｓ」の学習データの各値が出現する経験的確率を求める。そして、特定スコア計算部２３は、求めた確率から条件付エントロピーを計算し、これを、正誤が「Ｓｕｃｃｅｓｓ」である学習データの確からしさを示す正解の特定スコアＳＳとする。同様に、特定スコア計算部２３は、正誤が「Ｆａｉｌｕｒｅ」の学習データの各値が出現する経験的確率から条件付エントロピーを計算し、これを、正誤が「Ｆａｉｌｕｒｅ」である学習データの確からしさを示す正解の特定スコアＳＦとする。特定スコアＳＳは下記（１）式で、特定スコアＳＦは下記（２）式で表される。なお、ＸＳｕｃｃｅｓｓは、ある障害種別のあるキーについて、正誤が「Ｓｕｃｃｅｓｓ」の学習データの集合、ＸＦａｉｌｕｒｅは、正誤が「Ｆａｉｌｕｒｅ」の学習データの集合である。
【００３２】
【数１】
0006405851.tif 000002
【００３３】
より具体的に、図９に示す学習データＤＢ３１及び図１０に示すカウントデータＤＢ３２を用いて、障害種別「Ｆ００１」かつキー「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ」についての特定スコアＳＳ及び特定スコアＳＦを計算する例を説明する。この場合、ＸＳｕｃｃｅｓｓ及びＸＦａｉｌｕｒｅは下記のとおりである。
【００３４】
ＸＳｕｃｃｅｓｓ＝｛３３０９｝
ＸＦａｉｌｕｒｅ＝｛３３０６，３３０７，３３０８｝
なお、上記の集合に含まれる各学習データは、その学習データが有する値で表している。
【００３５】
特定スコア計算部２３は、学習データＤＢ３１から、ＸＳｕｃｃｅｓｓに含まれる値「３３０９」の学習データの出現回数（３回）を取得する。同様に、特定スコア計算部２３は、学習データＤＢ３１から、ＸＦａｉｌｕｒｅに含まれる値「３３０６」、値「３３０７」、及び値「３３０８」の各学習データの出現回数（各１回）をそれぞれ取得する。また、特定スコア計算部２３は、カウントデータＤＢ３２から、障害種別「Ｆ００１」かつキー「／ｅｔｃ／ｍｙ．ｃｎｆ：ｐｏｒｔ」の正誤「Ｓｕｃｃｅｓｓ」の学習データの出現回数ＮＳ（３回）、及び正誤「Ｆａｉｌｕｒｅ」の学習データの出現回数ＮＦ（３回）を取得する。
【００３６】
特定スコア計算部２３は、取得した回数を用いて、下記に示すように、学習データの各値について経験的確率を計算する。
ｐ（３３０６｜Ｆａｉｌｕｒｅ）＝１／３
ｐ（３３０７｜Ｆａｉｌｕｒｅ）＝１／３
ｐ（３３０８｜Ｆａｉｌｕｒｅ）＝１／３
ｐ（３３０９｜Ｓｕｃｃｅｓｓ）＝３／３
【００３７】
特定スコア計算部２３は、計算した経験的確率を用いて、上記（１）式及び（２）式を用いて、下記のように特定スコアＳＳ及び特定スコアＳＦを計算する。
【００３８】
【数２】
0006405851.tif 000003
【００３９】
特定スコア計算部２３は、障害種別毎、かつキー毎に特定スコアＳＳ及び特定スコアＳＦを計算し、例えば、図１１に示すような特定スコアＤＢ３３に記録する。
【００４０】
検知部２４は、予兆検知の対象となる構成情報が入力された場合に、記憶部３０に記憶された学習データＤＢ３１、カウントデータＤＢ３２、及び特定スコアＤＢ３３を用いて、障害発生の予兆を検知する。具体的には、検知部２４は、検知対象の構成情報に含まれるキー及び値の組で表される各検知対象データと、学習データとの比較を行い、構成情報における各設定項目の値が正しく設定されているか否かを判定する。検知部２４は、正しい値が設定されていないと判定した場合には、障害発生の予兆として検知し、予兆検知結果を出力する。
【００４１】
上述したように、本実施形態では、正解の学習データと誤りの学習データとのいずれを用いるかを特定したうえで、予兆検知を行う。具体的には、検知部２４は、特定スコアＤＢ３３から、障害種別毎に、検知対象データに含まれるキーと一致するキーに対応する特定スコアＳＳ及び特定スコアＳＦを取得する。上記（１）式に示す特定スコアＳＳは、値が小さいほど正解の学習データの値が正解である確からしさの確度が高いことを表す。また、上記（２）式に示す特定スコアＳＦは、値が小さいほど誤りの学習データの値が誤りである確からしさの確度が高いことを表す。そこで、検知部２４は、特定スコアＳＳが特定スコアＳＦより小さい障害種別については、正解の学習データを特定し、特定スコアＳＦが特定スコアＳＳより小さい障害種別については、誤りの学習データを特定する。
【００４２】
検知部２４は、正解の学習データを特定した障害種別については、検知対象データと正解の学習データとを比較し、一致しなかった場合に障害発生の予兆を検知する。また、検知部２４は、誤りの学習データを特定した障害種別については、検知対象データと誤りの学習データとを比較し、一致した場合に障害発生の予兆を検知する。検知部２４は、障害発生の予兆を検知した場合には、その障害種別と、検知対象データ（キー及び値）とに、検知スコア（詳細は後述）を付与した予兆検知結果を、例えば、図１２に示すような予兆検知結果リスト４１に記録する。
【００４３】
検知スコアとは、その予兆検知結果の確からしさを示すスコアである。例えば、ある障害種別について、検知対象データのキーと一致するキーを有する誤りの学習データが複数存在し、検知対象データの値が、その誤りの学習データのいずれかと一致したとする。この場合、検知対象データの値と一致した誤りの学習データの出現回数が多いほど、その値が誤りであることの確からしさの確度が高くなる。そこで、検知部２４は、例えば、検知対象データの値と一致した誤りの学習データの出現回数Ｎを、同一の障害種別及びキーの誤りの学習データの出現回数ＮＦで除した値を検知スコアとすることができる。なお、出現回数Ｎは学習データＤＢ３１から取得することができ、出現回数ＮＦはカウントデータＤＢ３２から取得することができる。
【００４４】
また、ある障害種別について、検知対象データのキーと一致するキーを有する正解の学習データの値と、検知対象データの値とが一致しなかった場合には、上記のような出現回数に基づく検知スコアを計算することができない。そこで、検知部２４は、上記の出現回数に基づく検知スコアとは異なり、正解の学習データと一致しなかったことを示す値（例えば、「−１」）を検知スコアとして付与する。
【００４５】
予兆検知装置１０は、例えば図１３に示すコンピュータ５０で実現することができる。コンピュータ５０はＣＰＵ５１、一時記憶領域としてのメモリ５２、及び不揮発性の記憶装置５３を備える。また、コンピュータ５０は、入出力装置５８が接続される入出力インターフェース（Ｉ／Ｆ）５４を備える。また、コンピュータ５０は、記録媒体５９に対するデータの読み込み及び書き込みを制御するｒｅａｄ／ｗｒｉｔｅ（Ｒ／Ｗ）部５５、及びインターネット等のネットワーク１２に接続されるネットワークＩ／Ｆ５６を備える。ＣＰＵ５１、メモリ５２、記憶装置５３、入出力Ｉ／Ｆ５４、Ｒ／Ｗ部５５、及びネットワークＩ／Ｆ５６は、バス５７を介して互いに接続される。
【００４６】
記憶装置５３はＨＤＤ（Hard Disk Drive）、ＳＳＤ（solid state drive）、フラッシュメモリ等によって実現できる。記憶媒体としての記憶装置５３には、コンピュータ５０を予兆検知装置１０として機能させるための予兆検知プログラム６０が記憶される。また、記憶装置５３は、学習データが記憶される学習データ記憶領域７１と、カウントデータが記憶されるカウントデータ記憶領域７２と、特定スコアが記憶される特定スコア記憶領域７３とを有する。
【００４７】
ＣＰＵ５１は、予兆検知プログラム６０を記憶装置５３から読み出してメモリ５２に展開し、予兆検知プログラム６０が有するプロセスを順次実行する。また、ＣＰＵ５１は、学習データ記憶領域７１に記憶された学習データを読み出し、学習データＤＢ３１としてメモリ５２に展開する。また、ＣＰＵ５１は、カウントデータ記憶領域７２に記憶されたカウントデータを読み出し、カウントデータＤＢ３２としてメモリ５２に展開する。また、ＣＰＵ５１は、特定スコア記憶領域７３に記憶された特定スコアを読み出し、特定スコアＤＢ３３としてメモリ５２に展開する。さらに、ＣＰＵ５１は、予兆検知プログラム６０の実行中に、上述した障害種別リスト３７、キーリスト３８、パターンリスト３９、及び予兆検知結果リスト４１をメモリ５２上に作成する。
【００４８】
予兆検知プログラム６０は、パターン生成プロセス６１と、学習データ生成プロセス６２と、特定スコア計算プロセス６３と、検知プロセス６４とを有する。
【００４９】
ＣＰＵ５１は、パターン生成プロセス６１を実行することで、図２に示すパターン生成部２１として動作する。また、ＣＰＵ５１は、学習データ生成プロセス６２を実行することで、図２に示す学習データ生成部２２として動作する。また、ＣＰＵ５１は、特定スコア計算プロセス６３を実行することで、図２に示す特定スコア計算部２３として動作する。また、ＣＰＵ５１は、検知プロセス６４を実行することで、図２に示す検知部２４として動作する。これにより、予兆検知プログラム６０を実行したコンピュータ５０が、予兆検知装置１０として機能することになる。
【００５０】
なお、予兆検知装置１０は、例えば半導体集積回路、より詳しくはＡＳＩＣ（Application Specific Integrated Circuit）等で実現することも可能である。
【００５１】
次に、本実施形態に係る予兆検知装置１０の作用について説明する。まず、予兆検知装置１０に複数の事例データ３４が入力されると、予兆検知装置１０において、図１４に示す学習処理が実行され、記憶部３０に学習データＤＢ３１、カウントデータＤＢ３２、及び特定スコアＤＢ３３が記憶される。この状態で、予兆検知装置１０に検知対象の構成情報が入力されると、予兆検知装置１０において、図１８に示す検知処理が実行され、予兆検知結果リスト４１が出力される。なお、予兆検知装置１０により実行される学習処理及び検知処理は、本発明の予兆検知方法の一例である。以下、各処理について詳述する。
【００５２】
図１４に示す学習処理のステップＳ１０で、パターン生成部２１が、図１５に詳細を示すパターン生成処理を実行する。
【００５３】
図１５に示すパターン生成処理のステップＳ１１で、パターン生成部２１は、入力された複数の事例データ３４から１つの事例データ３４を取得する。事例データ３４には、障害復旧前の構成情報３５Ａ、及び障害復旧後の構成情報３５Ｂ、及び障害種別３６が含まれる。また、パターン生成部２１は、所定領域（図示省略）に記憶された無視リスト４０を取得する。
【００５４】
次に、ステップＳ１２で、パターン生成部２１が、取得した事例データ３４に含まれる障害種別３６を、例えば、図５に示すような障害種別リスト３７に記録する。
【００５５】
次に、ステップＳ１３で、パターン生成部２１が、取得した事例データ３４に含まれる障害復旧前の構成情報３５Ａ、及び障害復旧後の構成情報３５Ｂの各々から、キーを全て抽出し、例えば、図６に示すようなキーリスト３８を作成する。
【００５６】
次に、ステップＳ１４で、パターン生成部２１が、キーリスト３８に以下のステップＳ１５〜Ｓ１７の処理が未処理のキーが存在するか否かを判定する。未処理のキーが存在する場合には、処理はステップＳ１５へ移行し、パターン生成部２１が、未処理のキーから１つを選択し、キーＫとする。
【００５７】
次に、ステップＳ１６で、パターン生成部２１が、キーＫに対応する障害復旧前後の値を、障害復旧前の構成情報３５Ａ、及び障害復旧後の構成情報３５Ｂの各々から取得する。そして、パターン生成部２１は、取得した障害復旧前後の値が異なるか否かを判定する。異なる場合には、処理はステップＳ１７へ移行し、等しい場合には、処理はステップＳ１４に戻る。
【００５８】
ステップＳ１７では、パターン生成部２１が、ステップＳ１１で取得した事例データ３４に含まれる障害種別と、キーＫと、キーＫに対応する障害復旧前の値ＶＡと、障害復旧前の値ＶＢとを対応付けたパターンを生成する。そして、パターン生成部２１は、例えば、図７に示すようなパターンリスト３９に、生成したパターンを追加する。
【００５９】
上記ステップＳ１４で、未処理のキーが存在しないと判定されると、処理はステップＳ１８へ移行する。ステップＳ１８では、パターン生成部２１が、上記ステップＳ１１で取得した無視リスト４０に予め定められた障害種別とキーとの組に一致する障害種別とキーとを有するパターンを、パターンリスト３９から削除する。
【００６０】
次に、ステップＳ１９で、パターン生成部２１が、生成した障害種別リスト３７、及びパターンリスト３９を出力する。入力された全ての事例データ３４についてパターン生成処理が終了した場合には、処理は図１４に示す学習処理に戻る。
【００６１】
次に、図１４に示す学習処理のステップＳ２０で、学習データ生成部２２が、図１６に詳細を示す学習データ生成処理を実行する。
【００６２】
図１６に示す学習データ生成処理のステップＳ２１で、学習データ生成部２２が、パターン生成部２１から出力されたパターンリスト３９を取得する。
【００６３】
次に、ステップＳ２２で、学習データ生成部２２が、パターンリスト３９に、以下のステップＳ２３〜Ｓ２６の処理が未処理のパターンが存在するか否かを判定する。未処理のパターンが存在する場合には、処理はステップＳ２３へ移行する。ステップＳ２３では、学習データ生成部２２が、未処理のパターンから１つを選択し、パターンに含まれる障害種別をＦ、キーをＫ、障害復旧前の値をＶＡ、障害復旧後の値をＶＢとする。
【００６４】
次に、ステップＳ２４で、学習データ生成部２２が、例えば、図９に示すような学習データＤＢ３１において、障害種別がＦ、キーがＫ、値がＶＡである学習データであって、正誤が「Ｆａｉｌｕｒｅ」の学習データの回数を１増加させる。次に、ステップＳ２５で、学習データ生成部２２が、学習データＤＢ３１において、障害種別がＦ、キーがＫ、値がＶＢである学習データであって、正誤が「Ｓｕｃｃｅｓｓ」の学習データの回数を１増加させる。なお、ステップＳ２４及びＳ２５において、該当の学習データが学習データＤＢ３１に登録されていない場合には、学習データ生成部２２は、該当の学習データを追加した上で、回数に１を設定する。
【００６５】
次に、ステップＳ２６で、学習データ生成部２２が、例えば、図１０に示すようなカウントデータＤＢ３２において、障害種別がＦ、キーがＫのカウントデータ（ＮＳ及びＮＦ）をそれぞれ１増加させ、処理はステップＳ２２に戻る。なお、該当のカウントデータがカウントデータＤＢ３２に登録されていない場合には、学習データ生成部２２は、該当のカウントデータを追加した上で、ＮＳ及びＮＦの各々に１を設定する。
【００６６】
上記ステップＳ２２で、未処理のパターンが存在しないと判定された場合には、処理はステップＳ２７へ移行し、学習データ生成部２２が、学習データＤＢ３１及びカウントデータＤＢ３２を出力して、処理は図１４に示す学習処理に戻る。
【００６７】
次に、図１４に示す学習処理のステップＳ３０で、特定スコア計算部２３が、図１７に詳細を示す特定スコア計算処理を実行する。
【００６８】
図１７に示す特定スコア計算処理のステップＳ３１で、特定スコア計算部２３が、パターン生成部２１から出力された障害種別リスト３７と、学習データ生成部２２から出力された学習データＤＢ３１及びカウントデータＤＢ３２とを取得する。
【００６９】
次に、ステップＳ３２で、特定スコア計算部２３が、障害種別リスト３７に、以下のステップＳ３３〜Ｓ４０の処理が未処理の障害種別が存在するか否かを判定する。未処理の障害種別が存在する場合には、処理はステップＳ３３へ移行し、特定スコア計算部２３が、未処理の障害種別から１つを選択し、障害種別Ｆとする。
【００７０】
次に、ステップＳ３４で、特定スコア計算部２３が、学習データＤＢ３１に記録された学習データのうち、障害種別がＦの学習データに含まれるキーを全て抽出し、Ｆのキーリストを作成する。次に、ステップＳ３５で、特定スコア計算部２３が、Ｆのキーリストに、以下のステップＳ３６〜Ｓ４０の処理が未処理のキーが存在するか否かを判定する。未処理のキーが存在する場合には、処理はステップＳ３６へ移行し、特定スコア計算部２３が、未処理のキーから１つを選択し、キーＫとする。
【００７１】
次に、ステップＳ３７で、特定スコア計算部２３が、カウントデータＤＢ３２から、障害種別がＦで、キーがＫのカウントデータ（ＮＳ及びＮＦ）を取得する。
【００７２】
次に、ステップＳ３８で、特定スコア計算部２３が、学習データＤＢ３１から、障害種別がＦ、キーがＫ、正誤が「Ｓｕｃｃｅｓｓ」の学習データの回数を、学習データの値毎に取得する。そして、特定スコア計算部２３が、上記ステップＳ３７で取得した回数ＮＳと、学習データから取得した回数とを用いて値毎の経験的確率を求め、例えば（１）式により、正解の特定スコアＳＳを計算する。
【００７３】
次に、ステップＳ３９で、特定スコア計算部２３が、学習データＤＢ３１から、障害種別がＦ、キーがＫ、正誤が「Ｆａｉｌｕｒｅ」の学習データの回数を、学習データの値毎に取得する。そして、特定スコア計算部２３が、上記ステップＳ３７で取得した回数ＮＦと、学習データから取得した回数とを用いて値毎の経験的確率を求め、例えば（２）式により、誤りの特定スコアＳＦを計算する。
【００７４】
次に、ステップＳ４０で、特定スコア計算部２３が、障害種別Ｆと、キーＫと、特定スコアＳＳと、特定スコアＳＦとの組を、例えば、図１１に示すような特定スコアＤＢ３３に記録し、処理はステップＳ３５に戻る。
【００７５】
上記ステップＳ３５で、未処理のキーが存在しないと判定されると、処理はステップＳ３２に戻る。ステップＳ３２で、未処理の障害種別が存在しないと判定されると、処理はステップＳ４１へ移行する。
【００７６】
ステップＳ４１では、特定スコア計算部２３が、学習データＤＢ３１、カウントデータＤＢ３２、及び特定スコアＤＢ３３を、記憶部３０に記憶して、処理は図１４に戻り、学習処理を終了する。
【００７７】
次に、図１８に示す検知処理のステップＳ５１で、検知部２４が、入力された検知対象の構成情報を取得する。また、検知部２４が、記憶部３０に記憶された学習データＤＢ３１、カウントデータＤＢ３２、及び特定スコアＤＢ３３を取得する。
【００７８】
次に、ステップＳ５２で、検知部２４が、検知対象の構成情報に含まれるキー及び値の組で表される検知対象データのうち、以下のステップＳ５３〜Ｓ６３の処理が未処理の検知対象データが存在するか否かを判定する。未処理の検知対象データが存在する場合には、処理はステップＳ５３へ移行し、検知部２４が、未処理の検知対象データから1つを選択し、選択した検知対象データに含まれるキーをＫ、値をＶとする。
【００７９】
次に、ステップＳ５４で、検知部２４が、特定スコアＤＢ３３に、キーＫに対応して記録された障害種別のうち、以下のステップＳ５５〜Ｓ６３の処理が未処理の障害種別が存在するか否かを判定する。未処理の障害種別が存在する場合には、処理はステップＳ５５へ移行し、検知部２４が、未処理の障害種別から１つを選択してＦとし、障害種別がＦ、かつキーがＫに対応する特定スコアＳＳ及び特定スコアＳＦを、選択スコアＤＢ３３から取得する。
【００８０】
次に、ステップＳ５６で、検知部２４が、特定スコアＳＳと特定スコアＳＦとを比較し、ＳＳ＜ＳＦか否かを判定する。上述したように、上記（１）式に示す特定スコアＳＳは、値が小さいほど正解の学習データの値が正解である確からしさの確度が高いことを表す。また、上記（２）式に示す特定スコアＳＦは、値が小さいほど誤りの学習データの値が誤りである確からしさの確度が高いことを表す。従って、ＳＳ＜ＳＦの場合には、正解の学習データを用いた方がより適切に予兆検知を行うことができ、ＳＳ＞ＳＦの場合には、誤りの学習データを用いた方がより適切に予兆検知を行うことができる。ＳＳ＝ＳＦの場合には、どちらを用いてもよいが、本実施形態では、誤りの学習データを用いることとする。ＳＳ＜ＳＦの場合には、処理はステップＳ５７へ移行し、ＳＳ≧ＳＦの場合には、処理はステップＳ６０へ移行する。
【００８１】
ステップＳ５７では、検知部２４が、学習データＤＢ３１から、障害種別がＦ、キーがＫ、正誤が「Ｓｕｃｃｅｓｓ」の学習データの値を取得し、ＶＲとする。次に、ステップＳ５８で、検知部２４が、検知対象データの値Ｖと取得した学習データの値ＶＲとが一致するか否かを判定する。Ｖ＝ＶＲの場合には、検知対象データの値Ｖには正しい値が設定されていることを表しているため、そのまま処理はステップＳ５４に戻る。Ｖ≠ＶＲの場合には、処理はステップＳ５９へ移行し、検知部２４が、検知スコアＳに、検知対象データの値が、正解の学習データと一致しなかったことを示す値「−１」を設定し、処理はステップＳ６３へ移行する。
【００８２】
一方、ステップＳ６０では、検知部２４が、学習データＤＢ３１から、障害種別がＦ、キーがＫ、正誤が「Ｆａｉｌｕｒｅ」の学習データの値を取得し、ＶＲとする。次に、ステップＳ６１で、検知部２４が、検知対象データの値Ｖと取得した学習データの値ＶＲとが一致するか否かを判定する。Ｖ≠ＶＲの場合には、検知対象データの値Ｖには誤りの値が設定されているとはいえないため、そのまま処理はステップＳ５４に戻る。Ｖ＝ＶＲの場合には、処理はステップＳ６２へ移行する。ステップＳ６２では、検知部２４が、障害種別がＦ、かつキーがＫで、値ＶＲを有する誤りの学習データの出現回数Ｎを学習データＤＢ３１から取得する。また、検知部２４が、障害種別がＦ、かつキーがＫの誤りの学習データの出現回数ＮＦをカウントデータＤＢ３２から取得する。そして、検知部２４は、検知スコアＳに、Ｎ／ＮＦを設定し、処理はステップＳ６３へ移行する。
【００８３】
ステップＳ６３では、検知部２４が、障害種別Ｆと、キーＫと、値Ｖと、検知スコアＳとの組を予兆検知結果として、例えば、図１２に示すような予兆検知結果リスト４１に記録し、処理はステップＳ５４に戻る。ステップＳ５４で、未処理の障害種別が存在しないと判定されると、処理はステップＳ５２に戻る。ステップＳ５２で、未処理の検知対象データが存在しないと判定されると、処理はステップＳ６４へ移行する。
【００８４】
ステップＳ６４では、検知部２４が、予兆検知結果リスト４１を出力して、検知処理は終了する。
【００８５】
なお、上記ステップＳ５７で、複数の値ＶＲが取得された場合には、ステップＳ５８で、検知対象データの値Ｖが、いずれの値ＶＲとも一致しないと判定される場合に、ステップＳ５９へ移行するようにするとよい。
【００８６】
また、上記ステップＳ６０で、複数の値ＶＲが取得された場合には、ステップＳ６１で、検知対象データの値Ｖが、いずれかの値ＶＲと一致すると判定される場合に、ステップＳ６２へ移行するようにするとよい。また、検知スコアＳに対する閾値Ｓｔｈを設定しておき、Ｓ＞Ｓｔｈとなる予兆検知結果のみを予兆検知結果リスト４１に追加するようにしてもよい。これにより、障害発生の予兆としてより確からしい場合のみを予兆検知結果リスト４１に含めることができる。また、閾値Ｓｔｈは、障害種別毎及びキー毎に異なる値を設定してもよい。
【００８７】
以上説明したように、本実施形態によれば、障害復旧の前後で取得した構成情報の各々から学習データを生成し、この学習データと検知対象の構成情報に含まれる検知対象データとを比較して、各設定項目に正しい値が設定されているか否かを判定する。これにより、構成情報の変更前後で値が異なる箇所を検出して、その箇所が障害の原因になり得るか否かを分析する手法では検知することができない、設定値の変更漏れに起因する障害発生の予兆も検知することができる。
【００８８】
また、本実施形態によれば、正解の学習データと、誤りの学習データとで、より正解としての確からしさ、または誤りとしての確からしさの確度が高い方の学習データを用いる。これにより、設定値の変更ミスまたは変更漏れに起因する障害発生のいずれの場合も、より適切に予兆を検知することができる。
【００８９】
なお、上記実施形態では、処理装置１６に障害が発生する都度、その障害の復旧前後で構成情報を採取することを想定している。そのため、入力される事例データ３４に含まれる構成情報３５Ａ、３５Ｂは、障害復旧前後の構成情報であることが特定されていることを前提としている。
【００９０】
ただし、構成情報は、定期的なタイミング（例えば、１日１回）で採取したり、障害復旧とは関係なく任意のタイミングで採取したりする場合もある。このようなタイミングで採取された構成情報が入力された場合には、採取時刻が障害復旧前の期間として予め定めた所定期間内に含まれる構成情報を障害復旧前の構成情報３５Ａとして特定する。同様に、採取時刻が障害復旧後の期間として予め定めた所定期間内に含まれる構成情報を障害復旧後の構成情報３５Ｂとして特定する。そして、障害復旧前後の期間として対応する所定期間の各々において採取された障害復旧前の構成情報３５Ａと障害復旧後の構成情報３５Ｂとを組にして、値が変更された設定項目についてのパターンを生成すればよい。
【００９１】
例えば、障害復旧作業以外の作業中に採取した構成情報には、本来正解ではない値や、障害復旧とは関係ない値が設定されている設定項目が含まれる場合がある。このような構成情報から学習データを生成した場合には、正解または誤りの学習データとして不適な学習データが生成されてしまう。従って、障害復旧前後の期間を特定するための「所定期間」としては、障害復旧作業に関係しない作業期間を除外するような期間を定めておく。
【００９２】
また、上記実施形態では、予兆検知結果に障害種別、キー、値、及び検知スコアを含める場合について説明したが、予兆検知結果に、正解の値も加えてもよい。具体的には、正解の学習データを用いて予兆検知を行った場合には、正解の学習データが有する値を正解の値として加えることができる。また、誤りの学習データを用いて予兆検知を行った場合には、その学習データと障害種別及びキーが同一で、正誤が「Ｓｕｃｃｅｓｓ」の学習データが有する値を正解の値として加えることができる。
【００９３】
また、上記では、本発明に係る予兆検知プログラムの一例である予兆検知プログラム６０が記憶装置５３に予め記憶（インストール）されている態様を説明したが、これに限定されない。開示の技術に係る予兆検知プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の記録媒体に記録された形態で提供することも可能である。
【００９４】
以上の実施形態に関し、更に以下の付記を開示する。
【００９５】
（付記１）
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定する
処理を実行させる予兆検知支援プログラム。
【００９６】
（付記２）
前記予兆検知に使用する情報を特定する際に、前記第１の構成情報の設定変更項目及び前記第２の構成情報の設定変更項目の各々について、前記予兆検知に使用する情報としての確からしさを示す特定スコアを計算し、前記第１の構成情報の設定変更項目の特定スコアと前記第２の構成情報の設定変更項目の特定スコアとを比較して、前記予兆検知に使用する情報としての確からしさの確度が高い設定変更項目を特定する付記１記載の予兆検知支援プログラム。
【００９７】
（付記３）
前記特定スコアは、前記設定値の種類が少ないほど、前記確からしさの確度が高くなる付記２記載の予兆検知支援プログラム。
【００９８】
（付記４）
前記第１の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第１の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算し、前記第２の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第２の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算する付記２または付記３記載の予兆検知支援プログラム。
【００９９】
（付記５）
障害復旧前の期間として予め定めた第１の期間に採取時刻が含まれる構成情報を前記第１の構成情報とし、障害復旧後の期間として予め定めた第２の期間に採取時刻が含まれる構成情報を前記第２の構成情報とする付記１〜付記４のいずれか１項記載の予兆検知支援プログラム。
【０１００】
（付記６）
前記第１の構成情報の設定変更項目の設定値を誤りの値を示す学習データとして用い、前記第２の構成情報の設定変更項目の設定値を正解の値を示す学習データとして用いる付記１〜付記５のいずれか１項記載の予兆検知支援プログラム。
【０１０１】
（付記７）
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定し、
特定された前記第１の構成情報の設定変更項目の設定値、または前記第２の構成情報の設定変更項目の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とを比較して、障害発生の予兆検知を行う
処理を実行させる予兆検知プログラム。
【０１０２】
（付記８）
前記予兆検知に使用する情報として前記第１の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致しない場合に、障害発生の予兆として検知する付記７記載の予兆検知プログラム。
【０１０３】
（付記９）
前記予兆検知に使用する情報として前記第２の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記７記載の予兆検知プログラム。
【０１０４】
（付記１０）
特定された設定値が前記第２の構成情報に出現する回数を、前記設定変更項目が前記第２の構成情報に出現する回数で除した検知スコアを計算し、前記検知スコアを前記障害発生の予兆検知の結果に付加する付記９記載の予兆検知プログラム。
【０１０５】
（付記１１）
前記検知スコアが予め定めた閾値以上の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記１０記載の予兆検知プログラム。
【０１０６】
（付記１２）
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定する
処理を実行させる予兆検知支援方法。
【０１０７】
（付記１３）
前記予兆検知に使用する情報を特定する際に、前記第１の構成情報の設定変更項目及び前記第２の構成情報の設定変更項目の各々について、前記予兆検知に使用する情報としての確からしさを示す特定スコアを計算し、前記第１の構成情報の設定変更項目の特定スコアと前記第２の構成情報の設定変更項目の特定スコアとを比較して、前記予兆検知に使用する情報としての確からしさの確度が高い設定変更項目を特定する付記１２記載の予兆検知支援方法。
【０１０８】
（付記１４）
前記特定スコアは、前記設定値の種類が少ないほど、前記確からしさの確度が高くなる付記１３記載の予兆検知支援方法。
【０１０９】
（付記１５）
前記第１の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第１の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算し、前記第２の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第２の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算する付記１３または付記１４記載の予兆検知支援方法。
【０１１０】
（付記１６）
障害復旧前の期間として予め定めた第１の期間に採取時刻が含まれる構成情報を前記第１の構成情報とし、障害復旧後の期間として予め定めた第２の期間に採取時刻が含まれる構成情報を前記第２の構成情報とする付記１２〜付記１５のいずれか１項記載の予兆検知支援方法。
【０１１１】
（付記１７）
前記第１の構成情報の設定変更項目の設定値を誤りの値を示す学習データとして用い、前記第２の構成情報の設定変更項目の設定値を正解の値を示す学習データとして用いる付記１２〜付記１６のいずれか１項記載の予兆検知支援方法。
【０１１２】
（付記１８）
コンピュータに、
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積し、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出し、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定し、
特定された前記第１の構成情報の設定変更項目の設定値、または前記第２の構成情報の設定変更項目の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とを比較して、障害発生の予兆検知を行う
処理を実行させる予兆検知方法。
【０１１３】
（付記１９）
前記予兆検知に使用する情報として前記第１の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致しない場合に、障害発生の予兆として検知する付記１８記載の予兆検知方法。
【０１１４】
（付記２０）
前記予兆検知に使用する情報として前記第２の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記１８記載の予兆検知方法。
【０１１５】
（付記２１）
特定された設定値が前記第２の構成情報に出現する回数を、前記設定変更項目が前記第２の構成情報に出現する回数で除した検知スコアを計算し、前記検知スコアを前記障害発生の予兆検知の結果に付加する付記２０記載の予兆検知方法。
【０１１６】
（付記２２）
前記検知スコアが予め定めた閾値以上の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記２１記載の予兆検知方法。
【０１１７】
（付記２３）
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積する蓄積部と、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出する抽出部と、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定する特定部と、
を含む予兆検知支援装置。
【０１１８】
（付記２４）
前記特定部は、前記第１の構成情報の設定変更項目及び前記第２の構成情報の設定変更項目の各々について、前記予兆検知に使用する情報としての確からしさを示す特定スコアを計算し、前記第１の構成情報の設定変更項目の特定スコアと前記第２の構成情報の設定変更項目の特定スコアとを比較して、前記予兆検知に使用する情報としての確からしさの確度が高い設定変更項目を特定する付記２３記載の予兆検知支援装置。
【０１１９】
（付記２５）
前記特定スコアは、前記設定値の種類が少ないほど、前記確からしさの確度が高くなる付記２４記載の予兆検知支援装置。
【０１２０】
（付記２６）
前記特定部は、前記第１の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第１の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算し、前記第２の構成情報の設定変更項目の特定スコアとして、前記設定値の種類毎に求めた該種類の設定値が、前記第２の構成情報に出現する経験的確率を用いた条件付きエントロピーを計算する付記２４または付記２５記載の予兆検知支援装置。
【０１２１】
（付記２７）
前記蓄積部は、障害復旧前の期間として予め定めた第１の期間に採取時刻が含まれる構成情報を前記第１の構成情報として蓄積し、障害復旧後の期間として予め定めた第２の期間に採取時刻が含まれる構成情報を前記第２の構成情報として蓄積する付記２３〜付記２６のいずれか１項記載の予兆検知支援装置。
【０１２２】
（付記２８）
前記第１の構成情報の設定変更項目の設定値を誤りの値を示す学習データとして用い、前記第２の構成情報の設定変更項目の設定値を正解の値を示す学習データとして用いる付記２３〜付記２７のいずれか１項記載の予兆検知支援装置。
【０１２３】
（付記２９）
システムを構成する複数の処理装置について、障害復旧前の第１の構成情報と、障害復旧後の第２の構成情報と、障害種別を示す情報とを取得して蓄積する蓄積部と、
特定の障害種別に関する前記第１の構成情報と前記第２の構成情報から該特定の障害種別に関連して構成情報の変更がされた設定変更項目を抽出する抽出部と、
抽出した前記特定の障害種別に関連する設定変更項目それぞれについて、前記第１の構成情報における設定値の種類と前記第２の構成情報における設定値の種類とに基づいて、前記第１の構成情報と前記第２の構成情報のいずれか一方の設定変更項目を予兆検知に使用する情報として特定する特定部と、
特定された前記第１の構成情報の設定変更項目の設定値、または前記第２の構成情報の設定変更項目の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とを比較して、障害発生の予兆検知を行う検知部と、
含む予兆検知装置。
【０１２４】
（付記３０）
前記検知部は、前記予兆検知に使用する情報として前記第１の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致しない場合に、障害発生の予兆として検知する付記２９記載の予兆検知装置。
【０１２５】
（付記３１）
前記検知部は、前記予兆検知に使用する情報として前記第２の構成情報の設定変更項目の設定値が特定された場合、特定された設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記２９記載の予兆検知装置。
【０１２６】
（付記３２）
前記検知部は、特定された設定値が前記第２の構成情報に出現する回数を、前記設定変更項目が前記第２の構成情報に出現する回数で除した検知スコアを計算し、前記検知スコアを前記障害発生の予兆検知の結果に付加する付記３１記載の予兆検知装置。
【０１２７】
（付記３３）
前記検知部は、前記検知スコアが予め定めた閾値以上の設定値と、検知対象の構成情報の設定変更項目に設定されている設定値とが一致する場合に、障害発生の予兆として検知する付記３２記載の予兆検知装置。
【符号の説明】
【０１２８】
１０   予兆検知装置
１４   処理システム
１６   処理装置
２０   学習部
２１   パターン生成部
２２   学習データ生成部
２３   特定スコア計算部
２４   検知部
３０   記憶部
３１   学習データ・データベース
３２   カウントデータ・データベース
３３   特定スコア・データベース
３４   事例データ
３５Ａ 障害復旧前の構成情報
３５Ｂ 障害復旧後の構成情報
３６   障害種別
５０   コンピュータ
５１   ＣＰＵ
５２   メモリ
５３   記憶装置
６０   予兆検知プログラム
【図１】
0006405851.tif 000004
【図２】
0006405851.tif 000005
【図３】
0006405851.tif 000006
【図４】
0006405851.tif 000007
【図５】
0006405851.tif 000008
【図６】
0006405851.tif 000009
【図７】
0006405851.tif 000010
【図８】
0006405851.tif 000011
【図９】
0006405851.tif 000012
【図１０】
0006405851.tif 000013
【図１１】
0006405851.tif 000014
【図１２】
0006405851.tif 000015
【図１３】
0006405851.tif 000016
【図１４】
0006405851.tif 000017
【図１５】
0006405851.tif 000018
【図１６】
0006405851.tif 000019
【図１７】
0006405851.tif 000020
【図１８】
0006405851.tif 000021