JP4271612B2 - 障害検出システム及び方法 - Google Patents

障害検出システム及び方法 Download PDF

Info

Publication number
JP4271612B2
JP4271612B2 JP2004106237A JP2004106237A JP4271612B2 JP 4271612 B2 JP4271612 B2 JP 4271612B2 JP 2004106237 A JP2004106237 A JP 2004106237A JP 2004106237 A JP2004106237 A JP 2004106237A JP 4271612 B2 JP4271612 B2 JP 4271612B2
Authority
JP
Japan
Prior art keywords
ticket
application
user terminal
failure
log
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.)
Expired - Fee Related
Application number
JP2004106237A
Other languages
English (en)
Other versions
JP2005293140A (ja
Inventor
一樹 松井
昌朋 矢崎
政志 宇山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004106237A priority Critical patent/JP4271612B2/ja
Publication of JP2005293140A publication Critical patent/JP2005293140A/ja
Application granted granted Critical
Publication of JP4271612B2 publication Critical patent/JP4271612B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

企業内システム等において管理されたネットワークに接続された多数のコンピュータおよびアプリケーションについて、システム障害が発生した場合の検出技術に関する。
例えば、特許文献1には、ネットワーク障害対策管理システムが記載されている。このシステムは、ネットワークに障害が生じたとき、自動的に障害ログDB104が生成される。記憶されている障害ログDB104のいずれかが選択されると、システムは選択された障害ログDB104についてトラブルチケットを発行する。管理システムの管理人は、障害の解決方法などの障害関連情報をトラブルチケットに自由に記入する。情報が記録されたトラブルチケットは記憶される。検索項目をキーとしてトラブルチケットを検索することにより、新たな障害が生じたときに過去の障害履歴に基づいて解決方法を得ることができると言う効果を奏する。
別の例として、特許文献2には、ワークフロー実行方法が開示されている。この方法では、プログラムが呼ばれた時点でビジネスフローID(シナリオID)を含むトラブルチケットを発行し、プログラム実行前の情報(データオブジェクト)を収集し、プログラム実行中に障害を検出した場合、シナリオIDとともに保存する。この方法は、障害発生時のワークフローの再実行を容易にする効果を奏する。つまり、ワークフロー実行時に障害が発生した場合に、実行が完了しなかったプログラムについて、事前に保存されたデータオブジェクト等を再利用することで効率的に再実行することを可能とする。
特開平6-326751号公報 特開2001-356946号公報
システム管理において、ハードウエアやアプリケーションの障害の原因追及には手間と時間がかかる。また、原因追及の上で人為的なミスがどうしても発生し、それが原因追及に要する手間と時間とに一層の拍車をかけているという現状がある。その一方で、ハードウエアやアプリケーションの障害が企業活動に与えるインパクトを即座に把握したいというニーズがある。例えば、あるサーバまたはあるアプリケーションに障害がおきたとき、どの顧客のどの取引に影響があるか等を即座に把握したいというニーズがある。しかし、既存のシステムやアプリケーションを全て置き換えてこれを実現するのはコストがかかるし、現実的ではない。よって、既存のリソースを有効に活用しつつ、少ないコストでビジネスインパクト分析のような高度な判断ができるような仕組みを作ることが求められている。
しかし、従来から提案されているシステム障害検出技術には、次のような課題がある。例えば、前記特許文献1では、システム管理者が障害の解決方法などをトラブルチケットに書き込んでいる。しかし、書き込まれる障害の解決方法を追求するのは結局システム管理者の手間暇をかけて行わざるを得ない。そのための手間や、障害の原因追及の過程で生じる人為的なミスを防止することは難しい。
また例えば前記特許文献2は、顧客に関する情報をデータオブジェクトに書き込むための仕組みがない。そのため、システム障害が生じたときに、その障害が企業活動上どのように影響するのかを知ることが難しい。
本発明は、企業内業務処理システムや企業間取引システムにおいて障害が発生したときに、その原因追及の手間や時間を軽減する技術を提供することを目的とする。
さらに本発明は、企業内システムや企業間を連携するシステムにおいて障害が発生したときに、その障害が企業活動に及ぼす影響を把握する技術を提供することを目的とする。
前記課題を解決するために、発明1は、アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムを提供する。このシステムは、中継装置とリソース管理装置とを備える。中継装置は以下の手段を有する。
・前記ユーザ端末と前記コンピュータ端末とに接続され、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行手段、
・前記チケット発行手段が発行したチケットを記憶するチケット記憶手段。
前記リソース管理装置は、以下の手段を有する。
前記アプリケーションの正常応答を前記コンピュータ端末から受信すると前記チケット記憶手段に記憶されているチケットを削除するチケット管理手段、
・少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶手段に記憶されている全てのチケットを回収する回収手段、
・前記エラーログの識別子と前記回収したチケットの識別子とを対応付けて記憶する障害記憶手段。
エラーログとチケットとを対応付けることにより、ユーザと生じたエラーとの対応付が容易になる。従って、異なるコンピュータ端末上でそれぞれ動作するアプリケーションが連携して処理を行うような場合でも、エラーの追跡が容易となる。
ここで、チケットの回収とは、必ずしもチケットキューからのチケットの削除だけを意味しない。例えば、チケットキューに蓄積されているチケットに未回収/回収済のフラグをたてることによる回収も含む。また、一旦チケットキューからチケットを削除した後に、場合に応じてチケットキューに再度チケットを戻すような回収方法も含む。
なお、リクエストされた処理が正常に完了した場合、中継装置は正常応答をアプリケーションから受信し、リクエスト元のユーザ端末に転送してチケットを削除する。
正常に処理を終了した場合にはチケットキューからチケットを削除することにより、エラーが生じたリクエストのチケットのみがチケットキューに残る。従って、チケットキューからのチケットの回収が容易になる。
発明2は、発明1において、前記アプリケーションの実行状態ログのうち前記回収手段が検出すべきレベルを定義する監視レベル情報を記憶する監視レベル情報記憶手段をさらに備える障害検出システムを提供する。ここで、リソース管理装置は、前記監視レベル情報を参照して前記チケットを回収するか否かを判断し、前記判断結果に基づいて前記チケットを回収する。
監視レベル情報は、例えばエラーログ出力時、警告ログ出力時、レスポンスタイム悪化時など、チケットの回収のタイミングを規定する。これにより、適切なタイミングでチケットを回収できるので、発生した障害への対処のタイミングを適切化することができる。
発明3は、発明1において、前記リソース管理装置が回収したチケットに記述されたユーザ識別子に基づいて、前記エラーに関連するユーザ端末を特定し、特定したユーザ端末の識別子を出力する障害通知手段を更に備える障害検出システムを提供する。
障害検出システムの管理者は、障害通知手段により、発生したエラーにより業務上の影響を受けるユーザ端末をすぐに知ることができる。従って、そのユーザ端末の所有者にお詫びするなどの措置を、迅速に取ることができる。
発明4は、アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムが実行する障害検出方法を提供する。この方法は、以下のステップを含む。
・前記ユーザ端末と前記コンピュータ端末とに接続し、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行ステップ、
・前記チケット発行ステップで発行したチケットを記憶するチケット記憶ステップ、
前記アプリケーションの正常応答を前記コンピュータ端末から受信すると前記チケット記憶ステップで記憶されたチケットを記憶手段から削除するチケット管理ステップ、
・少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶ステップで記憶された全てのチケットを回収する回収ステップ、
・前記エラーログの識別子と前記回収したチケットの識別子とを対応付けて記憶する障害記憶ステップ。
この方法は、前記発明1と同様の作用効果を奏する。
また、中継装置、リソース管理装置及び障害通知手段としてコンピュータを機能させるプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体も本発明に含まれる。ここで、記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、CD−ROM、DVD、光磁気ディスク(MO)、その他のものが挙げられる。またプログラムには、記録媒体に記憶されているものもダウンロード可能なものが含まれる。
本発明を用いれば、企業内システムや企業間を連携するシステムにおいて障害が発生したときに、その原因追及の手間や時間が軽減される。また、発生した障害が企業活動に及ぼす影響を容易に把握することができる。
<第1実施形態>
[概要]
図1は、本発明の第1実施形態に係る障害検出システムの構成図である。障害検出システム100は、ネットワーク200を介し、ユーザ端末300、第1〜第Nアプリケーションがそれぞれ動作するコンピュータ400、各アプリケーションの実行状態を示すログを保存する実行状態ログDB500と接続されている。第1〜第Nアプリケーションは、企業内の業務処理や企業間での取引を実行するために必要となるアプリケーションである。ユーザ端末300は、企業内の業務処理や企業間取引のリクエストを出し、その応答を受け取る端末であり、通常は企業内に設置されている。
障害検出システム100は、Wrapper101、リソースマネージャ102、障害通知装置103、障害ログDB104、アプリ構成DB105、監視レベル情報DB106及びビジネスプロセス構成DB107を含んでいる。障害検出システム100の各構成要素は、それぞれ別々のコンピュータ端末上にあってそれらがネットワーク200により接続されていてもよい。また、各構成要素の全部またはその一部が同じコンピュータ端末上にあってもよい。障害検出システム100は、企業内の業務処理に必要な各手順を実行するアプリケーションに発生する障害や、企業間取引(以下、ビジネスプロセスという)に必要な各手順を実行するアプリケーションに発生する障害を検出する。
図2、図3は、障害検出システム100の動作イメージを示す概念説明図である。図2は、障害が起こらない場合、つまり正常時の動作を示す。ユーザ端末300から業務処理が請求されると、Wrapper101はユーザID付チケットを発行して一時的に記憶する。業務処理とは、1以上のアプリケーションが連携して実行する仕事である。業務処理の一例としては、発注業務処理、受注業務処理、在庫引当業務処理を挙げることができる。さらにWrapper101は、リクエストを第1アプリケーションに転送する。リクエストは、業務処理の実行に必要なアプリケーションに次々に順次され、各アプリケーションが起動される。各アプリケーションは、処理を正常に完了すると、転送元に応答を返す。Wrapper101には第1アプリケーションから正常応答が返される。正常応答を受信したWrapper101は、発行チケットを削除し、ユーザ端末300に正常応答を転送する。
図3は、障害が起こった場合、つまり異常時における障害検出システム100の動作イメージを示す概念説明図である。チケットの発行及び各アプリケーションの起動は図2と同様である。いずれかのアプリケーションの動作にエラーが発生すると、そのアプリケーションはエラーログを実行状態ログDB500に書き込む。リソースマネージャ102は、エラーログの書き込みを検出し、発行されている全チケットとエラーログとを対応付けて障害ログDB104に書き込む。
障害通知装置103は、障害ログDB104への書き込みを検出し、エラーログに書かれているエラーの内容とユーザIDとを、障害検出システム100の管理者に通知する。これにより、どのユーザがどのようなエラーにより業務上の影響を受けるのかを迅速に把握することができる。
[構成]
次に、障害検出システム100の構成について、さらに詳細に説明する。
(1)Wrapper
図4は、Wrapper101の機能構成を示すブロック図である。Wrapper101は、ユーザ端末300からのリクエストに応じてユーザID付チケットを発行し、アプリケーションからの正常応答に応じて発行したチケットを削除する。図1ではWrapper101を1つしか示していないが、実際は各業務毎にWrapper101が起動する。例えば発注業務処理用Wrapper101、受注業務処理用Wrapper101、在庫引当業務処理用Wrapper101はそれぞれ独立に起動し、独立に動作する。Wrapper101により発行されたチケットは正常に業務処理が行われた後は削除されるので、削除されずに残ったチケットは異常事態の発生を示していることになる。Wrapper101は、下記の機能を有している。
チケット管理テーブル1011:後述するチケット管理部1013が発行するチケットを一時的に記憶する。1つのWrapper101が複数のユーザ端末からのリクエストを受け付けている場合、リクエストの数だけチケットが発行される。以下の説明において、1つのWrapperのチケット管理テーブル1011に蓄積されているチケットのことを、「チケットキュー」と言うことがある。チケットキューは1つのWrapper101に1つ形成される。各Wrapperのチケットキューは、キューIDで識別される。
セッション管理部1012:ユーザ端末300とアプリケーションとの間の通信を中継する。例えば、ユーザ端末300から業務処理のリクエストを受信すると、その業務処理を行う上で最初に起動すべきアプリケーション(以下、第1アプリケーションという)にそのリクエストを転送する。また、第1アプリケーションからの応答を、ユーザ端末300に転送する。
チケット管理部1013:ユーザ端末300からのリクエストに応じてユーザID付チケットを発行し、チケット管理テーブル1011に格納する。また、アプリケーションからの正常応答に応じ、チケット管理テーブル1011から全チケットを削除する。言い換えれば、アプリケーションから正常応答が返ってこない限り、発行されたチケットはチケット管理テーブル1011に残ったままになる。例えばアプリケーションがエラー応答を返したり、エラー発生によりWrapper101に応答を返さなかった場合である。
図5は、Wrapper101が発行するチケットの概念説明図である。チケットには、チケットを識別するチケットID、Wrapper101を識別するWrapperID、リクエスト元のユーザ端末300を識別するユーザIDが含まれる。ユーザIDとしては例えばユーザ端末300のネットワークアドレスを用いることができる。この例では、その他に構成ID及びフローIDをさらに含んでいる。構成IDとは、企業内の業務処理を構成するアプリケーションの構成を特定する識別子である。構成IDで特定されるアプリケーション構成の内容は、アプリ構成DB105に記憶されている。フローIDとは、ビジネスプロセスの実行に必要な各手順を特定する識別子である。フローIDで特定される手順の内容は、ビジネスプロセス構成DB107に記憶されている。
図6は、アプリ構成DB105に記憶されているアプリケーション構成情報の概念説明図である。構成ID“1”は、Webサーバ、受注システム、データベースの3つのアプリケーションにより業務処理が構成されることを示す。同様に、構成ID“2”は、Webサーバ、在庫引当システム、データベースの3つのアプリケーションにより業務処理が構成されることを示す。従って、アプリケーション構成情報は、複数のアプリケーションの接続状態を示しているとも言える。
図7は、ビジネスプロセス構成DB107に記憶されているビジネスプロセス構成情報の概念説明図である。フローID“1”は、ある企業間取引に必要な一手順が受注システムによる処理であり、パラメータとして(100,200)を渡して受注システムを起動することが記述されている。
なお、Wrapper101は、起動したときに、いずれかの構成ID及びフローIDや第1アプリケーションのアドレスなどの情報を読み込んでいる。例えば、発注業務処理用Wrapper101であれば、発注業務に必要なアプリケーション構成を特定する構成ID、その発注業務が行われる段階を特定するフローID、ユーザ端末300からのリクエストを転送する第1アプリケーションのアドレスなどを、起動時に読み込んでいる。これら読み込んだ情報に基づいて、Wrapper101はチケットへの構成ID及びフローIDの書き込みやリクエストの転送を行う。
(2)リソースマネージャ
図8は、リソースマネージャ102の機能構成を示すブロック図である。リソースマネージャ102は、実行状態ログDB500へのエラーログの書き込み発生を監視し、エラーログが書き込まれると、発生したエラーログとチケット管理テーブル1011内の全チケットとを対応付けて障害ログDB104に書き込む。各チケットにはユーザIDが記述されているので、エラーログとチケットとを対応付けることにより、発生したエラーにより影響を受けるユーザとエラーとを関連づけることができる。Wrapper101が複数起動しているとき、リソースマネージャ102は起動しているWrapper101全てからチケットを回収する。また、リソースマネージャ102は、エラーログだけでなく、エラーが発生する前に出力される警告ログや、アプリケーションの応答が悪化した状態を示すログなどを、チケットと対応付けることもできる。リソースマネージャ102は以下の機能を有している。
IO処理部1021:ネットワーク200を介し、Wrapper101からチケットキューを回収したり、実行状態ログDB500から新たに発生したログを回収したりする。ここで、回収とは、チケット管理テーブル1011のチケットやログが削除される場合、元のチケットやログは残りそのコピーを取得する場合のどちらもがあり得る。コピーを取得する場合、元のチケットには回収済フラグをたてておいてもよい。
チケット回収部1022:IO処理部1021から受け取ったチケットキューのキューIDとチケットキューのアドレスを、チケットキュー所在管理テーブル1023に格納する。チケットキューのアドレスは、Wrapper101内のチケットキューの格納場所を示す。
チケットキュー所在管理テーブル1023:キューIDとチケットキューのアドレスとを記憶する。
ログ取得部1024:IO処理部1021から受け取ったログの識別子(以下、ログIDという)とログのアドレスとを、ログファイル所在管理テーブル1025に格納する。ログのアドレスは、実行状態ログDB500内のログの格納場所を示す。
ログファイル所在管理テーブル1025:ログのログIDとログのアドレスとを記憶する。
チケット回収条件判断部1026:監視レベル情報を参照し、障害ログDB104への書き込みタイミングを決定する。
障害ログDB104保存部1027:障害ログDB104へのログID、キューID、ログのアドレス及びチケットキューのアドレスの書き込みを行う。書き込まれるログとチケットキューとは1対1に対応するとは限らない。障害ログDB104は、データの格納及び検索が可能であれば、いかなる形態でもよい。
図9は、チケットキュー所在管理テーブル1023の概念説明図である。この例では、チケットキュー所在管理テーブル1023には、チケットキューのキューIDとチケットキューのアドレスであるURLとが対応付けられて蓄積されている。
図10は、ログファイル所在管理テーブルの概念説明図である。この例では、ログファイル所在管理テーブルには、ログIDとログのアドレスであるURLとが対応付けられて蓄積されている。
図11は、監視レベル情報DB106に記憶される監視レベル情報の概念説明図である。監視レベル情報は、例えばユーザである企業毎に設定されている。監視レベル情報は、エラーログ発生時だけでなく、それ以外の時にもチケットキュー及びアプリケーションの実行状態ログを障害ログDB104に回収するかどうかを定義する。言い換えれば、監視レベル情報は、アプリケーションの実行状態ログのうちリソースマネージャ102が検出すべきレベルを定義する。この例では、警告ログ発生時及びレスポンス悪化時に回収を行うことが定義されている。従って、チケット回収条件判断部1026は、発生したログがエラーログまたは警告ログであれば、回収したチケットキューとログとを障害ログDB104に書き込むと判断する。また、チケット回収条件判断部1026は、あるアプリケーションのレスポンスが悪化していると判断すれば、そのアプリケーションの実行状態ログとチケットキューとを障害ログDB104に書き込むと判断する。すなわち、監視レベル情報を用いることにより、エラー発生前の段階でエラーに直結しそうな危険な状態を検出することができる。
ここで警告ログとは、エラー発生前の段階でアプリケーションが出力するログである。レスポンス悪化時とは、第jアプリケーションが第(j+1)アプリケーションを起動してから第(j+1)アプリケーションの応答までの時間が他のアプリケーションの応答時間よりも長い場合などである。レスポンスの悪化は、実行状態ログDB500に書き込まれる各アプリケーションの実行状態ログをリソースマネージャ102が監視することで判別可能である。実行状態ログには時刻情報が含まれているのが通例だからである。
(3)障害通知装置
図12は、障害通知装置103の機能構成を示すブロック図である。障害通知装置103は、障害ログDB104への書き込み発生を検出し、書き込まれたチケットとログとからどのユーザが使用中のアプリケーションがどのようなエラーを発生させたのかを、障害検出システム100の管理者に通知する。管理者は、この通知に基づいて、エラーの影響を受けるまたは受けそうなユーザに対し、迅速な対応を取ることができる。障害通知装置103は、下記の機能を有している。
アラートルール記述ファイル1031:エラーの内容やエラーの影響を受けるユーザの通知先を決定するためのアラートルールを定義する。図13は、アラートルールの一例を示す。この例では、あるユーザが使用中のアプリケーションにエラーが発生した場合は通知先を障害検出システムの管理者のチーフマネージャとし、それ以外のユーザの場合は管理者のオペレータを通知先とするアラートルールを示す。アラートルールを用いることにより、例えば重要顧客がエラーの影響を受ける場合には責任者に通知子、迅速な対応を取ることができる。
アラート生成部1032:アラートルール記述ファイル1031、ログの内容、チケットキューに含まれるチケットとを参照し、エラーの内容及びユーザIDの通知先を決定する。ここで、ログの内容及びチケットの内容は、ログのアドレス及びチケットキューのアドレスにアクセスすることにより、取得する。
通知出力部1033:エラー発生とユーザIDとを通知する画面を、障害通知装置103に接続されるディスプレイ(図示せず)に出力する。また、例えば電子メールクライアントを用いて通知出力部1033を構成し、通知を他のコンピュータ端末に送信することもできる。
[処理]
図14は、本実施形態例に係る障害通知システムが実行する処理の流れの一例を示す説明図である。この処理は、大別して(1)チケットの発行と、(2)障害ログDB104への保存と、(3)エラーの通知出力とに分けられる。
(1)チケットの発行
まず、ユーザ端末300がWrapper101に対し、業務処理の実行を要求するリクエストを送信する(#1)。このリクエストには、ユーザ端末300のアドレスなどのユーザIDが含まれている。
リクエストを受信したWrapper101は、リクエストされた業務処理に対してユーザID付チケットを発行し、チケット管理テーブル1011にチケットを格納する(#2,#3)。さらにWrapper101は、受信したリクエストを第1アプリケーションが動作しているコンピュータ400に転送する(#4)。
コンピュータ400の第jアプリケーション(1≦j≦N)は、次々にリクエストを受信し、アプリケーション毎の処理を開始する(#5,#6)。各アプリケーションは、処理の実行中に、実行状態を示すログを実行状態ログDB500に出力する。例えば処理を完了するまでにエラーが発生した場合(#7,#8)、第jアプリケーションはエラーログを実行状態ログDB500に出力する(#9)。エラーが発生することなく処理を完了したら、第jアプリケーションは正常応答をリクエスト元に送信する(#10)。ここで、リクエスト元とは、Wrapper101または第jアプリケーションを呼ぶ第(j−1)アプリケーションである。
Wrapper101は、正常応答を第1アプリケーションから受信すると(#11)、チケット管理テーブル1011に残っている全チケットを削除し(#12)、正常応答をリクエスト元ユーザ端末300に転送する(#14)。言い換えれば、Wrapper101は、正常応答を第1アプリケーションから受信するまで、チケット管理テーブルのチケットを削除しない。従って、チケット管理テーブル内に残存するチケットは、そのWrapper101に対応する業務処理の実行中に何らかの異常が発生したことを示す。
(2)障害ログDB104への保存
リソースマネージャ102は、起動すると、監視レベル情報DB106から監視レベル情報を読み込んでおく(#20)。リソースマネージャ102は、実行状態ログDB500への書き込みを監視し、新たなログが書き込まれると監視レベル情報に基づいて障害ログDB104への書き込みを行うか否かを判断する(#21,#22)。例えば、発生したログが警告ログであり、監視レベル情報に「エラーログ、警告ログまたはレスポンスの悪化時」と定義されていれば、書き込むと判断する。書き込む場合は、発生したログと、起動しているWrapper101にあるチケットキューとを回収し、障害ログDB104に保存する(#23,#24)。
(3)エラーの通知出力
障害通知装置103は、例えば起動時に、アプリ構成DB105及びビジネスプロセス構成DB107から、それぞれアプリケーション構成とビジネスプロセス構成とを読み込んでおく(#25,#26)。その後、障害通知装置103は、障害ログDB104への書き込みを監視し(#27)、障害ログDB104への書き込みが発生すると、新たに障害ログDB104に書き込まれたチケットに基づいてユーザIDを特定する(#28)。また、障害通知装置103は、構成ID及びフローIDを特定しても良い。エラーを起こしたアプリケーションが構成IDで特定されるアプリケーション構成に含まれていない場合、障害通知装置103は障害通知を行わなわず、回収したチケットを元に戻すと良い。
さらに、障害通知装置103は、記憶しているアラートルールを参照し、障害通知の通知先を決定する(#29)。例えば、重要顧客が関連しているエラーが発生した場合には、障害通知の通知先を図示しないマネージャ端末に決定する。その後、障害通知装置103は、決定した通知先に障害発生通知を送信する(#30)。この通知には、少なくともユーザIDを含み、さらに構成IDに対応するアプリケーション構成や、フローIDに対応するビジネスプロセス構成を含んでいてもよい。
[画面例]
図15は、前述の処理により、障害通知装置103が出力する障害通知画面例である。この例では、ユーザID、エラーが生じた処理のアプリケーション構成及びビジネスプロセスが示されている。すなわち、在庫引き当てアプリケーションがデータベース(DB)に書き込みを行おうとしたときにエラーが発生したこと、その日時が示されている。
[効果]
以上のように、本発明の障害検出システムを用いれば、企業内の業務処理システムやビジネスプロセスシステムにおいて障害が発生したときに、その障害により影響を受ける企業を自動的に特定する。また、どの企業がどのような障害の影響を受けたかを、自動的に特定する。さらに、どのような業務処理システムまたはビジネスプロセスシステムにおいて障害が発生したのか、また発生した障害はそのシステムを構築するどの部分またはどの段階なのかを、自動的に特定する。エラーの発生前に、エラーに直結しそうな事態を検知して障害検出システムの管理者に通知することもできる。その結果、障害の原因の追及の手間や時間を軽減することができる。また、発生した障害が企業活動に及ぼす影響を容易に把握し、障害の発生に迅速に対応することができる。
<その他の実施形態>
上記の方法を実行するためのプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、CD−ROM、DVD、光磁気ディスク(MO)、その他のものが挙げられる。またプログラムには、記録媒体に記憶されているものもダウンロード可能なものが含まれる。
[実施例1]
図16は、本発明の実施例1の説明図である。本実施例では、ASP事業者が、受注や在庫引当などの業務アプリケーション4001,4002を、複数の顧客企業にネットワーク200経由で提供する場合を想定する。ASP事業者側では、受注アプリケーション4001と在庫引当アプリケーション4002とがデータベースシステムを共有している。ユーザ端末3001は受注アプリケーション4001を使用し、ユーザ端末3002は在庫引当アプリケーション4002を使用している。
ユーザ端末3001が受注の業務アプリケーションの処理を開始すると、Wrapper101−1は、ユーザ端末3001のユーザID付チケットを発行し、チケットキュー1011(チケット管理テーブル1011に相当)に登録する。また、ユーザ端末3002が在庫引当のアプリケーションの処理を開始すると、Wrapper101−2は、ユーザ端末3002のユーザID付チケットを発行し、チケットキュー1011に登録する。各業務アプリケーション400の処理が実行され、このうち在庫引当アプリケーション4002がデータベースに書き込もうとして、Disk Fullにより書込失敗のエラーが発生したとする。すると、実行状態ログDB105が記録され、リソースマネージャ102がそれを検出し、チケットキュー1011に残っているチケットとエラーログとをセットで障害ログDB104に保存する。
その後、図示しない障害通知装置は、チケットのユーザID、構成ID、フローIDを取得し、構成IDに基づいてアプリ構成DB105を、フローIDに基づいてビジネスプロセス構成DB107を参照する。さらに、障害通知装置は、「ユーザ端末3002が使用中の在庫引当アプリケーションが書き込みエラーを起こした」と言う状態を把握し、たとえばユーザ端末3002に対し、アラートを通知する。各アラートは、ユーザ端末300に直接通知してもよいし、あるいは障害検出システムのオペレータにEメール等で通知してもよい。
[実施例2]
図17は、本発明の実施例2の説明図である。本実施例では、実施例1と同様、ASP事業者が、受注や在庫引当などの業務アプリケーションを、複数の顧客企業にネットワーク経由で提供する場合を想定する。ユーザ端末3001は受注アプリケーションを使用し、ユーザ端末3002は在庫引当アプリケーションを使用している。チケットキューには、ユーザ端末3001及びユーザ端末3002のリクエストが蓄積されている。
ユーザ端末3001が受注の業務アプリケーションの処理を開始すると、Wrapper101−1は、ユーザ端末3001のユーザID付チケットを発行し、チケットキュー1011(チケット管理テーブル1011に相当)に登録する。また、ユーザ端末3002が在庫引当のアプリケーションの処理を開始すると、Wrapper101−2は、ユーザ端末3002のユーザID付チケットを発行し、チケットキュー1011に登録する。各業務アプリケーション400の処理が実行され、このうち在庫引当アプリケーション4002がデータベースに書き込もうとして、Disk Fullにより書込失敗のエラーが発生したとする。すると、実行状態ログDB105が記録され、リソースマネージャ102がそれを検出し、チケットキュー1011に残っているチケットとエラーログとをセットで障害ログDB104に保存する。
このとき、回収したチケットからユーザID、構成ID、フローIDを取得し、構成IDに基づいてアプリ構成DB105を参照することにより、図示しない障害通知装置が、障害の影響を受けたユーザ端末3001と、これから影響を受ける可能性があるユーザ端末3002とにアラートを通知する。既にデータベースに障害が発生しており、そのデータベースを共有しているアプリケーションを使用中の他ユーザ端末300は、障害の影響を受ける可能性が高いからである。ここで、各アラートは、ユーザ端末300に直接通知してもよいし、あるいは障害検出システムのオペレータにEメール等で通知してもよい。
[実施例3]
図18は、本発明の実施例3の説明図である。本実施例では、チケットの回収のタイミングを決定するにあたって、監視レベル情報を使用する。
本実施例では、実施例1と同様、ASP事業者が、受注や在庫引当などの業務アプリケーションを、複数の顧客企業にネットワーク経由で提供する場合を想定する。ユーザ端末3001は受注アプリケーションを使用し、ユーザ端末3002は在庫引当アプリケーションを使用している。チケットキューには、ユーザ端末3001及びユーザ端末3002のリクエストが蓄積されている。
ユーザ端末3001が受注の業務アプリケーションの処理を開始すると、Wrapper101−1は、ユーザ端末3001のユーザID付チケットを発行し、チケットキュー1011(チケット管理テーブル1011に相当)に登録する。また、ユーザ端末3002が在庫引当のアプリケーションの処理を開始すると、Wrapper101−2は、ユーザ端末3002のユーザID付チケットを発行し、チケットキュー1011に登録する。各業務アプリケーション400の処理が実行され、このうち在庫引当アプリケーション4002がデータベースに書き込もうとして、データベースのレスポンスが悪化したとする。すると、実行状態ログDB105にレスポンスの悪化ログとログ処理時刻とが記録される。
リソースマネージャ102は、監視レベル情報DB106を参照して監視レベル情報を取り込み、各アプリケーションが出力するログとログ処理時刻とを常時監視して、監視レベル情報で指定された条件に合致するかを計算する。その条件を満たした場合に、チケットキュー1011に保存されているチケットをログ情報と組み合わせて障害ログDB104に保存する。監視レベル情報に記載される回収タイミング情報としては、エラーログ出力時、警告ログ出力時、レスポンスタイム悪化時といった回収タイミングが想定できる。
このとき、回収したチケットからユーザID、構成ID、フローIDを取得し、構成IDに基づいてアプリ構成DB105を参照することにより、図示しない障害通知装置が、障害の影響を受けたユーザ端末3002と、これから影響を受ける可能性があるユーザ端末3001とにアラートを通知する。既にデータベースに障害が発生しており、そのデータベースを共有しているアプリケーションを使用中の他ユーザ端末は、障害の影響を受ける可能性が高いからである。ここで、各アラートは、ユーザ端末300に直接通知してもよいし、あるいは障害検出システムのオペレータにEメール等で通知してもよい。
<付記>
(付記1)
アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムであって、
中継装置とリソース管理装置とを備え、
前記中継装置は、
前記ユーザ端末と前記コンピュータ端末とに接続され、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行手段と、
前記チケット発行手段が発行したチケットを記憶するチケット記憶手段と、を有し、
前記リソース管理装置は、
少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶手段に記憶されているチケットを回収する回収手段と、
前記エラーログの識別子と前記チケットの識別子とを対応付けて記憶する障害記憶手段と、を有している障害検出システム。
(付記2)
前記中継装置は、前記チケット記憶手段に記憶されているチケットを削除するチケット管理手段をさらに備える、付記1に記載の障害検出システム。
(付記3)
前記アプリケーションの実行状態ログのうち前記回収手段が検出すべきレベルを定義する監視レベル情報を記憶する監視レベル情報記憶手段をさらに備え、
前記リソース管理装置は、前記監視レベル情報を参照して前記チケットを回収するか否かを判断し、前記判断結果に基づいて前記チケットを回収する、
付記1に記載の障害検出システム。
(付記4)
前記リソース管理装置が回収したチケットに記述されたユーザ識別子に基づいて、前記エラーに関連するユーザ端末を特定し、特定したユーザ端末の識別子を出力する障害通知手段を更に備える、付記1に記載の障害検出システム。
(付記5)
複数のアプリケーションの接続状態を示したアプリケーション構成情報を記憶しているアプリケーション構成記憶手段をさらに備え、
前記障害通知手段は、前記アプリケーション構成記憶手段に記憶されたアプリケーション構成情報と前記リソース管理装置が回収したチケットの記述とに基づいて、前記ユーザ端末が使用しているアプリケーションを特定し、特定したアプリケーションの識別子をさらに出力し、
前記チケット発行手段は、前記アプリケーション構成情報への参照情報を前記チケットに書き込む、
付記4に記載の障害検出装置。
アプリケーション構成情報は、1つの処理を実行する上で必要なアプリケーションの組み合わせを定義する。アプリケーション構成は、例えば構成IDにより識別される。チケットに構成IDを書き込み、回収したチケットに書き込まれた構成IDに対応するアプリケーション構成を読み出すことにより、あるエラーに関連するアプリケーションが簡単に把握できるようになる。言い換えれば、エラーの影響を受けるユーザ端末が使用しているアプリケーションを簡単に把握することができる。
(付記6)
複数のアプリケーションからなる処理の各ステップを定義するビジネスプロセス構成情報を記憶しているビジネスプロセス構成記憶手段をさらに備え、
前記障害通知手段は、前記ビジネスプロセス構成記憶手段に記憶されたビジネスプロセス構成情報と前記リソース管理装置が回収したチケットの記述とに基づいて、前記エラーが発生した時点を特定し、特定した時点をさらに出力し、
前記チケット発行手段は、前記ビジネスプロセス構成情報への参照情報をチケットに書き込む、
付記4に記載の障害検出装置。
ビジネスプロセス構成情報は、1つの処理を実行するアプリケーションの順序を定義する。ビジネスプロセス構成は、例えばフローIDにより識別される。チケットにフローIDを書き込み、回収したチケットに書き込まれたフローIDに対応するビジネスプロセス構成を読み出すことにより、1つの処理を行うための複数段階のうちどの段階でエラーが起こったのかを簡単に把握することができる。
(付記7)
前記障害通知装置は、電子メールクライアントが動作するコンピュータ端末と前記ネットワークを介して接続されており、
前記障害通知装置は、電子メールクライアントをさらに有し、前記エラーに関連するユーザ端末の識別子を前記電子メールクライアントにより前記コンピュータ端末に送信する、
付記4に記載の障害検出システム。
障害検出システムの管理ユーザが使用するコンピュータ端末と障害通知装置が動作するコンピュータ端末とが異なる場合でも、管理ユーザはエラーの発生及びそのエラーに関連する顧客を知ることができる。さらに、障害通知装置にアラートルール記憶手段を設け、通知先決定条件を記憶させることもできる。そうすれば、エラーの発生条件に応じてエラーの通知先を変えることができる。例えば、重要顧客に関連するアプリケーションがエラーを起こした場合は管理ユーザのマネージャ端末に通知し、それ以外のエラーはオペレータ端末に通知することが挙げられる。
(付記8)
アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムが実行する障害検出方法であって、
前記ユーザ端末と前記コンピュータ端末とに接続し、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行ステップと、
前記チケット発行ステップで発行したチケットを記憶するチケット記憶ステップと、
少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶ステップで記憶されたチケットを回収する回収ステップと、
前記エラーログの識別子と前記チケットの識別子とを対応付けて記憶する障害記憶ステップと、
を含む障害検出方法。
本発明は、企業内の業務システムや企業間の取引システムにおける障害の検出に適用可能である。
第1実施形態に係る障害検出システムの構成図 障害検出システムの動作イメージを示す概念説明図(正常時) 障害検出システムの動作イメージを示す概念説明図(異常時) Wrapperの機能構成を示すブロック図 Wrapperが発行するチケットの概念説明図 アプリ構成DBに記憶されているアプリケーション構成情報の概念説明図 ビジネスプロセス構成DBに記憶されているビジネスプロセス構成情報の概念説明図 リソースマネージャの機能構成を示すブロック図 チケットキュー所在管理テーブルの概念説明図 ログファイル所在管理テーブルの概念説明図 監視レベル情報DBに記憶される監視レベル情報の概念説明図 障害通知装置の機能構成を示すブロック図 アラートルールの一例を示す説明図 障害通知システムが実行する処理の流れの一例を示す説明図 障害通知の画面例 実施例1の説明図 実施例2の説明図 実施例3の説明図
符号の説明
100:障害検出システム
200:ネットワーク
300:ユーザ端末
400:アプリケーションが動作するコンピュータ
500:実行状態ログDB
101:Wrapper
102:リソースマネージャ
103:障害通知装置
104:障害ログDB104
105:アプリ構成DB
106:監視レベル情報DB
107:ビジネスプロセス構成DB

Claims (4)

  1. アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムであって、
    中継装置とリソース管理装置とを備え、
    前記中継装置は、
    前記ユーザ端末と前記コンピュータ端末とに接続され、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行手段と、
    前記チケット発行手段が発行したチケットを記憶するチケット記憶手段と、を有し、
    前記リソース管理装置は、
    前記アプリケーションの正常応答を前記コンピュータ端末から受信すると前記チケット記憶手段に記憶されているチケットを削除するチケット管理手段と、
    少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶手段に記憶されている全てのチケットを回収する回収手段と、
    前記エラーログの識別子と前記回収したチケットの識別子とを対応付けて記憶する障害記憶手段と、を有している障害検出システム。
  2. 前記アプリケーションの実行状態ログのうち前記回収手段が検出すべきレベルを定義する監視レベル情報を記憶する監視レベル情報記憶手段をさらに備え、
    前記リソース管理装置は、前記監視レベル情報を参照して前記チケットを回収するか否かを判断し、前記判断結果に基づいて前記チケットを回収する、
    請求項1に記載の障害検出システム。
  3. 前記リソース管理装置が回収したチケットに記述されたユーザ識別子に基づいて、前記エラーに関連するユーザ端末を特定し、特定したユーザ端末の識別子を出力する障害通知手段を更に備える、請求項1に記載の障害検出システム。
  4. アプリケーションが動作している1以上のコンピュータ端末と前記アプリケーションのユーザの端末とにネットワークを介して接続される障害検出システムが実行する障害検出方法であって、
    前記ユーザ端末と前記コンピュータ端末とに接続し、前記ユーザ端末からいずれかのアプリケーションへのリクエストに応じて前記ユーザ端末を識別するユーザ識別子が記述されたチケットを発行するチケット発行ステップと、
    前記チケット発行ステップで発行したチケットを記憶するチケット記憶ステップと、
    前記アプリケーションの正常応答を前記コンピュータ端末から受信すると前記チケット記憶ステップで記憶されたチケットを記憶手段から削除するチケット管理ステップと、
    少なくとも前記アプリケーションがエラー発生時に出力するエラーログを検出し、前記チケット記憶ステップで記憶された全てのチケットを回収する回収ステップと、
    前記エラーログの識別子と前記回収したチケットの識別子とを対応付けて記憶する障害記憶ステップと、
    を含む障害検出方法。
JP2004106237A 2004-03-31 2004-03-31 障害検出システム及び方法 Expired - Fee Related JP4271612B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004106237A JP4271612B2 (ja) 2004-03-31 2004-03-31 障害検出システム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004106237A JP4271612B2 (ja) 2004-03-31 2004-03-31 障害検出システム及び方法

Publications (2)

Publication Number Publication Date
JP2005293140A JP2005293140A (ja) 2005-10-20
JP4271612B2 true JP4271612B2 (ja) 2009-06-03

Family

ID=35326012

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004106237A Expired - Fee Related JP4271612B2 (ja) 2004-03-31 2004-03-31 障害検出システム及び方法

Country Status (1)

Country Link
JP (1) JP4271612B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7647202B2 (en) * 2006-07-05 2010-01-12 Arizona Public Service Company Method for exception-based notification of the condition of an apparatus
CN109977284B (zh) * 2019-03-18 2023-07-14 深圳市活力天汇科技股份有限公司 一种机票购买失败原因的诊断方法

Also Published As

Publication number Publication date
JP2005293140A (ja) 2005-10-20

Similar Documents

Publication Publication Date Title
CN105357038B (zh) 监控虚拟机集群的方法和系统
US8799709B2 (en) Snapshot management method, snapshot management apparatus, and computer-readable, non-transitory medium
US8135995B2 (en) Diagnostic data repository
JP5075736B2 (ja) 仮想サーバのシステム障害回復方法及びそのシステム
US9262260B2 (en) Information processing apparatus, information processing method, and recording medium
US8424095B2 (en) Method and equipment for verifying propriety of system management policies to be used in a computer system
US8326971B2 (en) Method for using dynamically scheduled synthetic transactions to monitor performance and availability of E-business systems
JP4722944B2 (ja) データベースの分散ロードのためのシステム、方法およびソフトウェア
EP2674865A1 (en) MANAGEMENT COMPUTER AND METHOD FOR ROOT CAUSE ANALYSiS
JP4494330B2 (ja) ポリシ制御方法、装置及びプログラム
EP1955235A2 (en) System and method of managing data protection resources
JP2012053903A (ja) 分散型検索方法、アーキテクチャ、システム、およびソフトウェア
JP2009536403A (ja) ワーク・アイテム・イベント処理
JP2011197785A (ja) ログ収集システムおよびログ収集プログラム
JP4881760B2 (ja) ログ管理装置、ログ管理方法、プログラム、及び記録媒体
JP4271612B2 (ja) 障害検出システム及び方法
JP2003345628A (ja) 障害調査資料採取方法及びその実施システム並びにその処理プログラム
US7065539B2 (en) Data transfer method
JP3202721B2 (ja) 故障予測システム、故障予測方法および故障予測プログラムを記録した記録媒体
JP4445750B2 (ja) 因果関係推定プログラム及び因果関係推定方法
CN113485872A (zh) 故障处理方法、装置及分布式存储系统
JP3992029B2 (ja) オブジェクト管理方法
JP2007164494A (ja) 情報出力方法、システム及びプログラム
JP6290810B2 (ja) 管理装置及び管理方法
JP7167749B2 (ja) 情報処理装置、情報処理システム、及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051020

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080929

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081219

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: 20090224

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: 20090225

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140306

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees