(57)【特許請求の範囲】
【請求項１】
ホストと呼ぶ業務実行サーバにより構成される業務システムおよび前記業務実行サーバによるジョブの実行を管理するジョブ管理サーバと接続し、前記業務システムを運用管理する運用管理サーバにおける、前記業務システムに発生するインシデントを管理する方法であって、前記運用管理サーバは、
前記業務システムに発生した前記インシデントの発生に応答して、前記インシデントと前記インシデントが発生した前記ホストとを対応付けたインシデントテーブル、並びに、前記ホストにより実行される前記ジョブ及び前記ジョブを含むジョブグループと前記ホストとを対応付けた、前記ジョブ管理サーバからのジョブグループ定義テーブルを参照して、前記インシデントが発生した前記ホストにより実行される前記ジョブ及び前記ジョブグループを特定し、
前記ジョブ管理サーバからのジョブ実行スケジュールテーブルに示される前記ジョブの実行状況を参照して、前記ジョブグループ内の、前記インシデントの発生により再実行すべき及び未実行のジョブを特定し、
特定した前記ジョブに関連させて、前記インシデントが前記業務システムに与える影響度である迷惑度を、前記ジョブグループ定義テーブルに示される、特定した前記ジョブを実行する前記ホストの冗長度の逆数として求めることを特徴とするインシデント管理方法。
【請求項２】
ホストと呼ぶ業務実行サーバにより構成される業務システムおよび前記業務実行サーバによるジョブの実行を管理するジョブ管理サーバと接続し、前記業務システムを運用管理する運用管理サーバにおける、前記業務システムに発生するインシデントを管理する方法であって、前記運用管理サーバは、
前記業務システムに発生した前記インシデントの発生に応答して、前記インシデントと前記インシデントが発生した前記ホストとを対応付けたインシデントテーブル、並びに、前記ホストにより実行される前記ジョブ及び前記ジョブを含むジョブグループと前記ホストとを対応付けた、前記ジョブ管理サーバからのジョブグループ定義テーブルを参照して、前記インシデントが発生した前記ホストにより実行される前記ジョブ及び前記ジョブグループを特定し、
前記ジョブ管理サーバからのジョブ実行スケジュールテーブルに示される前記ジョブの実行状況を参照して、前記ジョブグループ内の、前記インシデントの発生により再実行すべき及び未実行のジョブを特定し、
特定した前記ジョブに関連させて、前記インシデントが前記業務システムに与える影響度である迷惑度を、前記ホストにおける前記インシデントと類似したインシデントと対処所要時間とを対応付けた対処時間履歴テーブルを参照した前記類似したインシデントへの対処完了予定日時までの、前記ジョブ実行スケジュールテーブルに示される、前記ジョブグループの実行予定回数として求めることを特徴とするインシデント管理方法。
【請求項３】
ホストと呼ぶ業務実行サーバにより構成される業務システムと前記業務実行サーバによるジョブの実行を管理するジョブ管理サーバとに接続し、
前記業務システムに発生したインシデントの発生に応答して、前記インシデントと前記インシデントが発生した前記ホストとを対応付けたインシデントテーブル、並びに、前記ホストにより実行される前記ジョブ及び前記ジョブを含むジョブグループと前記ホストとを対応付けた、前記ジョブ管理サーバからのジョブグループ定義テーブルを参照して、前記インシデントが発生した前記ホストにより実行される前記ジョブ及び前記ジョブグループを特定するインシデント−ジョブ関連特定部、
前記ジョブ管理サーバからのジョブ実行スケジュールテーブルに示される前記ジョブの実行状況を参照して、前記ジョブグループ内の、前記インシデントの発生により再実行すべき及び未実行のジョブを特定するジョブ実行予測部、及び、
特定した前記ジョブに関連させて、前記インシデントが前記業務システムに与える影響度である迷惑度を、前記ジョブグループ定義テーブルに示される、特定した前記ジョブを実行する前記ホストの冗長度の逆数として求める迷惑度算出部を有することを特徴とする運用管理サーバ。
【請求項４】
ホストと呼ぶ業務実行サーバにより構成される業務システムと前記業務実行サーバによるジョブの実行を管理するジョブ管理サーバとに接続し、
前記業務システムに発生したインシデントの発生に応答して、前記インシデントと前記インシデントが発生した前記ホストとを対応付けたインシデントテーブル、並びに、前記ホストにより実行される前記ジョブ及び前記ジョブを含むジョブグループと前記ホストとを対応付けた、前記ジョブ管理サーバからのジョブグループ定義テーブルを参照して、前記インシデントが発生した前記ホストにより実行される前記ジョブ及び前記ジョブグループを特定するインシデント−ジョブ関連特定部、
前記ジョブ管理サーバからのジョブ実行スケジュールテーブルに示される前記ジョブの実行状況を参照して、前記ジョブグループ内の、前記インシデントの発生により再実行すべき及び未実行のジョブを特定するジョブ実行予測部、及び、
特定した前記ジョブに関連させて、前記インシデントが前記業務システムに与える影響度である迷惑度を、前記ホストにおける前記インシデントと類似したインシデントと対処所要時間とを対応付けた対処時間履歴テーブルを参照した前記類似したインシデントへの対処完了予定日時までの、前記ジョブ実行スケジュールテーブルに示される、前記ジョブグループの実行予定回数として求める迷惑度算出部を有することを特徴とする運用管理サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インシデント管理方法およびインシデントを管理する運用管理サーバに関する。
【背景技術】
【０００２】
一般的に大企業のＩＴを使用した業務システムが１時間に亘ってシステム障害やメンテナンスなどで停止すると、数百万円〜数千万円もの損害を被るとされている。業務システムのシステム停止における損害額を最小限に抑えるためには、業務システムのインシデントに対して迅速に効率良く対処する必要がある。近年では、サーバ仮想化技術の導入により、１件のインシデントに対して効率良くかつ迅速に対処できるようになってきている。その一方で、インシデントの件数は減少しておらず、優先度を付ける、担当者を均一に割り振るなど、全てのインシデントを効率良く対処する方法が必要とされている。
【０００３】
インシデントを効率良く対処する方法として、例えば特許文献１および特許文献２に開示された技術が存在する。特許文献１には、サービスを提供する情報処理システムにおいて、発生したインシデントがサービスに与える影響度を算出し、算出した影響度をユーザに提示する方法が開示されている。また特許文献２には、インシデントの対処期限までの対処作業の完了確率を算出し、算出した完了確率を使用してインシデントを対処する際の優先度を決定している。
【０００４】
特許文献１に記載されている技術によれば、影響度の算出にはインシデントの発生元となるリソース（ハードウェアまたはソフトウェア）と同等リソースを特定し、この同等リソースの稼働状態およびその数に基づいて、サービスに対するインシデントの影響度を算出している。
【０００５】
特許文献２に記載されている技術によれば、あらかじめ設定されているインシデントの対処完了期限までに対処作業が完了する確率を算出し、この完了期限までに複数の着手予定の対処作業がある場合は、完了確率の低い方の対処作業を優先して作業者に割り当てている。なお、完了確率は、これまでに発生した類似のインシデントを特定し、特定したインシデントの対処に要した時間と発生しているインシデントの対処完了期限との比較によって算出している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２１７２８５号公報
【特許文献２】特許第３２７６８３４号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の方法によれば、インシデントの発生元リソースと同等のリソースの稼働状態およびその数、つまり現在の状態によってサービスに対する影響度を決定している。したがって、現在は実行されていないが将来的に実行されるジョブや、再実行が必要となるジョブに対するインシデントの影響度を求めることができない。現在の状態だけではなく、将来の状態を予測して、予測結果に基づき、ジョブ実行に対するインシデントの影響度を算出する必要がある。例えば、ある処理を実行するジョブを複数連ねたジョブグループが存在する場合、ジョブグループの実行途中にインシデントが発生し、ジョブ実行が中断された場合、ジョブググループ中のどれだけのジョブが完了しているのかによって、残りの実行すべきジョブの数が異なる。同じジョブグループを対象にしても、インシデントの発生箇所によっては、中断したジョブから再実行しても問題のない（一旦データをＤＢに格納し終えた後のジョブなど、後続のジョブに影響がない）ケースと、全てを再実行しなくてはいけない（後続のジョブで使用するデータをＤＢに格納するためのジョブなど、後続のジョブに影響する）ケースがある。特許文献１の方法によれば、両ケースは同じジョブグループに対するインシデントであり、リソースの稼働状態とその数が同じであるため、ジョブグループの実行に対して、同じ影響度が算出される。しかし実際には、将来、再実行しなくてはならないジョブの量は異なるため、両ケースにおいて、ジョブグループの実行に対するインシデントの影響度は異なる。
【０００８】
特許文献２の方法によれば、インシデントの対処完了期限と、これまでの対処作業の時間履歴から算出したインシデントの完了確率に、インシデントの重要度、つまり、優先度を乗算して、インシデントの対処完了期待値を求め、期待値が高いインシデントを優先的に割り当てている。特許文献２では優先度はあらかじめインシデントに対応付けて登録されていることを前提としている。すなわち、優先度の高いインシデントへの対処により、インシデントの影響度を小さくしようとするもので、影響度の大きさについて考慮していない。
【０００９】
本明細書では、業務システムに対するインシデントによる影響度を、業務システムを構成する業務実行サーバが実行する、再実行すべきジョブ又はジョブグループ、並びに、既に実行がスケジュールされたジョブ又はジョブグループに関係させて、迷惑度と呼ぶ。
【課題を解決するための手段】
【００１０】
本発明の一態様は、運用管理サーバが、インシデントを管理するために、ホストと呼ぶ業務実行サーバにより構成される業務システムと業務実行サーバによるジョブの実行を管理するジョブ管理サーバとに接続し、業務システムに発生したインシデントの発生に応答して、インシデントとインシデントが発生したホストとを対応付けたインシデントテーブル、並びに、ホストにより実行されるジョブ及びブを含むジョブグループとホストとを対応付けた、ジョブ管理サーバからのジョブグループ定義テーブルを参照して、インシデントが発生したホストにより実行されるジョブ及びジョブグループを特定するインシデント−ジョブ関連特定部、ジョブ管理サーバからのジョブ実行スケジュールテーブルに示されるジョブの実行状況を参照して、ジョブグループ内の、インシデントの発生により再実行すべき及び未実行のジョブを特定するジョブ実行予測部、及び、特定したジョブに関連させて、インシデントが業務システムに与える影響度である迷惑度を求める迷惑度算出部を有する。
【００１１】
本発明の他の望ましい態様は、迷惑度算出部は、（1）ジョブ実行スケジュールテーブルに示される、特定したジョブの数、（2）ジョブ実行スケジュールテーブルに示される、特定したジョブの実行時間、（3）ジョブグループ定義テーブルに示される、特定したジョブを実行するホストの数、（4）ジョブグループ定義テーブルに示される、特定したジョブを実行するホストの冗長度、および（5）インシデントと対処所要時間とを対応付けた対処時間履歴テーブルを参照したインシデントへの対処完了予定日時までの、ジョブ実行スケジュールテーブルに示される、ジョブグループの実行予定回数の少なくとも１つとして迷惑度を求める。
【００１２】
その他、本願が開示する課題、およびその解決方法は、発明を実施するための最良の形態の欄、および図面により明らかにされる。
【発明の効果】
【００１３】
本発明によれば、業務システムに対するインシデントによる影響度を、業務システムを構成する業務実行サーバが実行する、再実行すべきジョブ又はジョブグループ、並びに、既に実行がスケジュールされたジョブ又はジョブグループに関係させた定量的な迷惑度として出力し、システム管理者によるインシデントへの対処を支援できる。
【図面の簡単な説明】
【００１４】
【図１】情報処理システムの構成の一例を示すブロック図である。
【図２】インシデントテーブルの一例である。
【図３】インシデント−ジョブ関連テーブルの一例である。
【図４】再実行開始ジョブテーブルの一例である。
【図５】迷惑度テーブルの一例である。
【図６】対処時間履歴テーブルの一例である。
【図７】予測対処時間テーブルの一例である。
【図８】ジョブグループ定義テーブルの一例である。
【図９】ジョブ実行スケジュールテーブルの一例である。
【図１０】ジョブ再実行定義テーブルの一例である。
【図１１】運用管理サーバ等の計算機のハードウェア構成図の一例である。
【図１２】迷惑度算出処理のフロー図の一例である。
【図１３】迷惑度加算処理のフロー図の一例である。
【発明を実施するための形態】
【００１５】
図１は、本実施形態の情報処理システム１の構成を示すブロック図である。本実施形態の情報処理システム１は、運用管理サーバ１００、運用管理端末１０１、ジョブ管理サーバ１０２、業務実行サーバにより構成される業務システム１０を有し、それらは、ネットワーク２００９を介して相互に通信可能に接続している。運用管理サーバ１００、運用管理端末１０１、ジョブ管理サーバ１０２、および業務実行サーバは、一般的なハードウェア構成を有するコンピュータであって、ＣＰＵ、メモリ（ＲＡＭ、ＲＯＭ等）、データ入出力インタフェース、通信インタフェース（ＮＩＣ等）、ソフトウェアプログラムなどを格納する補助記憶装置（ディスク装置等）、キーボード、マウス等の入力装置、表示装置、プリンタ等の出力装置などを備えている。
【００１６】
運用管理サーバ１００、運用管理端末１０１、およびジョブ管理サーバ１０２の各処理部（例えば運用管理サーバ１００のジョブ実行予測部１０６など）の処理は、補助記憶装置に格納されているプログラムをメモリに読み出してＣＰＵが実行することにより実現される。
【００１７】
運用管理サーバ１００は、業務システム１０の負荷、障害、メンテナンス等の運用に関わる管理を実行すると共に、業務システム１０に発生したインシデントによる影響(迷惑度)を求め、発生したインシデントへの管理者による対処を支援する。したがって、運用管理サーバ１００は、インシデント管理装置としての機能を有することになる。運用管理端末１０１は、運用管理サーバ１００の実行のために、情報処理システム１または業務システム１０のシステム管理者とのインターフェイスを果たす端末である。ジョブ管理サーバ１０２は、業務システム１０を構成する業務実行サーバが実行するジョブ(プログラム)を管理する。
【００１８】
運用管理サーバ１００について説明する。運用管理サーバ１００は、業務実行サーバにより構成される業務システム１０において発生したインシデントに関連するジョブグループの実行に対するインシデントの迷惑度を算出する処理を実行するサーバコンピュータである。業務システム１０とは、販売や生産、会計、物流など会社を運営するために必要な業務処理を実行するシステムであり、代表的なものに財務管理システム、給与管理システム、オンライン購買システム、営業管理システムなどがある。インシデントとは、業務システム１０において発生した障害情報やメンテナンス情報のことである。ジョブとは、業務システム１０の業務を遂行するために業務実行サーバが実行するプログラムであり、ジョブグループとは、業務システム１０の一連の業務を遂行するための、業務実行サーバが実行する１以上のジョブのグループである。迷惑度とは、業務システム１０におけるインシデントが、ジョブグループの現在以降の実行に対して及ぼす影響度である。
【００１９】
運用管理サーバ１００は、送受信部１０３、インシデント検出部１０４、インシデント−ジョブ関連特定部１０５、ジョブ実行予測部１０６、迷惑度算出部１０７、インシデント表示部１０８、対処完了日時算出部１０９および記憶部１１１を有する。
【００２０】
送受信部１０３は、運用管理サーバ１００の通信処理を実行する。ネットワーク２００９を介して運用管理端末１０１又はジョブ管理サーバ１０２から受信した情報を、送受信部１０３は、受信した情報によって特定される運用管理サーバ１００の各処理部に振り分ける。また、運用管理サーバ１００の各処理部が運用管理端末１０１、ジョブ管理サーバ１０２に送信する情報を、送受信部１０３はネットワーク２００９を介して送信する。
【００２１】
インシデント検出部１０４は、インシデントテーブル２００を記憶部１１１から読込み、インシデントテーブル２００に対して、新規に追加されたインシデントがあるかどうかを検出する。インシデントテーブル２００への新規のインシデントは、説明を省略するハードウェアやソフトウェアによるインシデント検知機構によって登録され、インシデントへの対処（ジョブの再実行）に伴い削除される。
【００２２】
インシデント−ジョブ関連特定部１０５は、インシデントテーブル２００を記憶部１１１から読込み、送受信部１０３を介してジョブ管理サーバ１０２にジョブグループ定義テーブル９００を要求するメッセージを送信し、受信したジョブグループ定義テーブル９００を読込み、インシデントに関連するジョブおよびジョブグループを特定し、インシデントの識別情報と、ジョブの識別情報と、ジョブグループの識別情報とを対応付けて、記憶部１１１の後述するインシデント−ジョブ関連テーブル３００に記憶する。
【００２３】
ジョブ実行予測部１０６は、インシデント−ジョブ関連テーブル３００を記憶部１１１から読込み、送受信部１０３を介してジョブ管理サーバ１０２にジョブ実行スケジュールテーブル１０００を要求するメッセージを送信し、受信したジョブ実行スケジュールテーブル１０００を読込む。ジョブ実行スケジュールテーブル１０００を参照し、インシデントに関連するジョブの実行状況に基づいて、このジョブが含まれるジョブグループにおいて、ジョブグループを再実行するとき、このジョブが開始ジョブとなるかどうかを判定し、開始ジョブとなる場合は、このジョブの識別情報を再実行開始ジョブテーブル４００に記憶する。
【００２４】
ジョブ実行予測部１０６は、後述する実施例２においては、インシデントテーブル２００を記憶部１１１から読込み、送受信部１０３を介してジョブ管理サーバ１０２にジョブグループ定義テーブル９００とジョブ再実行定義テーブル１１００を要求するメッセージを送信し、受信したジョブグループ定義テーブル９００とジョブ再実行定義テーブル１１００を読込み、インシデントに関連するジョブの再実行開始ジョブを特定し、再実行開始ジョブのジョブグループ内の実行順序から、再実行開始ジョブ以降に実行予定の、ジョブグループ内のジョブを特定する。
【００２５】
迷惑度算出部１０７は、実行予定のジョブの数を集計し、集計したジョブの数を、インシデントの迷惑度として、記憶部１１１の迷惑度テーブル５００に記憶する。
【００２６】
迷惑度算出部１０７は、後述する実施例３においては、送受信部１０３を介してジョブ管理サーバ１０２にジョブグループ実行履歴テーブル１４００を要求するメッセージを送信し、受信したジョブグループ実行履歴テーブル１４００を読込み、実行予定のジョブの実行時間の予測値を算出し、算出した予測時間を、インシデントの迷惑度として、記憶部１１１の迷惑度テーブル５００に記憶する。
【００２７】
迷惑度算出部１０７は、後述する実施例４においては、受信したジョブグループ定義テーブル９００から、実行予定のジョブの実行先ホストを特定し、実行先ホストの数を集計し、集計したホストの数を、インシデントの迷惑度として、記憶部１１１の迷惑度テーブル５００に記憶する。
【００２８】
迷惑度算出部１０７は、後述する実施例５においては、受信したジョブグループ定義テーブル９００から、実行予定のジョブの実行先ホストを特定し、実行先ホストの冗長度（ジョブを代替実行できるホスト数）をジョブごとに集計し、冗長度の小ささを、インシデントの迷惑度として、記憶部１１１の迷惑度テーブル５００に記憶する。
【００２９】
迷惑度算出部１０７は、後述する実施例６においては、後述する予測対処時間テーブル７００を読込み、送受信部１０３を介してジョブ管理サーバ１０２にジョブグループ実行スケジュール１５００を要求するメッセージを送信し、受信したジョブグループ実行スケジュール１５００を読込み、現在から各インシデントの対処所要時間までに、ジョブグループの予定実行回数を集計し、予定実行回数を、インシデントの迷惑度として、記憶部１１１の迷惑度テーブル５００に記憶する。
【００３０】
迷惑度算出部１０７は、発生したインシデントに対応して、業務システム１０に与える影響の大きさを求め、管理者からの要求に応じて迷惑度として出力装置に表示する。迷惑度は、再実行すべきジョブやジョブグループ、並びに、すでに実行がスケジュールされているジョブやジョブグループに関連して定量的に示される。迷惑度の具体例を、実施例１〜６として後述する。これらの具体例の迷惑度の幾つかを組み合わせたものを迷惑度の他の具体例としてもよい。
【００３１】
インシデント表示部１０８は、インシデントテーブル２００と迷惑度テーブル５００を読込み、迷惑度テーブル５００に記載の各インシデントの迷惑度を、インシデントテーブル２００に記載の各インシデントの情報と共に後述する出力装置２００８を介して表示する。
【００３２】
対処完了日時算出部１０９は、実施例６においては、インシデントテーブル２００と対処時間履歴テーブル６００を読込み、インシデントテーブル２００に記載の各インシデントの対象ホスト及びインシデント内容と、対処時間履歴テーブル６００に記載のインシデントの対象ホスト及びインシデント内容とを比較し、インシデントテーブル２００に記載の各インシデントに類似するインシデントを対処時間履歴テーブル６００に記載のインシデントの中から特定し、類似するインシデントの対処時間の履歴情報から、各インシデントの対処所要時間を算出し、インシデント対処完了予定日時テーブル１２００に記憶する。
【００３３】
記憶部１１１は、運用管理サーバ１００に接続し、インシデントテーブル２００、インシデント−ジョブ関連テーブル３００、迷惑度テーブル５００、対処時間履歴テーブル６００、予測対処時間テーブル７００を格納している。
【００３４】
インシデントテーブル２００は、表形式のデータであり、運用管理サーバ１００が管理する対象の業務システム１０において発生したインシデントうち、未対処のインシデントの情報を記憶する。
【００３５】
図２にインシデントテーブル２００の一例を示す。インシデントテーブル２００は、各行に運用管理サーバ１００が管理対象とする業務システム１０において発生したインシデントの情報を記憶している。インシデントテーブル２００は、インシデント識別子欄２０１、対象ホスト欄２０２、およびインシデント内容欄２０３を備えている。インシデント識別子欄２０１は、運用管理サーバ１００が管理対象とする業務システム１０において発生したインシデントを一意に特定できる識別情報であるインシデント識別子を記憶する。対象ホスト欄２０２は、インシデントの発生元のホスト（業務実行サーバ）を一意に特定できる識別情報（例えばホスト名）を記憶する。インシデント内容欄２０３は、インシデントの内容（例えば、ホスト停止、ｉ０００１など）を記憶する。
【００３６】
システム管理者が運用管理端末１０１を介して、インシデントテーブル２００に示す情報を入力し、運用管理サーバ１００は、入力された情報を記憶部１１１のインシデントテーブル２００に記憶する。また、送受信部１０３により受信された、別途ツールやユーティリティを用いて収集したインシデントの情報を、運用管理サーバ１００がインシデントテーブル２００に記憶しても良い。
【００３７】
インシデント−ジョブ関連テーブル３００は、表形式のデータであり、運用管理サーバ１００が管理する対象の業務システム１０において発生したインシデントとジョブ管理サーバ１０２が管理する業務システム１０内の対象の業務実行サーバ上で実行されるジョブグループおよびジョブとの関連情報を記憶する。図３にインシデント−ジョブ関連テーブル３００の一例を示す。インシデント−ジョブ関連テーブル３００は、各行にインシデントとジョブグループおよびジョブとの関連情報を記憶している。インシデント−ジョブ関連テーブル３００は、インシデント識別子欄３０１、関連ジョブグループ識別子欄３０２、および関連ジョブ識別子欄３０３を備えている。インシデント識別子欄３０１は、各インシデントを一意に特定する識別情報であるインシデント識別子を記憶し、このインシデント識別子によって、インシデントテーブル２００のインシデント識別子欄２０１で特定されるインシデントと対応付けられる。関連ジョブグループ識別子欄３０２は、ジョブ管理サーバ１０２が管理する対象の業務実行サーバ上で実行されるジョブグループに対して、各インシデントが関連するジョブグループを一意に特定する識別情報であるジョブグループ識別子を記憶する。関連ジョブ識別子欄３０３は、ジョブ管理サーバ１０２が管理する対象の業務実行サーバ上で実行されるジョブに対して、各インシデントが関連するジョブを一意に特定する識別情報であるジョブ識別子を記憶する。
【００３８】
インシデント−ジョブ関連特定部１０５が、インシデント−ジョブ関連テーブル３００に示す情報を特定し、記憶部１１１のインシデント−ジョブ関連テーブル３００に記憶する。
【００３９】
再実行開始ジョブテーブル４００は、表形式のデータであり、インシデントに関連するジョブグループを再実行する際に、再実行の開始点となるジョブの識別情報を記憶する。図４に再実行開始ジョブテーブル４００の一例を示す。再実行開始ジョブテーブル４００は、各行にインシデントに関連するジョブグループを再実行する際に、再実行の開始点となるジョブの識別情報を記憶している。再実行開始ジョブテーブル４００は、インシデント識別子欄４０１、ジョブグループ識別子欄４０２、およびジョブ識別子欄４０３を備えている。インシデント識別子欄４０１は、各インシデントを一意に特定する識別情報であるインシデント識別子を記憶し、このインシデント識別子によって、インシデントテーブル２００のインシデント識別子欄２０１で特定されるインシデントと対応付けられる。ジョブグループ識別子欄４０２は、インシデントに関連するジョブグループを一意に特定する識別情報であるジョブグループ識別子を記憶し、このジョブグループ識別子によって、ジョブグループ定義テーブル９００のジョブグループ識別子欄９０１で特定されるジョブグループと対応付けられる。ジョブ識別子欄４０３は、インシデントに関連するジョブグループを再実行する際に、再実行の開始点となるジョブを一意に特定する識別情報であるジョブ識別子を記憶し、このジョブ識別子によって、ジョブグループ定義テーブル９００のジョブ識別子欄９０２で特定されるジョブと対応付けられる。
【００４０】
ジョブ実行予測部１０６が、再実行開始ジョブテーブル４００に示す情報を特定し、記憶部１１１の再実行開始ジョブテーブル４００に記憶する。
【００４１】
迷惑度テーブル５００は、表形式のデータであり、インシデントに関連するジョブグループの実行に及ぼすインシデントの迷惑度を記憶する。図５に迷惑度テーブル５００の一例を示す。迷惑度テーブル５００は、各行にインシデントに関連するジョブグループの実行に及ぼすインシデントの迷惑度を記憶している。迷惑度テーブル５００は、インシデント識別子欄５０１、および迷惑度欄５０２を備えている。インシデント識別子欄５０１は、各インシデントを一意に特定する識別情報であるインシデント識別子を記憶し、このインシデント識別子によって、インシデントテーブル２００のインシデント識別子欄２０１で特定されるインシデントと対応付けられる。迷惑度欄５０２は、インシデントに関連するジョブグループの実行に及ぼすインシデントの迷惑度を記憶する。
【００４２】
迷惑度算出部１０７が、迷惑度テーブル５００に示す情報を算出し、記憶部１１１の迷惑度テーブル５００に記憶する。
【００４３】
対処時間履歴テーブル６００は、表形式のデータであり、対処済みのインシデントの情報とインシデントの対処に所要した時間を記憶する。図６に対処時間履歴テーブル６００の一例を示す。対処時間履歴テーブル６００は、各行に対処済みのインシデントの情報と、そのインシデントの対処に所要した時間を記憶している。対処時間履歴テーブル６００は、インシデント識別子欄６０１、対象ホスト欄６０２、インシデント内容欄６０３、および対処所要時間欄６０４を備えている。インシデント識別子欄６０１は、各インシデントを一意に特定する識別情報であるインシデント識別子を記憶し、このインシデント識別子によって、インシデントテーブル２００のインシデント識別子欄２０１で特定されるインシデントと対応付けられる。対象ホスト欄６０２は、インシデントの発生元となるホスト（業務実行サーバ）を一意に特定できる識別情報（例えばホスト名）を記憶する。インシデント内容欄６０３は、インシデントの内容（例えば、ホスト停止、ｉ０００１など）を記憶する。対処所要時間欄６０４は、インシデントの対処に所要した時間を記憶する。
【００４４】
システム管理者が、運用管理端末１０１を介して、対処時間履歴テーブル６００に示す情報を入力し、運用管理サーバ１００は、入力された情報を、記憶部１１１の対処時間履歴テーブル６００に記憶する。また、別途ツールやユーティリティによってインシデントの対処時間を計測した結果を入力し、運用管理サーバ１００は、入力された情報を、記憶部１１１の対処時間履歴テーブル６００に記憶しても良い。
【００４５】
予測対処時間テーブル７００は表形式のデータであり、インシデントの対処に必要な予測時間を記憶する。図７に予測対処時間テーブル７００の一例を示す。予測対処時間テーブル７００は、各行にインシデントの対処に必要な予測時間を記憶している。予測対処時間テーブル７００は、インシデント識別子欄７０１、および予測対処時間欄７０２を備えている。インシデント識別子欄７０１は、各インシデントを一意に特定する識別情報であるインシデント識別子を記憶し、このインシデント識別子によって、インシデントテーブル２００のインシデント識別子欄２０１で特定されるインシデントと対応付けられる。予測対処時間欄７０２は、インシデントの対処に必要と見込まれる時間を記憶する。
【００４６】
対処時間予測部１０９が、対処所要時間テーブル７００に示す情報を算出し、記憶部１１１の対処所要時間テーブル７００に記憶する。
【００４７】
運用管理サーバ１００は、図１１に示すハードウェア構成の計算機２００１上で稼働する。計算機２００１は、ＣＰＵ２００２、主記憶装置２００３（ＲＡＭ、ＲＯＭ等）、外部記憶装置インタフェース２００４、通信インタフェース２００５（ＮＩＣ等）、プログラムなどを格納する外部記憶装置２００６（ディスク装置等）、キーボード、マウス等の入力装置２００７、表示装置、プリンタ等の出力装置２００８を備えている。
【００４８】
送受信部１０３、インシデント検出部１０４、インシデント−ジョブ関連特定部１０５、ジョブ実行予測部１０６、迷惑度算出部１０７、対処時間予測部１０９、およびインシデント表示部１０８は、外部記憶装置２００６に記憶されたプログラムが、外部記憶装置インタフェース２００４を介して主記憶装置２００３上に読み込まれ、ＣＰＵ２００２で実行されることにより実現される機能ブロックである。なお、送受信部１０３は、通信インタフェース２００５およびこれを制御する通信制御プログラムでも実現可能である。記憶部１１１は、主記憶装置２００３および／又は外部記憶装置２００６により実現される。
【００４９】
運用管理端末１０１およびジョブ管理サーバ１０２のハードウェア構成も、規模や性能の差異がある場合もあるが、図１１に示す計算機２００１の構成である。
【００５０】
図１では、運用管理サーバ１００、運用管理端末１０１およびジョブ管理サーバ１０２の各々を異なるサーバとして示しているが、これらの各々を更に複数のサーバで構成しても良いし、これらのいくつかを纏めて１台のサーバで構成しても良い。また、運用管理サーバ１００は物理サーバに限定されない。すなわち、仮想サーバであってもよいし、クラスタ構成などで定義される論理サーバであってもよい。
【００５１】
図１に説明を戻し、運用管理端末１０１について説明する。運用管理端末１０１は、運用管理サーバ１００へのデータ入力処理や運用管理サーバ１００からのデータ出力処理を制御するサーバである。システム管理者は、運用管理端末１０１を介して、運用管理サーバ１００へ、対処時間履歴テーブル６００に記憶する情報を送信する。また、システム管理者は、運用管理端末１０１を介して、ジョブ管理サーバ１０２に、ジョブグループ定義テーブル９００、ジョブ実行スケジュールテーブル１０００、およびジョブ再実行定義テーブル１１００に記憶する情報を送信する。また、システム管理者は、運用管理端末１０１を介して、運用管理サーバ１００にインシデントの迷惑度の算出を要求し、算出された迷惑度を運用管理端末１０１に表示させる。
【００５２】
運用管理端末１０１は、入力部１１２と、出力部１１３と、送受信部１１４と、通信処理部１１５と、を備えている。入力部１１２はシステム管理者が入力した、前述の各種の情報の入力を受け付け、出力部１１３はシステム管理者に情報、たとえば迷惑度を出力する。
【００５３】
送受信部１１４は、通信処理部１１５などの運用管理端末１０１の各処理部から受信した情報をネットワーク２００９に送信したり、ネットワーク２００９から受信した情報を各処理部に送信したりする送受信処理を実行する処理部である。通信処理部１１５は、運用管理サーバ１００との通信処理を実行する。
【００５４】
運用管理端末１０１は、図１１に示すハードウェア構成の計算機２００１上で稼働する。通信処理部１１５は、外部記憶装置２００６に記憶したプログラムを主記憶装置２００３上に読み込み、ＣＰＵ２００２で実行することにより実現可能である。また、送受信部１１４は、通信インタフェース２００５で実現可能である。入力部１１２は、入力装置２００７により実現可能である。入力装置２００７とは、例えば、マウスなどのポインティングデバイスや、キーボードなどである。出力部１１３は、出力装置２００８により実現可能である。出力装置２００８とは、例えば、モニタやプリンタなどである。
【００５５】
図１に説明を戻し、ジョブ管理サーバ１０２について説明する。ジョブ管理サーバ１０２は、運用管理サーバ１００が管理する業務システム１０におけるジョブグループ、およびジョブを管理するサーバである。ジョブ管理サーバ１０２と業務システム１０、ジョブグループ、およびジョブとは一対一に限定されない。すなわち、ジョブ管理サーバ１０２が、一つの業務システム１０、ジョブグループ、ジョブを管理しても良いし、複数の業務システム１０、ジョブグループ、ジョブを管理しても良い。また、複数のジョブ管理サーバ１０２により業務システム１０におけるジョブグループ、およびジョブを管理してもよい。さらに、ジョブ管理サーバ１０２は物理サーバに限定されない。すなわち、仮想サーバであってもよいし、クラスタ構成などで定義される論理サーバであってもよい。
【００５６】
ジョブ管理サーバ１０２は、送受信部１１６、ジョブ管理部１１７、および記憶部１１８を備えている。送受信部１１６は、ジョブ管理部１１７と、運用管理サーバ１００または運用管理端末１０１との通信処理を実行する。ジョブ管理部１１７は、ジョブグループおよびジョブの定義情報、実行スケジュール、および実行履歴情報を記憶部１１８に記憶する。ジョブ管理部１１７は、管理対象とするジョブの実行先ホストから、ジョブグループおよびジョブの現在の実行状態（未実行、成功、実行中、失敗など）を収集し、記憶部１１８に記憶する。記憶部１１８には、ジョブグループ定義テーブル９００、ジョブ実行スケジュールテーブル１０００、およびジョブ再実行定義テーブル１１００が格納されている。
【００５７】
ジョブグループ定義テーブル９００は表形式のデータであり、ジョブ管理サーバ１０２が管理対象とするジョブグループの情報を記憶する。図８にジョブグループ定義テーブル９００の一例を示す。ジョブグループ定義テーブル９００は、各行にジョブ管理サーバ１０２が管理対象とするジョブグループの情報を記憶している。ジョブグループ定義テーブル９００は、ジョブグループ識別子欄９０１、ジョブ識別子欄９０２、ジョブ実行順序欄９０３、およびジョブ実行ホスト欄９０４を備えている。ジョブグループ識別子欄９０１は、ジョブ管理サーバ１０２が管理対象とするジョブグループを一意に特定可能な識別情報であるジョブグループ識別子を記憶する。ジョブ識別子欄９０２は、ジョブ管理サーバ１０２が管理対象とするジョブを一意に特定可能な識別情報であるジョブ識別子を記憶する。ジョブ実行順序欄９０３は、ジョブグループ内におけるジョブの実行順序（Ｔｉｅｒ）を記憶する。ジョブ実行ホスト欄９０４は、ジョブが実行されるホストを一意に特定できる識別情報（例えばホスト名）を記憶し、この識別情報によって、インシデントテーブル２００の対象ホスト２０２と対応付けられる。なお、図８のジョブ実行ホスト欄９０４に複数のホスト名が格納されている行は、その行のジョブ識別子９０２で示されるジョブが、複数のホスト名のいずれかが示すホストで実行すればよいことを示している。すなわち、複数のホスト名はホストの冗長性を表している。
【００５８】
システム管理者が、運用管理端末１０１を介して、ジョブグループ定義テーブル９００に示す情報を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブグループ定義テーブル９００に記憶する。また、別途ツールやユーティリティによって運用管理サーバ１００が管理対象とする業務システムにおけるジョブグループの定義情報を収集した結果を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブグループ定義テーブル９００に記憶しても良い。
【００５９】
ジョブ実行スケジュールテーブル１０００は表形式のデータであり、ジョブ管理サーバ１０２が管理対象とするジョブの現在までの実行状況と、これからの実行スケジュールを記憶する。図９にジョブ実行スケジュールテーブル１０００の一例を示す。ジョブ実行スケジュールテーブル１０００は、各行にジョブ管理サーバ１０２が管理対象とするジョブグループの現在までの実行状況と、これからの実行スケジュールを記憶している。ジョブ実行スケジュールテーブル１０００は、ジョブグループ識別子欄１００１、ジョブ識別子欄１００２、ジョブ実行開始日時欄１００３、ジョブ実行終了日時欄１００４、および状態欄１００５を備えている。ジョブグループ識別子欄１００１は、ジョブ管理サーバ１０２が管理対象とするジョブグループを一意に特定可能な識別情報であるジョブグループ識別子を記憶し、この識別子により、ジョブグループ定義テーブル９００に記載のジョブグループと対応付けられる。ジョブ識別子欄１００２は、ジョブ管理サーバ１０２が管理対象とするジョブを一意に特定可能な識別情報であるジョブ識別子を記憶し、この識別子により、ジョブグループ定義テーブル９００に記載のジョブと対応付けられる。ジョブ実行開始日時欄１００３は、現在までに実行済みのジョブの実行開始日時と、これから実行されるジョブの実行開始予定日時を記憶する。ジョブ実行終了日時欄１００４は、現在までに実行済みのジョブの実行終了日時を記憶する。状態欄１００５は、ジョブ識別子欄１４０２に記載のジョブ識別情報から特定されるジョブの実行状態（未実行、成功、実行中、失敗など）を記憶する。
【００６０】
システム管理者が、運用管理端末１０１を介して、ジョブ実行スケジュールテーブル１０００に示す情報を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブ実行スケジュールテーブル１０００に記憶する。また、別途ツールやユーティリティによってジョブの実行開始／終了日時や実行状態を収集した結果を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブ実行スケジュールテーブル１０００に記憶しても良い。
【００６１】
ジョブ再実行定義テーブル１１００は表形式のデータであり、ジョブ管理サーバ１０２が管理対象とするジョブがインシデント等により中断した後、再実行する際に、実行開始点とすべきジョブグループ内のジョブの識別子を記憶する。本識別子によって、ジョブグループ内のどのジョブから再実行を行えば良いかを特定する。図１０にジョブ再実行定義テーブル１１００の一例を示す。ジョブ再実行定義テーブル１１００は、各行に実行開始点とすべきジョブグループ内のジョブの識別子を記憶している。ジョブ再実行定義テーブル１１００は、中断ジョブ識別子欄１１０１、および再実行ジョブ識別子欄１１０２を備えている。中断ジョブ識別子欄１１０１は、ジョブ管理サーバ１０２が管理対象とするジョブのうち、インシデント等により実行を中断したジョブを一意に特定可能な識別情報であるジョブ識別子を記憶し、この識別子により、ジョブグループ定義テーブル９００に記載のジョブと対応付けられる。再実行ジョブ識別子欄１１０２は、インシデント等により実行を中断したジョブを再実行する際に、開始点とすべきジョブグループ内のジョブを一意に特定可能な識別情報であるジョブ識別子を記憶し、この識別子により、ジョブグループ定義テーブル９００に記載のジョブと対応付けられる。
【００６２】
システム管理者が、運用管理端末１０１を介して、ジョブ再実行定義テーブル１１００に示す情報を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブ再実行定義テーブル１１００に記憶する。また、別途ツールやユーティリティによって、中断ジョブの再実行時に開始すべきジョブの情報を収集した結果を入力し、ジョブ管理サーバ１０２は、入力された情報を、記憶部１１８のジョブ再実行定義テーブル１１００に記憶しても良い。
【００６３】
ジョブ管理サーバ１０２は、図１１に示すハードウェア構成の計算機２００１上で稼働する。送受信部１１６とジョブ管理部１１７は、外部記憶装置２００６に記憶したプログラムを主記憶装置２００３上に読み込み、ＣＰＵ２００２で実行することにより実現可能である。なお、送受信部１１６は、通信インタフェース２００５でも実現可能である。
【００６４】
以下、本実施形態におけるインシデントの迷惑度算出処理について実施例として示す。インシデントの迷惑度算出処理は、インシデント管理装置としての機能を有する運用管理サーバ１００により実行されるが、以下の実施例の説明を簡明にするために、運用管理サーバ１００とジョブ管理サーバ１０２や運用管理端末１０１との間の、テーブルや情報の送受信に関して説明を省略又は簡略化する。
【実施例１】
【００６５】
本実施例のインシデントの迷惑度算出処理について説明する。図１２に、運用管理サーバ１００による迷惑度算出処理フロー図の一例を示す。迷惑度算出処理は、業務システム１０に新規にインシデントが検知され、インシデントテーブル２００に格納に応答して、及び、運用管理端末１０１から迷惑度の表示要求の受信に応答して、実行を開始する。周期タイマからの起動により実行を開始してもよい。
【００６６】
インシデント検出部１０４は、インシデントがインシデントテーブル２００に格納されているかを確認する（ステップ３０００）。前述のように、インシデントテーブル２００に格納されているインシデントは、そのインシデントへの対処（ジョブの再実行）に伴い削除されるので、インシデントテーブル２００にインシデントが格納されているならば、発生したことを示している。インシデント検出部１０４は、インシデントが格納されていない場合、ステップ３０５０へ分岐する。
【００６７】
インシデントがインシデントテーブル２００に格納されている場合（インシデントテーブル２００に複数のインシデント識別子２０１が格納されている場合、その中の１つを取り出す。）、インシデント−ジョブ関連特定部１０５は、インシデントテーブル２００に格納されているインシデント識別子２０１に対応する対象ホスト２０２をキーにしてジョブグループ定義テーブル９００を検索する（ステップ３００５）。ジョブグループ定義テーブル９００の、対象ホスト２０２に対応するジョブ実行先ホスト９０４の行のジョブグループ識別子９０１及びジョブ識別子９０２を、インシデント−ジョブ関連テーブル３００のインシデント識別子３０１に対応付けてジョブグループ識別子３０２及びジョブ識別子３０３として格納する（ステップ３０１０）。インシデント−ジョブ関連テーブル３００のインシデント識別子３０１は、ステップ３０００で検出したインシデント識別子２０１である。ステップ３００５で、対象ホスト２０２に対応するジョブ実行先ホスト９０４が複数検索される場合は、インシデント−ジョブ関連テーブル３００には、複数行に亘って格納される。複数行は、異なるジョブグループに属する複数のジョブの場合もあるが、同じジョブグループであっても同じ業務実行サーバ（ジョブ実行先ホスト９０４）で並列実行されている複数のジョブの場合もある。
【００６８】
ジョブ実行予測部１０６は、インシデント−ジョブ関連テーブル３００のジョブグループ識別子３０２が同じジョブ識別子３０３を取り出し、ジョブグループ識別子３０２及びジョブ識別子３０３をキーにして、ジョブ実行スケジュールテーブル１０００を検索する(ステップ３０１５)。ジョブグループ識別子３０２が同じジョブ識別子３０３が複数ある場合、該当するジョブグループ識別子１００１及びジョブ識別子１００２の組の複数の行が検索結果として得られる。ジョブ実行予測部１０６は、検索結果として得られたジョブ識別子１００２の中で、その状態１００５が「失敗」を示すものがあるかを判定する（ステップ３０２０）。
【００６９】
状態１００５が「失敗」を示すものがある場合、ジョブ実行予測部１０６は、状態１００５が「失敗」を示すジョブグループ識別子１００１及びジョブ識別子１００２と、これらと対応する、インシデント−ジョブ関連テーブル３００のインシデント識別子３０１を対応付けて、再実行開始ジョブテーブル４００にインシデント識別子４０１、ジョブグループ識別子４０２及びジョブ識別子４０３として格納する(ステップ３０３５)。ステップ３０２０で状態１００５が「失敗」を示すジョブグループ識別子１００１及びジョブ識別子１００２が複数得られた場合（同じジョブグループに属する複数のジョブが「失敗」の場合）、ジョブグループ定義テーブル９００を参照し、ジョブ実行順序９０３が最も早いジョブの識別子１００２を再実行開始ジョブテーブル４００のジョブ識別子４０３に格納する。処理をステップ３０４０に移す。
【００７０】
ステップ３０２０において状態１００５が「失敗」を示すものがない場合、ジョブ実行予測部１０６は、ジョブ実行予測部１０６は、ステップ３０１５の検索結果として得られたジョブ識別子１００２の中で、その状態１００５が「未実行」を示すものがあるかを判定する（ステップ３０２５）。状態１００５が「未実行」を示すジョブ識別子１００２がない場合、処理をステップ３０４０に移す。
【００７１】
ステップ３０２５で状態１００５が「未実行」を示すジョブ識別子１００２がある場合、ジョブ実行予測部１０６は、状態１００５が「未実行」を示すジョブグループ識別子１００１及びジョブ識別子１００２と、これらと対応する、インシデント−ジョブ関連テーブル３００のインシデント識別子３０１を対応付けて、再実行開始ジョブテーブル４００にインシデント識別子４０１、ジョブグループ識別子４０２及びジョブ識別子４０３として格納する(ステップ３０３０)。ステップ３０２５で状態１００５が「未実行」を示すジョブグループ識別子１００１及びジョブ識別子１００２が複数得られた場合（同じジョブグループに属する複数のジョブが「未実行」の場合）、ジョブグループ定義テーブル９００を参照し、ジョブ実行順序９０３が最も早いジョブの識別子１００２を再実行開始ジョブテーブル４００のジョブ識別子４０３に格納する。
【００７２】
迷惑度算出部１０７は、ジョブグループ定義テーブル９００を参照し、再実行開始ジョブテーブル４００のジョブグループ識別子４０２を示すジョブグループ識別子９０１の中で、再実行開始ジョブテーブル４００のジョブ識別子４０３の実行順序９０３以降の実行順序のジョブの数を計数し、再実行開始ジョブテーブル４００のインシデント識別子４０１に対応する、迷惑度テーブル５００のインシデント識別子５０１に計数結果を対応付けて迷惑度５０２に加算する(ステップ３０４０)。迷惑度テーブル５００の初期化について説明を省略したが、迷惑度テーブル５００は、ステップ３０００においてインシデントが存在し、その１つを取り出した時点で、取り出したインシデントに対応してインシデント識別子５０１を格納し、対応する迷惑度を０に初期化しておく。これにより、図１２に示す処理を実行するとインシデント識別子５０１ごとに迷惑度５０２が得られる。
【００７３】
インシデントテーブル２００のインシデント識別子２０１に対応して他の対象ホストがあるかを判定し（ステップ３０４５）、他の対象ホストがある場合、処理をステップ３００５に移し、他の対象ホストがない場合、処理をステップ３０００に移す。図２に示すインシデントテーブル２００では、インシデント識別子２０１と対象ホスト２０２とを１対１の関係で例示しているが、同じインシデントの影響が複数の対象ホスト２０２（業務実行サーバ）に及ぶ場合がある。たとえば、１台の物理サーバ上に生成された複数の仮想サーバの各々を業務実行サーバとして稼動させるシステムにおいては、物理サーバ上に発生するインシデントはその上の複数の仮想サーバの稼動に影響する。
【００７４】
ステップ３０００において、インシデントテーブル２００にインシデントが格納されていない場合、インシデント表示部１０８は、運用管理端末１０１から迷惑度の表示要求があるかを判定する(ステップ３０５０)。要求がなければ、処理を終了する。要求があれば、インシデント表示部１０８は、インシデントテーブル２００と迷惑度テーブル５００を読込み、迷惑度テーブル５００の各インシデント識別子５０１の迷惑度を、インシデントテーブル２００の各インシデント識別子２０１に対応するインシデント内容２０３と共に送受信部１０３を介して、運用管理端末１０１へ送信する(ステップ３０５５)。インシデント表示部１０８は、運用管理端末１０１への送信と共に、運用管理サーバ１００に接続する出力装置２００８に表示してもよい。運用管理端末１０１への送信の成功を確認後、処理を終了する。
【００７５】
本実施例によれば、インシデントに関連するジョブグループの未来の実行予測に基づき（ジョブ実行スケジュールテーブル１０００にスケジュールされた未実行のジョブも対象として）、将来実行するジョブの数が多いほどインシデントの迷惑度が高くなる。したがって、インシデントが多数、かつ同時に登録された場合でも、算出した迷惑度を基に、管理者はインシデントを効率良く対処できる。
【実施例２】
【００７６】
実施例１では、インシデントに関連するジョブグループの実行に対するインシデントの迷惑度は、インシデントによって中断されたジョブもしくは未実行のジョブ以降に実行されるジョブの数を集計して算出した。本実施例では、あらかじめジョブが中断された際に再実行を開始するジョブを定義しておき、この定義情報に基づき再実行を開始するジョブを特定し、特定したジョブ以降に実行されるジョブの数を集計し、迷惑度を算出する。
【００７７】
実施例１では、ステップ３０３５において、ジョブ実行予測部１０６は、状態１００５が「失敗」を示すジョブグループ識別子１００１及びジョブ識別子１００２と、これらと対応する、インシデント−ジョブ関連テーブル３００のインシデント識別子３０１を対応付けて、再実行開始ジョブテーブル４００にインシデント識別子４０１、ジョブグループ識別子４０２及びジョブ識別子４０３として格納する。本実施例では、ジョブ実行予測部１０６は、状態１００５が「失敗」を示すジョブ識別子１００２をキーとしてジョブ再実行定義テーブル１１００の中断ジョブ識別子１１０１を検索して、対応する再実行ジョブ識別子１１０２を取得し、取得した再実行ジョブ識別子１１０２を再実行開始ジョブテーブル４００にジョブ識別子４０３として格納する。再実行開始ジョブテーブル４００に格納するインシデント識別子４０１およびジョブグループ識別子４０２に関しては実施例１と同様である。
【００７８】
本実施例によれば、インシデントによって中断されたジョブに対応して、再実行しなければならない最先のジョブが特定されるため、本来再実行されるべきジョブを含んだインシデントの迷惑度を算出できる。例えば、ジョブＡが出力したファイルを入力して、入力したファイルへの所定の処理の後に、ファイルを削除し、さらに処理を続けるジョブＢのようなジョブグループがある。この場合、ジョブＢがファイルを削除後にインシデントにより中断されると、ジョブＢを再実行しても、入力するファイルは削除されているので、ジョブＢは、誤った結果を出力したり、ジョブ自体が異常終了する。したがって、ジョブＡを再実行ジョブ識別子としてジョブ再実行定義テーブル１１００に定義しておくことにより、ジョブＢがインシデントにより中断（「失敗」）した場合、本来再実行されるべきジョブＡからの再実行を実現でき、これに対応した迷惑度を求めることができる。
【００７９】
本実施例は、中断したジョブよりも以前に実行したジョブから再実行する必要がある上例のような場合に対処できるので、そのような場合の中断ジョブ識別子１１０１と再実行ジョブ識別子１１０２との組をジョブ再実行定義テーブル１１００に定義しておき、ジョブ再実行定義テーブル１１００に中断ジョブ識別子１１０１がある場合に、再実行ジョブ識別子１１０２を再実行開始ジョブとし、ジョブ再実行定義テーブル１１００に中断ジョブ識別子１１０１がない場合には、実施例１に従うことが望ましい。これにより、ジョブ再実行定義テーブル１１００は、中断ジョブ識別子１１０１と再実行ジョブ識別子１１０２とが異なる場合の組を格納しておけばよいので、ジョブ再実行定義テーブル１１００のサイズが小さくなる。
【実施例３】
【００８０】
本実施例では、再実行が必要なジョブの実行予定時間を集計し、集計した結果をインシデントの迷惑度とする。
【００８１】
実施例１では、ステップ３０４０において、迷惑度算出部１０７は、ジョブグループ定義テーブル９００を参照し、再実行開始ジョブテーブル４００のジョブグループ識別子４０２を示すジョブグループ識別子９０１の中で、再実行開始ジョブテーブル４００のジョブ識別子４０３の実行順序９０３以降の実行順序のジョブの数を計数し、再実行開始ジョブテーブル４００のインシデント識別子４０１に対応する、迷惑度テーブル５００のインシデント識別子５０１に計数結果を対応付けて迷惑度５０２に加算している。
【００８２】
本実施例では、迷惑度算出部１０７は、ジョブグループ定義テーブル９００を参照し、再実行開始ジョブテーブル４００のジョブグループ識別子４０２を示すジョブグループ識別子９０１の中で、再実行開始ジョブテーブル４００のジョブ識別子４０３の実行順序９０３以降の実行順序のジョブを特定する。特定した各ジョブの実行予定時間を、ジョブ実行スケジュールテーブル１０００を参照し、対応するジョブ実行開始日時１００３とジョブ実行終了日時１００４との差から求める。ジョブ実行スケジュールテーブル１０００に、同じジョブグループ識別子１００１及びジョブ識別子１００２に関して、複数行のジョブ実行開始日時１００３とジョブ実行終了日時１００４とが格納されている場合は、それらの差の平均値を求め、この平均値をジョブの実行予定時間とする。迷惑度算出部１０７は、求めたジョブの実行予定時間を迷惑度５０２として迷惑度テーブルに格納する。
【００８３】
本実施例によれば、インシデントに関連するジョブグループの未来の実行予測に基づき（ジョブ実行スケジュールテーブル１０００にスケジュールされた未実行のジョブも対象とした）、再実行する必要があるジョブの実行予定時間が長いほどインシデントに対応する迷惑度が高くなる。
【実施例４】
【００８４】
本実施例では、再実行が必要なジョブが使用する予定のホストの数を迷惑度とする。
【００８５】
本実施例では、迷惑度算出部１０７は、ジョブグループ定義テーブル９００を参照し、再実行開始ジョブテーブル４００のジョブグループ識別子４０２を示すジョブグループ識別子９０１の中で、再実行開始ジョブテーブル４００のジョブ識別子４０３の実行順序９０３以降の実行順序のジョブを特定する。ジョブ実行グループ定義テーブル９００を参照し、特定した各ジョブのジョブ実行先ホスト９０４の一覧を求める。この一覧は、特定した各ジョブのジョブ実行先ホスト９０４の論理和である。言い換えると、複数のジョブが同じジョブ実行先ホスト９０４で実行される場合、１つのジョブ実行先ホスト９０４とする。一覧として求めたジョブ実行先ホスト９０４の数を迷惑度５０２として迷惑度テーブルに格納する。
【００８６】
本実施例によれば、インシデントに関連するジョブグループの未来の実行予測に基づき（ジョブ実行スケジュールテーブル１０００にスケジュールされた未実行のジョブも対象とした）、再実行する必要があるジョブの実行先ホストの数が多い（つまり多くのリソースを使用する可能性が高い）ほど、インシデントに対応する迷惑度が高くなる。
【実施例５】
【００８７】
本実施例は、再実行が必要なジョブの予定実行先のホストの冗長度を算出し、冗長度の低さを迷惑度とする。
【００８８】
本実施例では、迷惑度算出部１０７は、ジョブグループ定義テーブル９００を参照し、再実行開始ジョブテーブル４００のジョブグループ識別子４０２を示すジョブグループ識別子９０１の中で、再実行開始ジョブテーブル４００のジョブ識別子４０３の実行順序９０３以降の実行順序のジョブを特定する。ジョブ実行グループ定義テーブル９００を参照し、特定した各ジョブのジョブ実行先ホスト９０４の覧のホスト数を取得し、その逆数を迷惑度５０２として迷惑度テーブルに格納する。例えば、ジョブ実行先ホスト９０４の覧に２つのホストが格納されていれば、その逆数の１／２を迷惑度とする。ジョブ実行先ホスト９０４の覧のホスト数は、ホストの冗長度を表しているので、冗長度が高ければ、迷惑度は低くなることを示している。
【００８９】
本実施例によれば、インシデントに関連するジョブグループの未来の実行予測に基づき、再実行する必要があるジョブの予定実行先の冗長度が低い（つまり他のホストで代替実行できる可能性が高い）ほど、インシデントの迷惑度が高くなる。
【実施例６】
【００９０】
本実施例は、インシデントの対処に必要な時間を予測し、インシデントに関連するジョブグループの実行スケジュールから、予測した対処時間内にジョブグループの実行が何回失敗するかを迷惑度とする。
【００９１】
本実施例は、図１２のステップ３０４０に代えて、図１３の迷惑度加算処理を実行する。対処時間予測部１０９は、インシデントテーブル２００の対象ホスト２０２に一致し、インシデント内容２０３に類似する、インシデント識別子６０１を対処時間履歴テーブル６００から検索する(ステップ３１００)。インシデントテーブル２００の対象ホスト２０２との一致は、対処時間テーブル６００の対象ホスト６０２が一致するときである。インシデント内容２０３との類似は、（1）インシデント内容２０３と対処時間テーブル６００のインシデント内容６０３の一致、（2）インシデント内容２０３がインシデント内容６０３に包含される、及び（3）インシデント内容６０３がインシデント内容２０３に包含される、のいずれか１つに該当するとき、インシデント内容２０３にインシデント内容６０３が類似するとする。検索結果が得られなければ(ステップ３１０５)、処理を終了する。
【００９２】
検索結果が得られたならば、インシデント識別子６０１に対応する対処所要時間６０４を、予測対処時間テーブル７００にインシデント識別子７０１に対応させて格納する(ステップ３１１０)。インシデント識別子７０１は、ステップ３００５で取り出した、インシデントテーブル２００のインシデント識別子２０１である。
【００９３】
迷惑度算出部１０７は、インシデント−ジョブ関連テーブル３００のジョブグループ識別子３０２に対応する、ジョブ実行スケジュールテーブル１０００のジョブグループ識別子１００１の内で、そのジョブ実行開始日時１００３が現在日時以降で、かつ現在日時から前記インシデント識別子７０１に対応する予測対処時間７０２を加算した時間内に実行されるジョブグループ識別子１００１の数を計数する(ステップ３１１５)。計数したジョブグループ識別子１００１の数を、迷惑度テーブル５００の対応するインシデント識別子５０１の迷惑度５０２に加算する。
【００９４】
本実施例によれば、インシデントに関連するジョブグループの未来の実行予測に基づき、インシデントの予測対処時間内に実行されるジョブグループの予定実行回数が多い（つまりインシデントへの対処が、ジョブグループの実行に間に合わない回数が多い）ほど、インシデントの迷惑度が高くなる。
【００９５】
以上説明した本実施形態によれば、業務システムに対するインシデントによる影響度を、業務システムを構成する業務実行サーバが実行する、再実行すべきジョブ又はジョブグループ、並びに、既に実行がスケジュールされたジョブ又はジョブグループに関係させた定量的な迷惑度として出力し、システム管理者によるインシデントへの対処を支援できる。
【符号の説明】
【００９６】
１００：運用管理サーバ、１０１：運用管理端末、１０２：ジョブ管理サーバ、１０３：送受信部、１０４：インシデント検出部、１０５：インシデント−ジョブ関連特定部、１０６：ジョブ実行予測部、１０７：迷惑度算出部、１０８：インシデント表示部、１０９：対処時間予測部、１１１：記憶部、１１２：入力部、１１３：出力部、１１４：送受信部、１１５：通信処理部、１１６：送受信部、１１７：ジョブ管理部、２００：インシデントテーブル、３００：インシデント−ジョブ関連テーブル、４００：再実行開始ジョブテーブル、５００：迷惑度テーブル、６００：対処時間履歴テーブル、７００：予測対処時間テーブル、９００：ジョブグループ定義テーブル、１０００：ジョブ実行スケジュールテーブル、１１００：ジョブ再実行定義テーブル、２００１：計算機、２００２：ＣＰＵ、２００３：主記憶装置、２００４：外部記憶装置インタフェース、２００５：通信インタフェース、２００６：外部記憶装置、２００７：入力装置、２００８：出力装置、２００９：ネットワーク。
【図１】
0005422342.tif 000002
【図２】
0005422342.tif 000003
【図３】
0005422342.tif 000004
【図４】
0005422342.tif 000005
【図５】
0005422342.tif 000006
【図６】
0005422342.tif 000007
【図７】
0005422342.tif 000008
【図８】
0005422342.tif 000009
【図９】
0005422342.tif 000010
【図１０】
0005422342.tif 000011
【図１１】
0005422342.tif 000012
【図１２】
0005422342.tif 000013
【図１３】
0005422342.tif 000014