(57)【要約】【課題】しきい値を使った障害監視では捉えきれない異常挙動、すなわち障害に至っていない異常の兆候を確実に検出することができ、また、稼働データの変化パターンの周期を捉えることにより、月次処理や期末処理などの誤検知しなくなり、予測ミスを自動的に学習することにより、誤検知を減らすことができるコンピュータの異常兆候検出システムを提供する。【解決手段】接続した顧客コンピュータ３を監視し稼働データを収集する監視システム１０を備え、お客様コンピュータ３の過去の稼働データを正規化して、稼働データの変化パターンと変化パターンの周期を求め、求めた変化パターンと周期をお客様コンピュータ３のいつもの状態として捉え、変化パターンと現在の変化パターンとを比較した結果、障害には至っていない異常状態を異常兆候として検出するシステム。【選択図】図１
2008191839.tif 000002
【特許請求の範囲】
【請求項１】
接続した顧客コンピュータを監視し稼働データを収集する監視システムを備え、前記監視システムは、前記顧客コンピュータの過去の稼働データを正規化し、前記稼働データの変化パターンと前記変化パターンの周期を求め、求めた変化パターンと前記周期を前記顧客コンピュータのいつもの状態として捉え、前記変化パターンと現在の変化パターンとを比較して、障害には至っていない異常状態を異常兆候として検出することを特徴とする異常兆候検出システム。
【請求項２】
前記稼働データの一部を、抽出サイズを伸張させながら切り出して、繰り返しの前記変化パターンを自動的に検出して、前記周期を自動的に検出する請求項１に記載の異常兆候検出システム。
【請求項３】
前記周期が複数存在する場合には、前記周期ごとに前記変化パターンを求めて変化パターンデータベースに保持しておく請求項２に記載の異常兆候検出システム。
【請求項４】
前記変化パターンを作成する際には、３〜１０周期前までの前記稼働データの平均を用いる請求項２又は３に記載の異常兆候検出システム。
【請求項５】
前記現在の変化パターンに類似する類似パターンを過去の前記稼働データから探し出して、その直後に発生した障害情報を示すことで、近く発生しうる障害を予想して障害予測結果として通報する請求項４に記載の異常兆候検出システム。
【請求項６】
前記障害予測後に実際には障害が発生しなかった場合に、前記変化パターンは誤検出変化パターンとして例外パターンのデータベースに登録して、以後前記誤検出変化パターンを用いて前記異常状態の誤検出を防止する請求項５に記載の異常兆候検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータのシステム異常の兆候を検出するシステムに関し、特にコンピュータにおける障害に至っていない異常の兆候を確実に検出することができるコンピュータの異常兆候検出システムに関する。
【背景技術】
【０００２】
コンピュータを使用する業務では、コンピュータにおける異常検出を、以下の方法で実現しているために、コンピュータに異常が発生した後の検出となってしまう。
（１）コンピュータ業務からの異常メッセージが合った場合
（２）コンピュータ業務が異常終了した場合
（３）リソースおよびコンピュータ業務のしきい値（例えば利用率、業務遅延等）が所定値を越えたことによる異常を検出した場合
【０００３】
これに対して、コンピュータのシステム異常の兆候を検出する技術として、特許文献１がある。この技術では、過去に発生した故障事例をグラフ化した故障事例グラフデータとしてデータベース（ＤＢ）に蓄積して、現に発生しつつある故障状況を同じくグラフ化した故障発生状況グラフデータを用いてこのＤＢにアクセスする。これにより、過去に発生した類似の故障事例に対して有効であった対応策を検討して、現在の故障状況への活用を図るものである。
【特許文献１】特開２００５−２２２３７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、上記の特許文献１の技術では、以下の課題がある。
（１）過去の障害発生時のデータのみをグラフ化しているため、コンピュータのシステムが障害に至っていない異常動作については検出することができない。
（２）異なるお客様システムのグラフデータを比較に使用するために、正常動作を障害予兆として誤検出する恐れがある。
（３）システムの処理周期を意識していないために、月次処理や期末処理など比較的長い間隔をあけて実行する処理によるグラフデータの変化を障害予兆として誤検出する恐れがある。
【０００５】
本発明は、しきい値を使った障害監視では捉えきれないコンピュータの異常挙動、すなわちコンピュータの障害に至っていない異常の兆候を確実に検出することができ、また、稼働データの変化パターンの周期を捉えることにより、月次処理や期末処理などの誤検出しなくなり、予測ミスを自動的に学習することにより、誤検出を減らすことができる異常兆候検出システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、接続した顧客コンピュータを監視し稼働データを収集する監視システムを備え、前記監視システムは、前記顧客コンピュータの過去の稼働データを正規化し、前記稼働データの変化パターンと前記変化パターンの周期を求め、求めた変化パターンと前記周期を前記顧客コンピュータのいつもの状態として捉え、前記変化パターンと現在の変化パターンとを比較して、障害には至っていない異常状態を異常兆候として検出する異常兆候検出システムである。
【０００７】
また、本発明は、前記稼働データの一部を、抽出サイズを伸張させながら切り出して、繰り返しの前記変化パターンを自動的に検出して、前記周期を自動的に検出する異常兆候検出システムである。
【０００８】
そして、本発明は、前記周期が複数存在する場合には、前記周期ごとに前記変化パターンを求めて変化パターンデータベースに保持しておく異常兆候検出システムである。
【０００９】
更に、本発明は、前記変化パターンを作成する際には、３〜１０周期前までの前記稼働データの平均を用いる異常兆候検出システムである。
【００１０】
また、本発明は、前記現在の変化パターンに類似する類似パターンを過去の前記稼働データから探し出して、その直後に発生した障害情報を示すことで、近く発生しうる障害を予想して障害予測結果として通報する異常兆候検出システムである。
【００１１】
そして、本発明は、前記障害予測後に実際には障害が発生しなかった場合に、前記変化パターンは誤検出変化パターンとして例外パターンのデータベースに登録して、以後前記誤検出変化パターンを用いて前記異常状態の誤検出を防止する異常兆候検出システムである。
【発明の効果】
【００１２】
本発明によれば、しきい値を使った障害監視では捉えきれない異常挙動、すなわち障害に至っていない異常の兆候を確実に検出することができ、また、月次処理や期末処理などの誤検出しなくなり、そして、誤検出を減らすことができる。
【発明を実施するための最良の形態】
【００１３】
本発明を実施するための最良の形態を説明する。
本発明の異常兆候検出システムの実施例について、図面を用いて説明する。図１は、本発明の異常兆候検出システムの実施例を示している。
【００１４】
図１では、異常兆候検出対象であるお客様（顧客）システム（コンピュータシステム）１と、保守サービス会社２側の監視システム１０を示しており、監視システム１０は、お客様システムを監視し異常兆候を検出する。お客様システム１は、例えば複数のお客様コンピュータ３を有している。お客様コンピュータ３からは、監視システム１０の情報収集部１１に対し、稼働データなどの情報を供給する。お客様コンピュータ３と情報収集部１１との接続は、直接的な接続であっても良いし、インターネットなどの通信網を通じて接続してあっても良い。
【００１５】
保守サービス会社２に設置された監視システム１０は、情報収集部１１と、ＤＢ（データベース）１２と、管理部１３を有する。情報収集部１１が得たお客様コンピュータ３の稼働データなどの情報は、ＤＢ１２に送られる。ＤＢ１２は、障害データ２０、稼働データ２１、周期データ２２及び例外パターン２３を格納する。管理部１３は、障害監視部３０、異常兆候監視部３１及び過去の障害の照合部３２を有している。
【００１６】
監視システム１０では、通常行われている検出したしきい値を使った障害監視では捉えきれない異常挙動、すなわち障害に至っていない異常の兆候を検出し、例えば電子メール３９により管理者５に対し、お客様コンピュータ３の異常兆候の通知４０、予測事象の通知４１として通知する。管理者５は、お客様コンピュータ３に異常が生じる前に事前対応処置４２を見出すことができるようになっている。これにより、管理者５はお客様コンピュータ３の業務が停止もしくは処理に異常が発生する前に異常の兆候を掴んで、事前に対応することができる。図４は、稼働データＤＢ２１の稼働データ２１ＤＴの変化例を示しており、月単位と週単位で示している。
【００１７】
次に、本実施例におけるお客様コンピュータ３の異常の兆候の検出手順の一例について説明する。図２は、本実施例におけるお客様コンピュータ３の異常の兆候の検出手順のフローである。この検出手順は、ステップＳ１からＳ１３を有している。ステップＳ１で、監視システム１０の情報収集部１１がお客様コンピュータ３の稼働データ２１ＤＴを受診するまで、管理部１３は待機している。ステップＳ２で、障害監視部３０は、お客様コンピュータ３の稼働データ２１ＤＴから、繰り返して表されるパターンの「種類」と「周期」を求める。この繰り返して表されるパターンの「種類」と「周期」は、具体例１として図５に例示している。
【００１８】
図５（Ａ）は、障害監視部３０が、稼働データ２１ＤＴの正規化の例を示しており、稼働データ２１ＤＴを正規化することで、正規化された稼働データを得て、数字の微妙な揺らぎを丸め込み、コンピュータで比較し易い形に変換する。この正規化された稼働データの正規化の粒度（丸め込み）は、狭い周期のパターンでは細かく、広い周期のパターンでは荒くすることで、マッチング精度を調整する。図５（Ｂ）は、障害監視部３０が行う変化パターンの自動検出の例を示しており、稼働データの一部を、抽出サイズを伸張させながら切り出して、繰り返しパターンを自動的に検出する。稼働データの抽出サイズ（１）〜（３）は、抽出サイズ（４）の一部なので、繰り返しパターンと見なさない。抽出サイズ（５）は抽出サイズ（４）の２回繰り返しなので、繰り返しパターンとしては、抽出サイズ（４）を採用して、さらに広い範囲の繰り返しパターン検出を続ける。
【００１９】
図５（Ｃ）は、障害監視部３０が一定の間隔で繰り返されるパターンと周期を求める例を示しており、このとき、例えば過去３〜１０周期前までの比較的新しい情報を使うことで、稼働状況の緩やかな変化に追従できるようになる。図５（Ｄ）は７日周期パターンの例と、３０日周期パターンの例を示しており、これらの繰り返しパターンは周期データ２２として登録される。
【００２０】
図２のステップＳ３に戻ると、現状の稼働データをパターン化して、各繰り返しパターンの全てと、図６に示す具体例２のようにして照合する。すなわち、図６に示す現状の稼働状況を正規化して正規化データを作成し、正規化データと周期データの例えば７日周期パターン４７とを比較する。この比較の結果、マッチするものがある場合には、異常兆候監視部３１はステップＳ４においていつもと同じであると判断して、ステップＳ１に戻る。そうでなく、この比較の結果１つもマッチしない、すなわち正規化データに異常動作パターンがある場合には、図１の異常兆候監視部３１は、異常と判断してステップＳ５に移る。
【００２１】
ステップＳ５では、現状の稼働データの正規化データのパターンを、図７に示す具体例３の要領で図１の例外パターン２３と照合する。正規化データと例外パターン２３を照合し、マッチするものがあれば、ステップＳ６において過去に誤検出した正常パターンであるとして、現状の稼働データは異常ではないと判断してステップＳ１に戻る。そうでなく、ステップＳ５において正規化データのパターンと例外パターン２３とが１つもマッチしない場合には、現状の稼働データは異常動作パターンであるとしてステップＳ７に移る。
【００２２】
ステップＳ７では、図８の具体例４で示すように、図１の過去の障害の照合部３２は、過去の稼働データ２１と現在の障害データＤＢ２０の障害データの中から、現在の障害データのパターンに類似した類似パターンを探す。ステップＳ８において、過去に類似した障害データ２０のパターンと障害発生記録があると、ステップＳ１０に移り、お客様コンピュータ３で近く発生するおそれがある障害内容と過去の対処方法と、障害発生する予定時刻を、障害予測メール３９として管理者５に通知してステップＳ１１に進む。ステップＳ７において、現在の障害データ２０は過去に類似パターンそのものがないか、または類似パターンはあるが障害は発生していない場合には、ステップＳ９において、お客様コンピュータ３が異常動作していることを、警告メール３９により管理者５に通知してステップＳ１１に進む。
【００２３】
ステップＳ１１では、障害発生予定時間までに障害が発生した、もしくは対策を施した結果通常のパターンに戻った場合には、ステップＳ１２において障害予測が成功したと判断してステップＳ１に戻る。対策を施していないにもかかわらず障害予定時刻を過ぎても障害が発生せず、その後通常のパターンに戻った場合には、ステップＳ１３において図９の具体例５に示すように、障害予測のミスのパターンを、例外パターン２３として自動登録して、この例外パターン２３は以後誤検出防止に使用される。
【００２４】
次に、図３のフローを参照して、お客様コンピュータ３の異常の兆候を自動的に検出する手順について説明する。図３のフローは、ステップＳ２０からＳ２９を有している。ステップＳ２０で、「抽出サイズ」をゼロにセットする。ステップＳ２１で、「抽出サイズ」を＋１とすると、ステップＳ２２で、稼働データ２１の最新データの位置から過去に遡って「抽出サイズ」分取り出して正規化する。この正規化データを、「仮変化パターン」と呼ぶ。
【００２５】
ステップＳ２３で、稼働データ２１を過去に遡って正規化して「仮変化パターン」と比較して、パターンの繰り返し周期を求める。ステップＳ２４で、繰り返しが認められた場合には、「仮変化パターン」を伸張してステップＳ２１に戻って再試行する。そうでなく、繰り返しが認められない場合には、ステップＳ２６において最後に繰り返しが認められた「仮変化パターン」を「変化パターン」として周期データ２２として登録する。ステップＳ２７で、「抽出サイズ」が稼働データ２１のサイズを超えていない場合には、ステップＳ２８において別の周期を持つパターンを検出するためにステップＳ２１に戻る。「抽出サイズ」が稼働データ２１のサイズを超えている場合には、ステップＳ２９において周期パターンの検出を終了する。
【００２６】
ところで、コンピュータシステムには、実行スケジュールに基づいて処理を実行するバッチ系処理システムがある。本発明の監視システムの実施形態では、このバッチ系処理システムに着目して、その特性に合わせて稼働データのいわゆる「変化パターン」の捉え方を、次の要領で変えている。
【００２７】
（１）お客様コンピュータの稼動データ（ＣＰＵ（中央処理装置）の利用率やアクセス数、トランザクション数など）を日々記録する。
【００２８】
（２）稼働データを正規化して、稼働データの「変化パターン」とその変化パターンの「周期」を捉える。このとき月次処理などによって変化パターンの周期が複数存在する場合は、周期ごとに変化パターンを求めて変化パターンＤＢに保持しておく。また、変化パターンを作成するにあたっては、好ましくは３〜１０周期前までの稼働データの平均を使うことで、徐々に変化する稼働データの変化状況に対応できるようにする。
【００２９】
（３）現在の稼働データの変化パターンが、変化パターンＤＢの内容と異なる場合には、“いつもと違う動作”＝異常動作であるとみなす。ただし、すでに述べたように、「例外パターンＤＢ２３」に類似パターンが記録されている場合には、異常動作とはしない。
【００３０】
（４）お客様コンピュータ３の異常動作を検出した場合には、過去の類似した変化パターンとその直後に発生した障害データを検索して、近く発生しうる障害として管理者５に通知する。
【００３１】
（５）異常状態と判断したものの、その後お客様コンピュータ３に障害が発生しなかった場合には、誤検出変化パターンとして図１の例外パターン２３として登録して、以後この誤検出変化パターンは誤検出防止の用途に使用する。
【００３２】
以上説明したように、実施例の異常兆候検出システムでは、お客様コンピュータ３の過去の稼働データを正規化して、稼働データの変化パターンと変化パターンの周期を求め、求めた変化パターンと周期をお客様コンピュータ３のいつもの状態として捉える障害監視部３０と、変化パターンと現在の変化パターンとを比較した結果、障害には至っていない異常状態を異常兆候として検出する異常兆候監視部３１とを備える。これにより、しきい値を使った障害監視では捉えきれない異常挙動、すなわち障害として検出されない異常挙動（障害に至っていない異常の兆候）を、確実に検出することができる。また、稼働データの変化パターンの周期を捉えることにより、月次処理や期末処理などの誤検出をしなくなり、予測ミスを自動的に学習することにより、誤検出を減らすことができる。
【００３３】
また、実施例の異常兆候検出システムでは、稼働データの一部を、抽出サイズを伸張させながら切り出して、繰り返しの前記変化パターンを自動的に検出して、前記周期を自動的に検出する。これにより、稼働データの変化パターンの周期を捉えることにより、例えば月次処理や期末処理などを誤検出しなくなる。
【００３４】
そして、実施例の異常兆候検出システムでは、稼働データの変化パターンと周期を自動的に検出して、周期が複数存在する場合には、周期ごとに変化パターンを求めて変化パターンデータベースに保持しておく。これにより、例えば月次処理などによって周期が複数存在する場合であっても、周期毎に変化パターンを保持しておくことができ、異常の兆候をさらに確実に検出することができる。
【００３５】
更に、実施例の異常兆候検出システムは、変化パターンを作成する際には、３〜１０周期前までの前記稼働データの平均を用いる。これにより、徐々に変化するお客様コンピュータ３の稼働状態に対応できるようにする。
【００３６】
また、実施例の異常兆候検出システムは、現在の変化パターンに類似する類似パターンを過去の稼働データから探し出して、その直後に発生した障害情報を示すことで、近く発生しうる障害を予想して障害予測結果として通報する。これにより、近く発生しうる障害を確実に管理者に知らせることができる。
【００３７】
そして、実施例の異常兆候検出システムは、障害予測後に実際には障害が発生しなかった場合に、変化パターンは誤検出変化パターンとして例外パターンのデータベースに登録して、以後誤検出変化パターンを用いて異常状態の誤検出を防止する。これにより、お客様コンピュータ３における異常状態の誤った検出を避けることができる。
【００３８】
従来の監視システム等の監視では、コンピュータ業務の異常が発生した後での異常検出やしきい値越えにより以上検出することができるが、業務が正常に稼働している段階では異常につながる兆候を検出することができなかった。これに対して、本発明は、コンピュータ業務の稼働状態を把握して、通常の稼働状態として記憶しておき、過去の稼働状態と現在の稼働状態を比較することで、管理者は業務が停止もしくは処理に異常が発生する前に、異常の兆候を掴んで、事前に対応することができる。
【００３９】
本発明は、上記実施形態に限定されず、特許請求の範囲を逸脱しない範囲で種々の変形例が採用できる。
【図面の簡単な説明】
【００４０】
【図１】実施例の異常兆候検出システムの説明図。
【図２】実施例における兆候検出手順の説明図。
【図３】実施例における自動検出手順の説明図。
【図４】実施例におけるパターンの説明図。
【図５】実施例の異常兆候検出システムにおける具体例１の説明図。
【図６】実施例の異常兆候検出システムにおける具体例２の説明図。
【図７】実施例の異常兆候検出システムにおける具体例３の説明図。
【図８】実施例の異常兆候検出システムにおける具体例４の説明図。
【図９】実施例の異常兆候検出システムにおける具体例５の説明図。
【符号の説明】
【００４１】
１  お客様システム
２  保守サービス会社
３  お客様コンピュータ
１０  監視システム
１１  情報収集部
１２  データベース（ＤＢ）
２０  障害データ
２１  稼働データ
２２  周期データ
２３  例外パターン
３０  障害監視部
３１  異常兆候監視部
３２  過去の障害の照合部
４０  異常兆候の通知
４１  予測事象の通知
５  管理者
【図１】
2008191839.tif 000003
【図２】
2008191839.tif 000004
【図３】
2008191839.tif 000005
【図４】
2008191839.tif 000006
【図５】
2008191839.tif 000007
【図６】
2008191839.tif 000008
【図７】
2008191839.tif 000009
【図８】
2008191839.tif 000010
【図９】
2008191839.tif 000011