(57)【要約】【課題】障害が発生しているサービスを正しく検出することを目的とする。【解決手段】エラー検出部４４が、ログ情報に基づき、処理が正常に実行されなかった複数のエラー処理を検出する。点数付与部４５が、エラー処理毎に、そのエラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、エラー処理に対する実行順序関係に応じた点数を関係処理に付与する。そして、集計部４６が各処理に対して付与された点数を処理毎に集計し、障害特定部４９が集計した点数が所定の点数以上である処理を、障害が発生した処理として特定する。【選択図】図１
2012053760.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理を所定の順に実行する処理実行システムにおいて、各処理を実行した場合に出力されるログ情報であって、その処理が正常に実行されたか否かを示すログ情報を取得するログ取得部と、
前記ログ取得部が取得したログ情報に基づき、処理が正常に実行されなかった複数のエラー処理を検出するエラー検出部と、
前記エラー検出部が検出したエラー処理毎に、そのエラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する点数付与部と、
前記点数付与部が各処理に対して付与した点数を、処理毎に集計する集計部と、
前記集計部が集計した点数が所定の点数以上である処理を、障害が発生した障害発生処理として特定する障害特定部と
を備えることを特徴とする障害特定装置。
【請求項２】
前記処理実行システムでは、前記複数の処理のうちの少なくとも一部の複数の処理を順に実行するアプリケーションプログラムが複数動作し、
前記エラー検出部は、アプリケーションプログラム毎に、エラー処理を検出し、
前記点数付与部は、アプリケーションプログラム毎に、エラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する
ことを特徴とする請求項１に記載の障害特定装置。
【請求項３】
前記処理実行システムでは、複数のユーザによって各アプリケーションプログラムが起動され、
前記エラー検出部は、アプリケーションプログラム毎、アプリケーションプログラムを起動したユーザ毎に、エラー処理を検出し、
前記点数付与部は、アプリケーションプログラム毎、アプリケーションプログラムを起動したユーザ毎に、エラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する
ことを特徴とする請求項２に記載の障害特定装置。
【請求項４】
前記点数付与部は、前記エラー処理の前に実行された所定個の処理を前記関係処理として特定し、前記関係処理に対して、前記エラー処理の何個前に実行された処理かに応じた点数を付与する
ことを特徴とする請求項１から３までのいずれかに記載の障害特定装置。
【請求項５】
前記点数付与部は、前記関係処理に対して、前記エラー処理に対して付与する所定の点数よりも低い点数であって、前記エラー処理に実行順序が近い処理ほど高い点数を付与する
ことを特徴とする請求項４に記載の障害特定装置。
【請求項６】
前記障害特定装置は、さらに、
前記エラー処理に対する実行順序関係毎に付与する点数を定義した点数定義情報を、複数記憶した点数定義記憶部と、
前記点数定義記憶部が記憶した複数の点数定義情報のうちいずれかの点数定義情報を選択する点数定義情報選択部と
を備え、
前記点数付与部は、前記点数定義情報選択部が選択した点数定義情報が実行順序関係に応じて定義した点数を、前記関係処理に対して付与する
ことを特徴とする請求項１から５までのいずれかに記載の障害特定装置。
【請求項７】
前記障害特定装置は、さらに、
前記エラー処理に対する実行順序関係毎に付与する点数を定義した点数定義情報を、複数記憶した点数定義記憶部
を備え、
前記点数付与部は、前記点数定義記憶部が記憶した複数の点数定義情報それぞれが実行順序関係に応じて定義した点数を、前記関係処理に対して付与し、
前記集計部は、前記点数付与部が前記関係処理に対して付与した点数を、点数定義情報毎、処理毎に集計する
ことを特徴とする請求項１から５までのいずれかに記載の障害特定装置。
【請求項８】
前記障害特定装置は、さらに、
複数の集計方法のうちいずれかの集計方法を選択する集計方法選択部
を備え、
前記集計部は、前記集計方法選択部が選択した集計方法で、前記点数付与部が各処理に対して付与した点数を、処理毎に集計する
ことを特徴とする請求項１から７までのいずれかに記載の障害特定装置。
【請求項９】
前記集計部は、複数の集計方法それぞれで、前記点数付与部が各処理に対して付与した点数を、処理毎に集計する
ことを特徴とする請求項１から７までのいずれかに記載の障害特定装置。
【請求項１０】
処理装置が、複数の処理を所定の順に実行する処理実行システムにおいて、各処理を実行した場合に出力されるログ情報であって、その処理が正常に実行されたか否かを示すログ情報を取得するログ取得工程と、
処理装置が、前記ログ取得工程で取得したログ情報に基づき、処理が正常に実行されなかった複数のエラー処理を検出するエラー検出工程と、
処理装置が、前記エラー検出工程で検出したエラー処理毎に、そのエラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する点数付与工程と、
処理装置が、前記点数付与工程で各処理に対して付与した点数を、処理毎に集計する集計工程と、
処理装置が、前記集計工程で集計した点数が所定の点数以上である処理を、障害が発生した障害発生処理として特定する障害特定工程と
を備えることを特徴とする障害特定方法。
【請求項１１】
複数の処理を所定の順に実行する処理実行システムにおいて、各処理を実行した場合に出力されるログ情報であって、その処理が正常に実行されたか否かを示すログ情報を取得するログ取得処理と、
前記ログ取得処理で取得したログ情報に基づき、処理が正常に実行されなかった複数のエラー処理を検出するエラー検出処理と、
前記エラー検出処理で検出したエラー処理毎に、そのエラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する点数付与処理と、
前記点数付与処理で各処理に対して付与した点数を、処理毎に集計する集計処理と、
前記集計処理で集計した点数が所定の点数以上である処理を、障害が発生した障害発生処理として特定する障害特定処理と
をコンピュータに実行させることを特徴とする障害特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、一連の処理におけるどの処理で障害が発生しているかを特定する技術に関する。
【背景技術】
【０００２】
特許文献１には、監視対象から収集した障害情報に基づき、所定のルールに従って点数を付与し、監視対象のグループ毎に点数を集計し、集計した点数とグループ毎の閾値とを比較することによって、障害の有無を判定する障害通知装置についての記載がある。
また、特許文献２には、顧客からの要求等の指標に応じて点数の付け方を変更することについての記載がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２１１６５８号公報
【特許文献２】特開２００９−１８１５３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ビジネスプロセスを実行するシステムにおいては、複数の業務アプリケーション（アプリケーションプログラム）が動作しており、各業務アプリケーションは複数のサービスを組み合わせてできている。なお、サービスとは、所定の単位の処理であり、例えば、ある機能を提供する一連のプログラムのことである。
このようなシステムでは、１つの業務アプリケーションにおける複数のサービスでエラーが発生している場合、最初に発生したエラーが原因となって次のエラーが発生している可能性がある。しかし、従来の障害検知方法では、エラーが発生しているサービスそれぞれに同等の点数をつけるため、どちらのサービスにも障害があると判断してしまう。
また、複数の業務アプリケーションで共通に呼び出されているサービスに障害があるが、そのサービスではログにエラーが出力されず、次に実行されたサービスで障害の影響を受けてエラーが発生し、ログにエラーが出力される場合がある。この場合、従来の障害検知方式では障害があるサービスを正しく検出できない。
この発明は、障害が発生しているサービスを正しく検出することを目的とする。
【課題を解決するための手段】
【０００５】
この発明に係る障害特定装置は、
複数の処理を所定の順に実行する処理実行システムにおいて、各処理を実行した場合に出力されるログ情報であって、その処理が正常に実行されたか否かを示すログ情報を取得するログ取得部と、
前記ログ取得部が取得したログ情報に基づき、処理が正常に実行されなかった複数のエラー処理を検出するエラー検出部と、
前記エラー検出部が検出したエラー処理毎に、そのエラー処理に対して所定の実行順序関係にある処理を関係処理として特定し、所定の点数を前記エラー処理に付与するとともに、前記エラー処理に対する実行順序関係に応じた点数を前記関係処理に付与する点数付与部と、
前記点数付与部が各処理に対して付与した点数を、処理毎に集計する集計部と、
前記集計部が集計した点数が所定の点数以上である処理を、障害が発生した障害発生処理として特定する障害特定部と
を備えることを特徴とする。
【発明の効果】
【０００６】
この発明に係る障害特定装置では、各処理（サービス）について、各エラーサービスに対する実行順序関係に応じた点数を付与し、サービス毎に付与された点数を集計して、集計された点数からどの処理に障害が発生しているかを特定する。これにより、障害が発生している処理を正しく検出することができる。
【図面の簡単な説明】
【０００７】
【図１】実施の形態１に係る障害特定システム１の構成図。
【図２】ログ情報記憶装置２０に記憶されたログ情報の例を示す図。
【図３】業務フロー定義記憶部４３に記憶された業務フロー定義の例を示す図。
【図４】点数定義記憶部４７に記憶された点数定義情報の例を示す図。
【図５】点数表記憶部４８に記憶された点数表の例を示す図。
【図６】実施の形態１に係る監視システム４０の動作の流れを示すフローチャート。
【図７】図２に示すログ情報が再構築された状態を示す図。
【図８】図７に示すログ情報から抽出されたエラーサービスを示す図。
【図９】図８のようにエラーサービスが検出された場合に付与される点数を示す図。
【図１０】図９のように点数が付与された場合における点数付与情報を示す図。
【図１１】図１０に示す点数付与情報から集計された点数表を示す図。
【図１２】ログ情報記憶装置２０に記憶されたログ情報の図２とは異なる例を示す図。
【図１３】図１２に示すログ情報が再構築された状態を示す図。
【図１４】図１３に示すログ情報から検出されたエラーサービスに基づき付与される点数を示す図。
【図１５】図１４に示す点数から集計された点数表を示す図。
【図１６】エラーの程度毎に異なる点数定義情報を示す図。
【図１７】実施の形態２に係る障害特定システム１の構成図。
【図１８】実施の形態３に係る障害特定システム１の構成図。
【図１９】実施の形態４に係る障害特定システム１の構成図。
【図２０】実施の形態４に係る点数表の集計方法の説明図。
【図２１】監視システム４０のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【０００８】
以下、図に基づき、発明の実施の形態を説明する。
以下の説明において、処理装置は後述するＣＰＵ９１１等である。記憶装置は後述するＲＯＭ９１３、ＲＡＭ９１４、磁気ディスク９２０等である。入力装置は後述するキーボード９０２等である。
【０００９】
実施の形態１．
まず、実施の形態１に係る障害特定システム１の構成について説明する。
図１は、実施の形態１に係る障害特定システム１の構成図である。
障害特定システム１は、業務システム１０（処理実行システム）、ログ情報記憶装置２０、端末３０、監視システム４０（障害特定装置）を備える。
業務システム１０はログ情報記憶装置２０とネットワークを介して接続されており、監視システム４０はログ情報記憶装置２０及び端末３０とネットワークを介して接続されている。
【００１０】
業務システム１０は、利用者に対してサービスを提供するシステムであり、例えばＳＯＡ（Ｓｅｒｖｉｃｅ  Ｏｒｉｅｎｔｅｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）等により構築される。もちろん、業務システム１０はＳＯＡ以外の手法によって構築されていてもよい。
業務システム１０では、利用者の指示に応じて複数の業務アプリケーションが動作し、各業務アプリケーションでは、所定の順にサービスが実行される。そして、各サービスが実行されると、ログ情報が出力される。
【００１１】
ログ情報記憶装置２０は、業務システム１０において、各サービスが実行された際に出力されるログ情報を記憶する記憶装置である。ログ情報には、各サービスの呼出し及び応答が、正常に行われたかあるいはエラーが発生したか等の情報が含まれる。
【００１２】
端末３０は、業務システム１０の管理者や、オペレータが使用するコンピュータである。
【００１３】
監視システム４０は、監視対象である業務システム１０から出力されログ情報記憶装置２０に記憶されたログ情報に基づき、業務システム１０における障害を検出して、検出した障害を端末３０へ通知するシステムである。
監視システム４０は、ログ取得部４１、業務フロー別ログ解析部４２、業務フロー定義記憶部４３（実行順序記憶部）、エラー検出部４４、点数付与部４５、集計部４６、点数定義記憶部４７、点数表記憶部４８、障害特定部４９、障害通知部５０、点数リセット部５１を備える。
【００１４】
次に、実施の形態１に係る監視システム４０の各部の動作について、具体例を用いて説明する。
まず、動作の前提として、ログ情報記憶装置２０に記憶されたログ情報と、業務フロー定義記憶部４３、点数定義記憶部４７、点数表記憶部４８に記憶された情報とについて説明する。
【００１５】
図２は、ログ情報記憶装置２０に記憶されたログ情報の例を示す図である。
図２に示す各行が、あるサービスについての呼出し、あるいは、応答についてのログ情報である。ここでは、ｃａｌｌで始まる行が、サービスの呼出しについてのログ情報であり、ｒｅｔｕｒｎで始まる行が、サービスからの応答についてのログ情報である。
また、各行において、ｃａｌｌ又はｒｅｔｕｒｎの次のｓｅｒｖｉｃｅＡやｓｅｒｖｉｃｅＢは、どのサービスについてのログ情報であるかを示すサービス識別情報である。また、各行の括弧内の情報は、左から順に、サービスがどの業務アプリケーションで実行されたかを示すアプリケーション情報、その業務アプリケーションがどのユーザにより実行されたかを示すユーザ情報、その他の引数である。そして、各行の右端にあるＯＫあるいはＥｒｒｏｒは、サービスの呼出しあるいは応答が正しく実行できたか否かを示すエラー情報である。
エラー情報を参照することにより、図２の例では、８行目、１０行目、１２行目のログ情報でエラーが発生していることがわかる。
【００１６】
業務フロー定義記憶部４３は、業務システム１０で動作する各業務アプリケーションのサービス実行順序を示す業務フロー定義を記憶する記憶装置である。
図３は、業務フロー定義記憶部４３に記憶された業務フロー定義の例を示す図である。
図３に示す例では、業務システム１０において、ＡＰＰ１〜３の３つの業務アプリケーションが動作する。そして、ＡＰＰ１では、ｓｅｒｖｉｃｅＡ，Ｂ，Ｃの順にサービスが実行される。ＡＰＰ２では、ｓｅｒｖｉｃｅＡ，Ｄ，Ｃの順にサービスが実行される。ＡＰＰ３では、ｓｅｒｖｉｃｅＡ，Ｅ，Ｆの順にサービスが実行される。
なお、この例では、説明の単純化のため、各業務アプリケーションが、分岐やループなどの構造は持たずに、定義の順にサービスを呼び出すだけとした。しかし、業務アプリケーションは、分岐やループなど複雑な構造を持っていてもよい。
【００１７】
点数定義記憶部４７は、各サービスに付与する点数の定義を示す点数定義情報を記憶する記憶装置である。
図４は、点数定義記憶部４７に記憶された点数定義情報の例を示す図である。
図４に示す例では、エラーが検出されたエラーサービスと、エラーサービスの前に実行された２つのサービスとに点数を付与することを示す。特に、図４に示す点数定義情報は、エラーサービスに付与する点数を最も高い１００点とし、エラーサービスの１つ前のサービスに付与する点数を次に高い４０点、２つ前のサービスに付与する点数を最も低い２０点としている。
図４に示す例のように、点数定義情報は、エラーサービスだけでなく、エラーサービスに対する実行順序関係が所定の関係（図４では、エラーサービスに対する実行順序が１つ前、２つ前）のサービスについても点数を付与する定義である。
【００１８】
点数表記憶部４８は、各サービスに付与された点数を記憶する記憶装置である。
図５は、点数表記憶部４８に記憶された点数表の例を示す図である。
図５に示すように、点数表は、サービス毎に点数を記憶する表である。なお、ここでは、現時点（図２に示す動作開始前）においては、いずれのサービスの点数も０点に初期化されているとする。
【００１９】
図６は、実施の形態１に係る監視システム４０の動作の流れを示すフローチャートである。
（Ｓ１：ログ情報取得処理）
まず、ログ取得部４１は、図２に示すログ情報記憶装置２０に記憶されたログ情報をネットワークを介して取得する。
【００２０】
（Ｓ２：ログ情報解析処理）
次に、業務フロー別ログ解析部４２は、処理装置により、Ｓ１で取得されたログ情報を行毎に分解することで、個々のサービスが出力したログ情報に分解する。次に、業務フロー別ログ解析部４２は、処理装置により、ログ情報のアプリケーション情報とユーザ情報とを参照して、業務アプリケーション毎、その業務アプリケーションを実行したユーザ毎にログ情報を分ける。そして、業務フロー別ログ解析部４２は、処理装置により、業務フロー定義記憶部４３に記憶された業務フロー定義（図３参照）に従って、業務アプリケーション毎、ユーザ毎にログ情報を実行順に整列する。
ここでは、図７に示すようにログ情報が３つに分けて整列され、再構築される。
【００２１】
（Ｓ３：エラー検出処理）
次に、エラー検出部４４は、処理装置により、再構築されたログ情報から、正しく実行されなかったサービスをエラーサービスとして検出する。エラー検出部４４は、ログ情報から、エラー情報からＥｒｒｏｒの文字列を検索し、Ｅｒｒｏｒの文字列が検索された行のサービス識別情報を参照することにより、エラーサービスを検出することができる。
ここでは、図８に示すように、ＡＰＰ１のｓｅｒｖｉｃｅＢ、ＡＰＰ２のｓｅｒｖｉｃｅＤ、ＡＰＰ３のｓｅｒｖｉｃｅＥがエラーサービスとして抽出される。
【００２２】
（Ｓ４：点数付与処理）
点数付与部４５は、点数定義記憶部４７に記憶された点数定義情報（図４参照）に従い、各サービスに点数を付与して点数付与情報を生成する。この際、点数付与部４５は、Ｓ２で整列されたログ情報を辿ることにより、エラーサービスの前に実行されたサービス（関係処理）を順次特定することができる。
ここでは、図９に示すように、ＡＰＰ１のｓｅｒｖｉｃｅＢ、ＡＰＰ２のｓｅｒｖｉｃｅＤ、ＡＰＰ３のｓｅｒｖｉｃｅＥがエラーサービスであるため、これらのサービスには１００点が付与される。また、ＡＰＰ１のｓｅｒｖｉｃｅＢの１つ前に実行されたｓｅｒｖｉｃｅＡには４０点が付与される。また、ｓｅｒｖｉｃｅＡは、ＡＰＰ２のｓｅｒｖｉｃｅＤの１つ前に実行されたサービスであるため、さらに４０点が付与され、ＡＰＰ３のｓｅｒｖｉｃｅＥの１つ前に実行されたサービスでもあるため、さらに４０点が付与される。
つまり、ここでは、合計６箇所でサービスに点数が付与され、図１０に示すように点数付与情報が生成される。
【００２３】
（Ｓ５：点数集計処理）
集計部４６は、処理装置により、点数付与部４５が生成した点数付与情報の点数を、点数表記憶部４８に記憶された点数表における対応するサービスの点数欄に順次加算して、サービス毎に集計する。
図９は、ここでの点数表記憶部４８を示す図である。図１１に示すように、各サービスの点数が集計され、エラーサービスであるｓｅｒｖｉｃｅＢ、ｓｅｒｖｉｃｅＤ、ｓｅｒｖｉｃｅＥが１００点、ｓｅｒｖｉｃｅＡが１２０点、他は０点となる。
【００２４】
（Ｓ６：障害特定処理）
障害特定部４９は、処理装置により、点数表記憶部４８の各行を、点数の高い順に整列して、予め閾値として設定された点数以上のサービスを全て特定する。これにより、障害特定部４９は、障害が発生しているサービスを特定する。
ここでは、例えば、閾値として１１０点が設定されているとする。そのため、ｓｅｒｖｉｃｅＡが障害が発生しているサービスとして特定される。
【００２５】
（Ｓ７：障害通知処理）
障害通知部５０は、Ｓ６で特定された、障害が発生しているサービスを、点数の高い順に端末３０へ通知する。通知の方法は、端末３０の表示装置へサービスの識別情報を表示してもよいし、端末３０へメールを送信してもよいし、端末３０から所定の音声を出力させてもよい。またこの際、障害通知部５０は、障害が発生しているサービスの識別情報とともに、点数を端末３０へ通知してもよい。
ここでは、ｓｅｒｖｉｃｅＡに障害が発生していると、端末３０へ通知される。
【００２６】
そして、所定の時間が経過した後、再びＳ１から処理が実行される。
なお、点数リセット部５１は、所定のタイミングで点数表記憶部４８に記録された点数を０点に初期化する。
所定のタイミングとは、一定時間（１日、１０分等）毎や、図６に示す処理の開始前や、ログ情報記憶装置２０に一定量のログ情報が蓄積された場合等である。
【００２７】
この例では、各業務アプリケーションで共通に使われており、各エラーサービスの直前で呼び出されていたｓｅｒｖｉｃｅＡの点数が最も高くなり、閾値を超えて、オペレータや管理者などへ障害が発生したサービスとして通知された。
このように、実施の形態１に係る監視システム４０によれば、ログ情報にエラーが出力されないが、各業務アプリケーションで共通に使われており、真のエラー原因である可能性が高いサービスを検出することができる。
【００２８】
次に、他の具体例について説明する。
図１２は、ログ情報記憶装置２０に記憶されたログ情報の図２とは異なる例を示す図である。図１２に示すログ情報の構成は、図２に示すログ情報と同じである。なお、業務フロー定義記憶部４３、点数定義記憶部４７、点数表記憶部４８に記憶された情報は、図３，４，５に示す情報であるとする。
そして、Ｓ１でログ取得部４１が図１２に示すログ情報を取得したとする。すると、Ｓ２で業務フロー別ログ解析部４２により、図１３に示すようにログ情報が２つに分けて整列され、再構築される。続いて、Ｓ３でエラー検出部４４により、ＡＰＰ１のｓｅｒｖｉｃｅＢとｓｅｒｖｉｃｅＣとがエラーサービスとして抽出され、Ｓ４で点数付与部４５により、図１４のように点数が付される。
つまり、エラーサービスであるＡＰＰ１のｓｅｒｖｉｃｅＢとｓｅｒｖｉｃｅＣとに１００点が付与される。また、エラーサービスであるＡＰＰ１のｓｅｒｖｉｃｅＢの１つ前に実行されたｓｅｒｖｉｃｅＡには４０点が付与される。さらに、エラーサービスであるＡＰＰ１のｓｅｒｖｉｃｅＣの１つ前に実行されたｓｅｒｖｉｃｅＢには４０点が付与され、２つ前に実行されたｓｅｒｖｉｃｅＡには２０点が付与される。
その結果、Ｓ５で集計部４６により、図１５に示すように各サービスの点数が集計され、Ｓ６で障害特定部４９によりｓｅｒｖｉｃｅＢが障害が発生しているサービスとして特定される。そして、Ｓ７で障害通知部５０によりｓｅｒｖｉｃｅＢに障害が発生していると、端末３０へ通知される。
【００２９】
この例では、連続してエラーが発生した場合、最初にエラーが発生したサービスであるｓｅｖｉｃｅＢの点数が最も高くなり、閾値を超えて、オペレータや管理者などへ障害が発生したサービスとして通知された。一方、ｓｅｖｉｃｅＢの次にエラーが発生したｓｅｖｉｃｅＣについては、閾値を超えず、オペレータや管理者などへ障害が発生したサービスとして通知されなかった。
このように、実施の形態１に係る監視システム４０によれば、最初にエラーが発生したサービスが原因となって、次のサービスでもエラーが発生する場合において、最初のサービスのみを検出することができる。
【００３０】
なお、上記説明において、ログ情報に含まれるエラー情報は、サービスの呼出しや応答にエラーが発生した場合には、Ｅｒｒｏｒというメッセージが出力されるとした。しかし、エラー情報は、発生したエラーの程度により異なるメッセージが出力されるとしてもよい。例えば、重度のエラーである場合にはｃｒｉｔｉｃａｌ、中度のエラーである場合にはＥｒｒｏｒ、軽度のエラーである場合にはｗａｒｎｉｎｇというメッセージを出力するとしてもよい。
そして、点数定義記憶部４７は、図１６に示すように、エラー情報として出力されたメッセージ毎に、つまりエラーの程度毎に、付与する点数を変えた点数定義情報を記憶してもよい。また、点数定義記憶部４７は、図１６に示す例のように、エラーの程度毎に、エラーサービスの何個前に実行されたサービスまで点数を付与するかを変えた点数定義情報を記憶してもよい。
【００３１】
また、ログ情報に含まれるエラー情報は、ＯＫやＥｒｒｏｒというメッセージではなく、値（戻り値）が出力されるとしてもよい。そして、エラー検出部４４は、戻り値が所定の範囲内であれば処理が正しく行われ、所定の範囲外であればエラーが発生したと判定してもよい。特に、戻り値が所定の範囲外である場合に、戻り値の大きさによってエラーの程度を判定してもよい。
また、ログ情報に出力時刻が含まれている場合、エラー検出部４４は、サービスの呼出しについてのログ情報の出力時刻と、サービスからの応答についてのログ情報の出力時刻との時間差に応じて、処理が正しく実行されたか否かを判定してもよい。
【００３２】
また、上記説明では、集計部４６は、点数付与部４５がサービスに付与した点数を点数表に単純に加算して集計するとした。しかし、集計方法は、単純加算以外の方法であってもよい。
例えば、集計部４６は、一旦点数表に記録された点数を時間の経過とともに減衰させてもよい。また、集計部４６は、所定の時間内に所定の回数以上、同じサービスへ点数が加算される場合には、点数付与部４５が付与した点数以外にさらに点数をそのサービスに加算してもよい。また、特定のサービスについて点数が加算された場合には、他のサービスに対して付与された点数を増やしてもよいし、あるいは、減らしてもよい。
【００３３】
以上のように、実施の形態１に係る監視システム４０は、エラーサービスだけでなく、エラーサービスの前に実行された所定個のサービスに対しても点数を付与している。このため、ログ情報として出力されないエラーや、連続して発生した場合の最初のエラーを検出することができる。また、点数の高いものから通知されることにより、処置の優先順位を求めることができる。
【００３４】
実施の形態２．
実施の形態１では、点数定義記憶部４７には予め所定の点数定義情報が記憶され、点数付与部４５は点数定義記憶部４７に記憶された点数定義情報を用いてサービスに点数を付与した。実施の形態２では、点数定義記憶部４７には複数の点数定義情報が記憶され、オペレータや管理者により、点数付与部４５がどの点数定義情報を用いるかが指定される場合について説明する。
なお、実施の形態２では、実施の形態１と異なる部分のみを説明する。
【００３５】
図１７は、実施の形態２に係る障害特定システム１の構成図である。
図１７に示す障害特定システム１は、監視システム４０が点数定義情報選択部５２を備えること、及び、点数定義記憶部４７が複数の点数定義情報を記憶していることを除き、図１に示す障害特定システム１と同じである。
【００３６】
次に、実施の形態２に係る監視システム４０の各部の動作について説明する。
点数定義情報選択部５２は、図６に示すＳ４の処理よりも前に、オペレータや管理者などの指示により、点数付与部４５が用いる点数定義情報を選択する。すると、Ｓ４で点数付与部４５は、点数定義情報選択部５２が選択した点数定義情報を用いて、各サービスに点数を付与する。
【００３７】
なお、点数定義情報選択部５２は、図６に示す動作中に、オペレータや管理者などの指示により、点数付与部４５が用いる点数定義情報を変更してもよい。この場合、点数定義情報選択部５２は、オペレータや管理者などから指示があった場合、すぐに点数付与部４５が用いる点数定義情報を変更してもよいし、オペレータや管理者などから指示された時刻まで待って点数定義情報を変更してもよい。あるいは、点数定義情報選択部５２は、図６のＳ７の処理まで一旦終え、Ｓ１の処理を再び開始する際に、点数定義情報を変更してもよい。
また、点数定義情報選択部５２は、オペレータや管理者などから指示によらず、ログ情報に所定のキーワードが含まれていた場合に、キーワードに応じて点数付与部４５が用いる点数定義情報を変更してもよい。
【００３８】
以上のように、実施の形態２に係る監視システム４０では、点数付与部４５が用いる点数定義情報を変更できるので、業務アプリケーション等に応じて、適切な障害の検出をすることができる。
【００３９】
実施の形態３．
実施の形態１では、集計部４６は、単純加算等、予め決められた集計方法により、点数付与部４５が付与した点数をサービス毎に集計した。実施の形態３では、オペレータや管理者により、どの集計方法により点数を集計するかが指定される場合について説明する。
なお、実施の形態３では、実施の形態１と異なる部分のみを説明する。
【００４０】
図１８は、実施の形態３に係る障害特定システム１の構成図である。
図１８に示す障害特定システム１は、監視システム４０が複数の集計部４６と、集計方法選択部５３とを備えることを備えることを除き、図１に示す障害特定システム１と同じである。ここで、各集計部４６は、それぞれ異なる集計方法により、点数付与部４５が付与した点数をサービス毎に集計する。
【００４１】
次に、実施の形態３に係る監視システム４０の各部の動作について説明する。
集計方法選択部５３は、図６に示すＳ５の処理よりも前に、オペレータや管理者などの指示により、どの集計部４６に集計させるかを選択する。すると、Ｓ５で選択された集計部４６が、点数付与部４５が付与した点数をサービス毎に集計する。
【００４２】
なお、集計方法選択部５３は、図６に示す動作中に、オペレータや管理者などの指示により、集計に用いる集計部４６を変更してもよい。この場合、集計方法選択部５３は、オペレータや管理者などから指示があった場合、すぐに集計部４６を変更してもよいし、オペレータや管理者などから指示された時刻まで待って集計部４６を変更してもよい。あるいは、集計方法選択部５３は、図６のＳ７の処理まで一旦終え、Ｓ１の処理を再び開始する際に、集計部４６を変更してもよい。
また、集計方法選択部５３は、オペレータや管理者などから指示によらず、ログ情報に所定のキーワードが含まれていた場合に、キーワードに応じて集計に用いる集計部４６を変更してもよい。
【００４３】
以上のように、実施の形態３に係る監視システム４０では、集計に用いる集計部４６を変更できるので、業務アプリケーション等に応じて、適切な障害の検出をすることができる。
【００４４】
実施の形態４．
実施の形態２，３では、点数定義情報や集計方法を複数用意しておき、使用するものを選択することで、同一のログ情報に対しても異なる点数付けを可能とした。実施の形態４では、点数定義情報や集計方法を複数用意しておき、各点数定義情報や集計方法を用いて点数付けをすることにより、様々な方法により点数付けした結果を一度に得る場合について説明する。
【００４５】
図１９は、実施の形態４に係る障害特定システム１の構成図である。
図１９に示す障害特定システム１は、監視システム４０が複数の集計部４６を備えること、点数定義記憶部４７が複数の点数定義情報を記憶していること、及び点数表記憶部４８が複数の点数表を記憶していることを除き、図１に示す障害特定システム１と同じである。ここで、各集計部４６は、それぞれ異なる集計方法により、点数付与部４５が付与した点数をサービス毎に集計する。また、点数表記憶部４８は、点数定義情報と集計部４６との組合せ毎に、点数表を記憶している。つまり、点数表記憶部４８は、点数定義情報が２個、集計部４６が２個ある場合には、２×２＝４個の点数表を記憶している。
【００４６】
次に、実施の形態４に係る監視システム４０の各部の動作について説明する。ここでは、点数定義情報が２個、集計部４６が２個ある場合を例として説明する。
図２０は、実施の形態４に係る点数表の集計方法の説明図である。
Ｓ４で点数付与部４５は、点数定義記憶部４７が記憶した各点数定義情報に基づき各サービスに点数を付与して、点数定義情報毎に付与点数情報を生成する。ここでは、点数付与部４５は、点数定義情報１に基づき各サービスに点数を付与して、付与点数情報１を生成し、点数定義情報２に基づき各サービスに点数を付与して、付与点数情報２を生成する。
次に、Ｓ５で各集計部４６は、Ｓ４で生成された各付与点数情報を、それぞれ別の点数表に集計する。ここでは、集計部４６Ａが、付与点数情報１を点数表１に集計し、付与点数情報２を点数表２に集計する。また、集計部４６Ｂが、付与点数情報１を点数表３に集計し、付与点数情報２を点数表４に集計する。これにより、４つの点数表に各サービスの点数が集計される。
そして、Ｓ６で点数定義記憶部４７は、各点数表から予め閾値として設定された点数以上のサービスを全て特定し、Ｓ７で特定したサービスを端末３０へ通知する。なお、Ｓ７では、点数定義情報と集計部４６とのどの組合せにより障害として検出されたかも合わせて通知するようにしてもよい。
【００４７】
以上のように、実施の形態４に係る監視システム４０は、点数定義情報毎、集計部４６（集計方法）毎に、各サービスの点数を集計し、それぞれに基づき閾値を超えているか判定する。そのため、単一のログ情報から、複数の見方により、障害の検出をすることができる。これにより、より確実な障害の検出が可能となる。
また、点数定義情報や集計方法を工夫して、例えば単発で発生したエラーを正確に検出する単発エラー検出用や、連続したエラーを正確に検出するバーストエラー検出用や、重大なエラーを正確に検出するクリティカルエラー検出用等、複数の見方の点数付け方法、集計方法により障害発生箇所を特定し、特定した障害発生箇所の一覧を端末３０へ通知することもできる。これにより、総合的に障害発生箇所や、解析順序等を判断することが可能となる。
【００４８】
なお、上記説明では、点数定義情報と集計部４６との全ての組合せについて点数表を用意しておき、全ての組合せにより各サービスの点数を集計するとした。しかし、予め定めた一部の組合せについてのみ各サービスの点数を集計するとしてもよい。
【００４９】
以上の実施の形態における監視システム４０のハードウェア構成について説明する。
図２１は、監視システム４０のハードウェア構成の一例を示す図である。
図２１に示すように、監視システム４０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、ＬＣＤ９０１、キーボード９０２（Ｋ／Ｂ）、無線通信ボード９１５、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置９２０は、所定の固定ディスクインタフェースを介して接続される。
【００５０】
磁気ディスク装置９２０又はＲＯＭ９１３などには、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００５１】
プログラム群９２３には、上記の説明において「ログ取得部４１」、「業務フロー別ログ解析部４２」、「エラー検出部４４」、「点数付与部４５」、「集計部４６」、「障害特定部４９」、「障害通知部５０」、「点数リセット部５１」、「点数定義情報選択部５２」、「集計方法選択部５３」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、上記の説明において「業務フロー定義記憶部４３」、「点数定義記憶部４７」、「点数表記憶部４８」等に記憶される情報やデータや信号値や変数値やパラメータが、「データベース」の各項目として記憶される。「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵ９１１の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵ９１１の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００５２】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、その他光ディスク等の記録媒体やＩＣチップに記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」、「〜端末」として説明するものは、「〜回路」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組合せ、さらには、ファームウェアとの組合せで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ＲＯＭ９１３等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【００５３】
１  障害特定システム、１０  業務システム、２０  ログ情報記憶装置、３０  端末、４０  監視システム、４１  ログ取得部、４２  業務フロー別ログ解析部、４３  業務フロー定義記憶部、４４  エラー検出部、４５  点数付与部、４６  集計部、４７  点数定義記憶部、４８  点数表記憶部、４９  障害特定部、５０  障害通知部、５１  点数リセット部、５２  点数定義情報選択部、５３  集計方法選択部。
【図１】
2012053760.tif 000003
【図２】
2012053760.tif 000004
【図３】
2012053760.tif 000005
【図４】
2012053760.tif 000006
【図５】
2012053760.tif 000007
【図６】
2012053760.tif 000008
【図７】
2012053760.tif 000009
【図８】
2012053760.tif 000010
【図９】
2012053760.tif 000011
【図１０】
2012053760.tif 000012
【図１１】
2012053760.tif 000013
【図１２】
2012053760.tif 000014
【図１３】
2012053760.tif 000015
【図１４】
2012053760.tif 000016
【図１５】
2012053760.tif 000017
【図１６】
2012053760.tif 000018
【図１７】
2012053760.tif 000019
【図１８】
2012053760.tif 000020
【図１９】
2012053760.tif 000021
【図２０】
2012053760.tif 000022
【図２１】
2012053760.tif 000023