監視装置及び監視方法
【課題】監視システムにおいて、オペレータの作業を効率的に支援する。
【解決手段】監視装置20において、メッセージ受信部22が、ネットワークを介して監視対象に関するメッセージを受信すると、対応アクション判定部26が、メッセージに応じて適切な対応アクションを判定する。対応アクション判定部26は、アクション定義データベース34を参照して、受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成された、作業の流れを提示するための画面フローを選択する。対応アクション制御部28は、選択された画面フローをアクション定義データベース34から読み出して提示する。
【解決手段】監視装置20において、メッセージ受信部22が、ネットワークを介して監視対象に関するメッセージを受信すると、対応アクション判定部26が、メッセージに応じて適切な対応アクションを判定する。対応アクション判定部26は、アクション定義データベース34を参照して、受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成された、作業の流れを提示するための画面フローを選択する。対応アクション制御部28は、選択された画面フローをアクション定義データベース34から読み出して提示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、監視技術に関し、特に、ネットワークを介してコンピュータなどの装置を監視する監視装置及び監視方法に関する。
【背景技術】
【0002】
近年、コンピュータのソフトウェアの多様化及びハードウェアの性能向上に伴い、システムの運用要件が複雑化してきている。このため、コンピュータシステムの運用監視を行う監視装置は、各ソフトウェア及びハードウェアからより多くの情報、例えば情報メッセージ及び障害メッセージなどを取得しなければならなくなっている。そのため、これらのメッセージを統括的に取り扱うために、ソフトウェア及びハードウェアごとに個別に運用される管理ツールを統合的に監視するツール(統合監視システム)が提案されている(例えば、非特許文献1参照)。
【0003】
監視するシステム内で障害が発生すると、各ソフトウェアやハードウェアのコンポーネントの監視ツールがメッセージを発信する。監視ツールが発信したメッセージは、オペレータの端末に提示される。オペレータは、受信したメッセージの内容を見て、被監視装置や被監視プロセスの状態確認、再起動、復旧コマンドの実行、技術者などの専門家への連絡など、必要な障害対応の作業を実行する。
【非特許文献1】http://www-6.ibm.com/jp/software/tivoli/products/systems_mgr.html
【発明の開示】
【発明が解決しようとする課題】
【0004】
障害が発生したときに、迅速な復旧を行うためには、オペレータが適切な障害対応を迅速かつ能動的に実行する必要がある。しかし、従来の監視システムでは、オペレータは、メッセージの内容が提示されると、障害対応の手順が記載されたマニュアルを手でめくって、なすべき対応の内容を調べる必要があったので、まず適切な対応策を見つけ出すまでに時間がかかっていた。また、オペレータのスキルによっては、適切な対応策を見つけ出せずに、専門家へ連絡して指示を待つことになる場合もあった。また、対応作業が複雑で高度な場合には、オペレータに作業を任すことができず、専門家が作業せざるを得ない場合があった。
【0005】
本発明はこうした状況に鑑みてなされたものであり、その目的は、障害発生に対処する際の効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【0006】
本発明のある態様は、監視装置に関する。この監視装置は、ネットワークを介して監視対象に関するメッセージを受信する受信部と、前記受信部が受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのデータを格納する画面フロー格納部と、前記画面フロー格納部に格納された前記画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件を格納した条件格納部と、前記条件格納部に格納された条件を参照して、提示すべき画面フローを判定する判定部と、前記判定部により判定された前記画面フローのデータを前記画面フロー格納部から読み出して提示する制御部と、を備えることを特徴とする。
【0007】
監視対象は、例えば、サーバ装置、パーソナルコンピュータなどの端末装置、それらの装置で動作するプロセス、ネットワークに設けられた各種の通信装置などであってもよい。受信したメッセージに対応して実行すべき作業を適切に判定してオペレータに提示することにより、障害への対処の効率を向上させることができる。また、障害対応の作業の特定を容易にし、監視業務の信頼性を向上させることができる。
【0008】
前記制御部は、前記画面により提示した作業の結果の入力を受け付け、その結果に基づいて、次に提示すべき画面を判定してもよい。画面に提示された作業をオペレータが実行し、実行した結果を入力すると、その結果に基づいて次にすべき作業の内容が判定されて提示されるので、オペレータを正しい作業に誘導することができる。これにより、オペレータのスキルによらず、適切な対応を講じさせることができる。また、オペレータが作業の内容を調べる手間を省き、工数を削減させることができる。さらに、複雑な作業であっても、オペレータに作業を移管することができる。
【0009】
前記画面フロー格納部は、前記作業の結果と次に提示すべき画面とを対応づけて格納した遷移テーブルを格納してもよく、前記制御部は、前記遷移テーブルを参照して次に提示すべき画面を判定してもよい。画面フローを設計する際に、既に作成した画面を部品として適宜組み合わせ、次に提示すべき画面への遷移を指定すればよいので、画面フローの設計が容易となり、工数を削減することができる。また、柔軟な画面の流れを定義することが可能となり、より適切に作業の流れを表現することができる。
【0010】
前記画面フロー格納部は、前記画面を構成する要素の情報を格納したプロパティテーブルを格納してもよく、前記制御部は、前記プロパティテーブルを参照して前記画面を構成する要素の情報を取得し、前記画面を構成して提示してもよい。個々の画面を設計する際に、例えばHTMLなどでページを一から作成するのではなく、既に作成された構成要素を配置して画面を設計することができるので、画面の設計が容易となり、工数を削減することができる。
【0011】
前記制御部は、前記画面フローを提示するときに、その画面フローを構成する画面をノードとする有向グラフを提示してもよい。このとき、前記制御部は、前記画面フローのうち現在提示されている画面及び既に提示された画面が識別可能な形式で前記有向グラフを提示してもよい。これにより、オペレータは、画面フローの全容と現在の進行状況を容易に把握することができる
【0012】
本発明の別の態様は、監視方法に関する。この監視方法は、ネットワークを介して監視対象に関するメッセージを受信するステップと、受信した前記メッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件が格納されたメモリから、前記条件を読み出して、受信したメッセージと前記条件から、提示すべき画面フローを判定するステップと、判定された画面フローを、前記画面フローのデータを格納したメモリから読み出して提示するステップと、を含むことを特徴とする。
【0013】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0014】
本発明によれば、監視対象に障害が発生したときに効率良く対処する技術を提供することができる。
【発明を実施するための最良の形態】
【0015】
図1は、実施の形態に係る監視システムの構成を示す。監視装置20は、監視対象となる端末装置14aやサーバ装置14bなど(以下、「監視対象装置14」という)が設けられたネットワークシステム12a、12b、・・・、を含む監視対象システム10を統合的に監視する。ネットワークシステム12a、12b、・・・、には、監視対象装置14の異常を検知してメッセージを発信する監視プログラム等がインストールされた管理装置16a、16b、・・・、がそれぞれ設けられており、そのプログラムに設定された条件に合致する状態が発生すると、管理装置16から監視装置20にメッセージが送信される。管理装置16にインストールされた監視プログラムが監視対象装置14を監視してもよいし、監視対象装置14に自身の状態を監視するためのエージェントなどをインストールしておいてもよい。監視装置20は、監視対象システム10から発信されたメッセージを取得し、取得したメッセージを記録するとともに、オペレータにメッセージを提示し、障害の発生を通知する。オペレータは、提示されたメッセージの内容を見て、障害に対してなすべき対応の内容を判断する。
【0016】
従来の監視システムでは、オペレータは、メッセージの内容が提示されると、障害対応の手順が記載された分厚いマニュアルを手でめくって、なすべき対応の内容を調べる必要があり、時には、適切な対応策を見つけ出せない場合もあった。しかし、障害対応にはパターン化できるものもあり、予め決まった対応作業のフローを用意しておくことにより、オペレータのスキルによらず、適切な対応をとることができるようになる。本実施の形態では、オペレータの作業を半自動化し、実行すべき対応のフローをオペレータに提示しつつ、オペレータの作業を的確に誘導することにより、オペレータによる障害対応作業を効率的に支援する技術を提案する。
【0017】
具体的には、実行すべき作業の内容を判定するための切り分け条件と、その切り分け条件に合致したときに実行すべき作業の流れを提示するための画面フローを予め設定しておき、受信したメッセージに応じて、実行すべき作業のフローを、画面フローとしてオペレータに提示する。この画面フローは、オペレータの作業の内容を提示するための、カスタマイズ可能な画面の組合せにより構成される。画面フローにおいては、オペレータの作業の結果などに基づいて、次に提示すべき画面への遷移が定義される。本実施の形態の監視装置20は、監視対象装置などから発信されたメッセージを受信すると、切り分け条件にしたがって適切な画面フローを起動する。起動された画面フローは、オペレータの作業の進行に伴って、次に実行すべき作業を示す画面を順次提示し、オペレータの作業を支援する。
【0018】
まず、画面フローの例を示す。図2は、プロセスの異常を示すメッセージを受信したときに、オペレータが実行すべき作業のフローを示す。プロセスの異常を示すメッセージを受信すると、オペレータは、サービスの状態を確認する(S110)。サービスが既に復旧していれば(S112のY)、その旨を顧客へ報告する(S126)。サービスが復旧していなければ(S112のN)、つづいて、サービス復旧のための手順書を検索する(S114)。手順書があれば(S116のY)、その手順書に記述された復旧手順を実行する(S118)。復旧に成功しても(S120のY)、失敗しても(S120のN)、適切な連絡先へ報告する(S126)。また、手順書が無ければ(S116のN)、過去に同様の障害が発生したときの対応履歴を検索する(S122)。過去の対応実績があっても(S124のY)、無くても(S124のN)、適切な連絡先へ報告する(S126)。
【0019】
監視装置20は、このようなオペレータの作業を支援するために、作業の内容を示す画面を提示する。まず、プロセス異常の障害対応をオペレータが開始すると、最初の作業であるサービス状態の確認(S110)の実行を促すための画面D1を提示する。オペレータが、画面D1に提示された指示にしたがってサービス確認作業を実行し、実行結果を入力して次画面へ遷移するためのボタンをクリックすると、サービスが復旧していた場合は、その旨を顧客へ報告する作業(S126)を提示する画面D5へ遷移する。サービスが復旧していなかった場合は、サービス復旧のための手順書を検索する作業(S114)を提示する画面D2へ遷移する。このように、個々の作業の指示を提示するための画面を組み合わせた画面フローを用意しておき、オペレータによる実行結果に応じて次に実行すべき作業の指示を画面に提示して、オペレータの作業を支援する。
【0020】
図3は、図2に示した作業フローのうち、サービス確認作業(S110)の手順を提示するための画面D1を示す。画面D1には、障害が発生しているプロセスが自動復旧しているかを確認する作業(S110)の指示が提示されている。画面D1には、サービスの状態を確認するコマンドを実行するためのボタンが用意されており、オペレータがこのボタンを押すと、コマンドの発行指示が監視対象装置14へ通知され、監視対象装置14でコマンドが実行される。コマンドが実行されると、コマンドの実行結果を示す戻り値が監視装置20に通知され、画面D1のコマンド実行結果欄に表示される。コマンド実行結果イメージ欄に戻り値の説明を表示して、オペレータが実行結果を判断するための指標としてもよい。この説明は、予め任意に編集しておくことができる。画面D1には、実行結果を入力するためのラジオボタンが設けられており、オペレータがプロセスの状態を確認して、「自動復旧している」か「停止したまま」のいずれかのラジオボタンを選択し、「次へ」ボタンをクリックすると、実行結果に応じて適切な画面へ遷移する。
【0021】
図4は、図2に示した作業フローのうち、復旧手順書検索作業(S114)の手順を提示するための画面D2を示す。画面D2には、プロセスの復旧手順書の有無を確認する作業(S114)の指示が提示されている。画面D2には、予め画面に登録されていた復旧手順書の候補が提示されてもよい。オペレータは、画面D2に提示された候補の中から適切な手順書を選択してもよいし、「手順書一覧」ボタンをクリックして、手順書の一覧の中から適切な手順書を検索してもよい。オペレータが、プロセスの復旧手順書を発見した場合、「有り」のラジオボタンを選択して「次へ」ボタンをクリックすると、手順書を実行する作業(S118)を提示する画面D3へ遷移する。オペレータが、プロセスの復旧手順書を発見できなかった場合、「無し」のラジオボタンを選択して「次へ」ボタンをクリックすると、過去の障害を検索する作業(S122)を提示する画面D4へ遷移する。
【0022】
図5は、図2に示した作業フローのうち、手順書実行作業(S118)の手順を提示するための画面D3を示す。画面D3には、手順書に記述された手順を実行する作業(S118)の指示が提示されている。オペレータが、手順書に記述された手順を実行し、「正常終了」、「異常終了」、「その他」のいずれかのラジオボタンを選択して「次へ」ボタンをクリックすると、結果に応じて適切な連絡先へ報告する作業(S126)を提示する画面D5へ遷移する。
【0023】
図6は、図2に示した作業フローのうち、過去障害検索作業(S122)の手順を提示するための画面D4を示す。画面D4には、過去の障害対応履歴を検索する作業(S122)の指示が提示されている。オペレータが、過去の障害対応履歴を検索し、「有り」又は「無し」のラジオボタンを選択して「次へ」ボタンをクリックすると、結果に応じて適切な連絡先へ報告する作業(S126)を提示する画面D5へ遷移する。
【0024】
図7は、図2に示した作業フローのうち、報告作業(S126)の手順を提示するための画面D5を示す。画面D5には、障害を報告する指示が提示されている。この障害報告画面D5では、それまでの作業の実行結果に応じて、報告すべき内容がオペレータに提示されている。また、後述するように、連絡すべき相手が優先順位付きで予め登録されており、それまでの実行結果に応じて適切な連絡先が自動的に選択されてオペレータに提示される。また、それまで実行した作業の内容や結果を、対応履歴として表示することもできる。さらに、コマンド実行結果としての戻り値は、この欄から別ウィンドウで表示させるようにすることもできる。オペレータは、画面に提示された連絡先へ電話を発呼し、画面に提示された文章を読み上げればよい。オペレータのスキルに応じて、文章の内容を変えることもできる。
【0025】
これらの画面は、カスタマイズ可能な部品として用意されており、後述するように、顧客システムごとに作業内容が異なる場合には、画面を適宜カスタマイズすることにより、顧客システムごとの作業内容に応じた画面を作成することができる。それぞれの画面は、名称やIDなどの基本データ、構成要素のプロパティデータ、遷移先を定義するための接続子データなどにより定義されており、これらのデータを設定することにより、画面フローの部品として利用可能となる。
【0026】
ディスプレイに画面が順次表示されていくことは、監視装置20から見ると、画面を構成して表示する処理を順次実行していくことに対応する。この意味で、画面フローを提示していくことを、画面フローを「実行」するともいう。また、画面フローのデータを読み出して、画面フローを提示する処理を開始することを、画面フローを「起動」するともいう。個々の画面を構成して表示する処理は、画面フロー全体を実行するための部品ととらえることができる。この意味で、画面を提示することを、画面部品を「実行」するともいう。前述した、画面を定義するための種々のデータは、画面部品の実行に用いられるデータでもある。画面が提示されるとき、「画面部品」のデータが読み出され、「画面」が構成されて、オペレータに提示される。文脈上、監視装置20により実行されるフローの処理単位である「画面部品」という語と、その処理の実行結果として表示される「画面」という語を、とくに区別なく用いることもある。
【0027】
画面の構成要素には、見出し表示領域、連絡先表示領域、特記事項入力用テキストボックス、「次へ」ボタン、「中断」ボタンなどがある。画面を作成、編集する場合は、これらの構成要素を指定すればよい。したがって、画面をカスタマイズする場合に、例えばHTMLにより画面の内容を記述する必要はなく、用意されている構成要素を画面に組み込むことにより、容易に画面を作成、編集することができる。
【0028】
また、画面の構成要素として、ラジオボタンなどの選択入力用のインタフェイスが用意されており、それぞれの選択肢に対応する接続子に対して遷移先の画面が定義される。接続子には、それぞれを一意に識別するための接続子IDが割り当てられている。監視装置20には、画面フローにおける画面の遷移を定義するためのテーブルが用意されており、それぞれの画面の接続子に遷移先の画面を設定することにより、オペレータの作業に合わせた画面フローを構築することができる。
【0029】
このように、実行すべき作業の流れを自動的に判定してオペレータに提示することにより、オペレータは、メッセージが提示される度に分厚いマニュアルを開いて対応を調べる手間から解放される。したがって、オペレータの作業を飛躍的に効率化することができる。また、対応作業が複雑であっても、オペレータに作業の内容を適切に指示する画面を提示することができるので、従来、専門家が行っていた作業をオペレータに移管することができ、専門家の負担も軽減することができる。
【0030】
つづいて、本実施の形態の監視装置20の構成と動作について説明する。
【0031】
図8は、監視装置20の内部構成を示す。監視装置20は、メッセージ受信部22、メッセージ解析部24、対応アクション判定部26、対応アクション制御部28、アラート通知部30、顧客システムデータベース32、アクション定義データベース34、障害管理データベース36、及び連絡先データベース38を含む。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0032】
メッセージ受信部22は、監視対象システム10から発信されたメッセージを受信する。メッセージ解析部24は、顧客システムデータベース32及びアクション定義データベース34を参照して、メッセージ受信部22が受信したメッセージを解析する。メッセージ解析部24は、受信したメッセージが、アクション定義データベース34に格納された無視条件に合致した場合、メッセージをオペレータに提示せずに、無視メッセージとして障害管理データベース36へ格納する。メッセージ解析部24は、受信したメッセージが、自動電話、自動メール、自動コマンドなどの自動処理条件に合致した場合、設定された自動処理を実行するように、自動処理を実行する構成へ指示する。メッセージ解析部24は、受信したメッセージが、無視条件及び自動処理条件に合致しない場合は、メッセージを障害管理データベース36に格納するとともに、アラート通知部30によりメッセージの受信を通知する。
【0033】
アラート通知部30により障害メッセージの受信を通知されたオペレータから、障害メッセージへの対応作業の開始を指示されると、対応アクション判定部26は、アクション定義データベース34を参照して、受信したメッセージに対応して実行すべきアクションの内容を判定する。具体的には、対応アクション判定部26は、アクション定義データベース34に格納された切り分け条件に基づいて、起動すべき画面フローを判定する。対応アクション判定部26は、受信したメッセージがいずれの切り分け条件にも合致しなかった場合、すなわち、対応アクションが設定されていなかった場合、デフォルトとして設定された汎用的な画面フローを起動してもよい。この画面フローは、例えば、障害の発生を技術者などに報告する作業を提示するものであってもよい。
【0034】
対応アクション制御部28は、アクション定義データベース34を参照して、対応アクション判定部26により判定された画面フローを提示する。対応アクション制御部28は、画面フローにより提示した作業の結果の入力を受け付け、その結果に基づいて画面を遷移させるとともに、作業の内容と結果を障害管理データベース36に履歴として記録する。対応アクション制御部28が、提示した画面ごとに作業の内容と結果を自動的に記録するので、オペレータが作業報告を作成しなくても、正確に履歴を残すことができる。顧客などにオペレータの作業報告を提出する場合にも、障害管理データベース36に蓄積された障害情報及び対応履歴情報を抽出、編集することにより、作業報告を一括して作成することができる。これにより、オペレータの工数を削減することができる。アラート通知部30は、パトランプや音声などによりオペレータにアラートを通知する。
【0035】
図9は、顧客システムデータベース32の内部データの例を示す。顧客システムデータベース32には、システムID欄101、顧客名欄102、及び監視対象装置名欄103が設けられている。メッセージ解析部24は、メッセージ受信部22が受信したメッセージ中の監視対象装置名などをもとに、顧客システムデータベース32を参照してメッセージの発信元のシステムIDを特定する。監視装置20が、複数の顧客システムから発信されるメッセージを統合的に管理する場合であっても、メッセージの発信元の顧客システムのシステムIDを的確に特定することができ、顧客システム毎に適切な対応を行うことができる。
【0036】
図10は、アクション定義データベース34のテーブル構成の例を示す。アクション定義データベース34は、メッセージの切り分け条件を格納する切り分け条件テーブル40、画面部品のデータを格納する部品データテーブル41、画面フローのデータを格納するフローデータテーブル47を含む。部品データテーブル41は、監視装置20において利用可能な画面部品の一覧とそれらの管理情報を格納した部品管理テーブル42、それぞれの画面を構成する要素の情報を格納したプロパティテーブル44、それぞれの画面に定義された接続子の情報を格納した接続子テーブル46を含む。フローデータテーブル47は、監視装置20において利用可能な画面フローの一覧とそれらの管理情報を格納したフロー管理テーブル48、それぞれの画面フローを構成する画面部品の情報を格納したフロー構成部品テーブル50、それぞれの画面フローにおける画面の遷移を定義するための情報を格納した遷移テーブル52を含む。切り分け条件テーブル40は、条件格納部の一例であり、フローデータテーブル47は、画面フロー格納部の一例である。
【0037】
アクション定義データベース34は、顧客システム毎に設けられてもよい。例えば、同じ障害が発生した場合であっても、ある顧客は、まずオペレータに復旧作業を実行させることを希望し、別の顧客は、迅速にネットワーク管理者などへ報告させることを希望するなど、障害対応作業の内容が異なる場合がある。このような場合であっても、システム毎にアクション定義データベース34を設け、メッセージを発信した顧客システムを特定してそのシステムのアクション定義データベース34を適用することにより、システム毎に柔軟に適切な障害対応の内容を設定することができる。
【0038】
図11は、切り分け条件テーブル40の内部データの例を示す。切り分け条件テーブル40は、受信したメッセージに対して適切な対応アクションを判定するために、メッセージを切り分けるための条件を格納する。切り分け条件テーブル40には、システムID欄111、切り分けID欄112、切り分け区分欄180、優先順位欄113、切り分け名称欄114、条件(メッセージID)欄115、条件(装置ID)欄116、条件(内容)欄117、アクション区分欄118、フローID欄119、連絡先ブロックID欄181、メールテンプレートID欄182、及びコマンド欄183が設けられている。
【0039】
システムID欄111は、顧客システムのIDを格納する。切り分けID欄112は、切り分け条件を識別するためのIDを格納する。切り分け区分欄180は、切り分け条件の区分を格納する。切り分け条件の区分には、オペレータにメッセージの受信が通知される前にメッセージ解析部24において適用される「0次切り分け」と、オペレータにメッセージの受信が通知されオペレータがメッセージへの対応作業を開始した後に対応アクション判定部26において適用される「1次切り分け」がある。優先順位欄113は、切り分け条件を適用する優先順位を格納する。優先順位は、「0次切り分け」と「1次切り分け」のそれぞれの区分の中で指定される。条件(メッセージID)欄115は、メッセージIDに関する切り分け条件を格納する。条件(装置ID)欄116は、監視対象の装置IDに関する切り分け条件を格納する。条件(内容)欄117は、メッセージの内容に関する切り分け条件を格納する。アクション区分欄118は、切り分け条件に合致したときに実行すべきアクションの区分を格納する。アクション区分には、アラートを通知せずに無視する「無視」、適切な連絡先へ自動的に電話を発信する「自動電話」、適切な連絡先へ自動的にメールを発信する「自動メール」、適切なコマンドを自動的に発行する「自動コマンド」、適切な画面フローを起動する「画面フロー」などがある。
【0040】
フローID欄119は、アクション区分が「画面フロー」である切り分け条件に合致したときに、実行すべき画面フローのIDを格納する。連絡先ブロックID欄181は、アクション区分が「自動電話」又は「自動メール」である切り分け条件に合致したときに、自動的に電話又はメールを発信すべき連絡先のブロックIDを格納する。メールテンプレートID欄182は、アクション区分が「自動メール」である切り分け条件に合致したときに、自動的に発信するメールのテンプレートとして使用されるメールテンプレートのIDを格納する。コマンド欄183は、アクション区分が「自動コマンド」である切り分け条件に合致したときに、自動的に発行されるコマンドを格納する。
【0041】
メッセージ解析部24は、切り分け条件テーブル40の条件(メッセージID)欄115、条件(装置ID)欄116、及び条件(内容)欄117を参照して、受信したメッセージが、切り分け区分が「0次切り分け」である無視条件又は自動処理条件に合致するか否かを解析する。合致した切り分け条件のアクション区分が「0(無視)」であった場合は、メッセージ解析部24は、メッセージの受信をアラート通知部30に通知せずに、無視メッセージとして障害管理データベース36へ格納する。合致した切り分け条件のアクション区分が「1(自動電話)」、「2(自動メール)」、「3(自動コマンド)」などの自動処理条件であった場合、メッセージ解析部24は、設定された自動処理を実行するように、自動処理を実行する構成へ指示する。これにより、画面フローを起動するまでもなく、自動的に障害対応処理を実行可能な場合は、オペレータの手を介さずに自動処理を行うことができる。
【0042】
対応アクション判定部26は、切り分け条件テーブル40の条件(メッセージID)欄115、条件(装置ID)欄116、及び条件(内容)欄117を参照して、受信したメッセージが、切り分け区分が「1次切り分け」である切り分け条件に合致するか否かを解析し、合致する切り分け条件のうち優先順位が最も高いものを対応アクションとして判定する。合致した切り分け条件のアクション区分が「4(画面フロー)」であった場合は、対応アクション判定部26は、対応アクション制御部28に、実行すべき画面フローのIDを通知する。対応アクション制御部28は、画面フローIDで特定される画面フローをオペレータに提示する。
【0043】
例えば、図11の例では、システムIDが「SYSA」の顧客システムから、装置IDが「NODEA01」で、かつ、正規表現で「*異常*(PROC01)*」という文字列を含むメッセージを受信したとき、切り分けID「101」の切り分け条件が適用され、画面フローID「PROC01_RECOV_01」の画面フローが起動される。この画面フローは、図2に示した作業フローを提示する画面フローである。こうして、プロセス異常を示すメッセージを受信したときに、図3から図7に示した画面フローがオペレータに提示される。
【0044】
図12は、部品管理テーブル42の内部データの例を示す。部品管理テーブル42は、監視装置20により提示される画面フローで使用される部品の一覧とそれらの基本情報を格納する。部品管理テーブル42には、システムID欄121、部品ID欄122、部品区分欄123、及び部品名称欄124が設けられている。
【0045】
システムID欄121は、画面部品が使用されるシステムのIDを格納する。部品ID欄122は、画面部品を識別するためのIDを格納する。部品名称欄124は、画面部品の名称を格納する。部品区分欄123は、画面部品の区分を格納する。画面部品の区分には、例えば、「コマンド実行部品」、「メール送信部品」、「手順書実行部品」、「障害報告部品」、「汎用部品」、「連絡確認部品」などがある。一例として、システムID「SYSA」の顧客システムで用いられる部品ID「PROC01_EXEC_CHECK」の画面部品は、部品区分が「コマンド実行」であり、部品名称が「PROC01サービス稼働状況確認」である。この画面部品は、図3に示した画面D1を提示するための画面部品である。
【0046】
「コマンド実行部品」は、コマンドを実行するための画面部品である。コマンド実行部品により実行されるコマンドには、「ping」など、監視装置20自身が実行可能なコマンドと、プロセスの再起動やCPU稼働率の調査など、管理装置16又は監視対象装置14が実行主体となるコマンドがある。「メール送信部品」は、障害報告や復旧報告などを電子メールで送信する場合に、メール送信を支援するための画面部品である。「手順書実行部品」は、電子化された手順書の中から、適切な個所を検索して表示させるための画面部品である。「障害報告部品」は、障害の発生などを適切な相手に報告する作業を支援するための画面部品である。「汎用部品」は、汎用的なスクリプト表示、値入力、選択肢の選択、分岐処理、手順書選択などを行うための画面部品である。「連絡確認部品」は、障害の発生などをベンダなどの連絡先に連絡し、状況を確認するための画面部品である。
【0047】
後述するフロー編集機能を用いて、新たな画面部品が生成されると、その画面部品の情報が部品管理テーブル42に登録され、以降、画面フローを構成する画面部品として利用することが可能となる。
【0048】
図13は、プロパティテーブル44の内部データの例を示す。プロパティテーブル44は、画面を構成する要素のプロパティを格納する。プロパティテーブル44には、部品ID欄131、キー欄132、及び設定値欄133が設けられている。
【0049】
部品ID欄131は、画面部品のIDを格納する。キー欄132は、画面を構成する要素の種別を示すキー情報を格納する。設定値欄133は、キー欄132に格納された要素の種別に応じて、必要な設定値を格納する。例えば、キー情報が「navi_title」のレコードの設定値には、画面部品のタイトルである「インフォメーション確認(プロセス)」が格納されている。対応アクション制御部28は、実行する画面部品の部品IDをもとに、プロパティテーブル44を検索し、その画面部品により提示される画面を構成する要素の情報を読み出して、画面を構成する。
【0050】
図13には、一例として、部品ID「PROC01_EXEC_CHECK」の画面部品により提示される画面、すなわち、図3に示した画面D1の構成要素の一部を示している。対応アクション制御部28は、これらの情報を読み出して、構成要素を画面に配置し、画面D1を構成する。
【0051】
図13に示した画面の構成要素のうち、キー「sel_exp_1」及び「sel_exp_2」は、実行結果を入力するためのラジオボタンであり、「sel_exp_1」の末尾の番号「1」は、このラジオボタンの接続子IDが「1」であることを示し、「sel_exp_2」の末尾の番号「2」は、このラジオボタンの接続子IDが「2」であることを示している。図13に示した例では、「自動復旧している」と書かれたラジオボタンには、その接続子を識別する接続子IDとして「1」が割り当てられ、「停止したまま」と書かれたラジオボタンには、接続子ID「2」が割り当てられる。
【0052】
図14は、接続子テーブル46の内部データの例を示す。接続子テーブル46は、ある画面部品から複数の画面部品へ遷移する可能性がある場合に、それぞれの遷移先を設定するために、画面部品の接続子の情報を格納する。接続子テーブル46には、部品ID欄141及び接続子ID欄142が設けられている。
【0053】
部品ID欄141は、画面部品のIDを格納する。接続子ID欄142は、画面部品の接続子を識別するためのIDを格納する。一例として、部品ID「PROC01_EXEC_CHECK」の画面部品により提示される画面、すなわち、図3に示した画面D1には、接続子ID「1」と「2」の2つの接続子が用意されている。図13のプロパティテーブル44において定義されているように、オペレータが処理を実行した結果として、「自動復旧している」と書かれたラジオボタンを選択して画面遷移を要求すると、対応アクション制御部28は、画面部品「PROC01_EXEC_CHECK」の接続子ID「1」に対応づけられた遷移先に画面を遷移させる。それぞれの接続子IDに対応づけられた遷移先の画面は、図17に示す遷移テーブル52に設定されている。この接続子IDは、後述するフローの編集機能においても、接続子を識別するために使用される。
【0054】
図15は、フロー管理テーブル48の内部データの例を示す。フロー管理テーブル48は、監視装置20により提示される画面フローの一覧とそれらの基本情報を格納する。フロー管理テーブル48には、システムID欄151、フローID欄152、フロー名称欄153、及びノードID欄154が設けられている。
【0055】
システムID欄151は、画面フローが使用されるシステムのIDを格納する。フローID欄152は、画面フローを識別するためのIDを格納する。フロー名称欄153は、画面フローの名称を格納する。ノードID欄154は、画面フローが起動されたときに、最初に実行される画面部品のノードIDを格納する。この画面部品から後の画面フローについては、図17の遷移テーブル52に基づいて決定される。ここで、画面フローに組み込まれた画面部品を「ノード」と呼び、画面フローに組み込まれた個々の画面部品を識別するためのIDを「ノードID」と呼ぶ。
【0056】
対応アクション制御部28は、対応アクション判定部26により起動すべき画面フローが判定されると、その画面フローのIDをもとに、フロー管理テーブル48を参照して、最初に実行すべき画面部品のノードIDを取得する。例えば、図15の例では、システムID「SYSA」の顧客システムにおいて、フローID「PROC01_RECOV_01」の画面フローを起動するとき、最初に実行する画面部品のノードIDは「00001」である。ノードIDと、部品IDとの対応は、図16に示すフロー構成部品テーブル50に格納されている。
【0057】
図16は、フロー構成部品テーブル50の内部データの例を示す。フロー構成部品テーブル50は、それぞれの画面フローを構成する画面部品の一覧と、それらの基本情報を格納する。フロー構成部品テーブル50には、ノードID欄161、フローID欄162、及び部品ID欄163が設けられている。
【0058】
ノードID欄161は、画面フローに配置された画面部品を識別するためのIDを格納する。フローID欄162は、画面フローを識別するためのIDを格納する。部品ID欄163は、画面部品のIDを格納する。対応アクション制御部28は、次に実行すべき画面部品のノードIDを図15のフロー管理テーブル48及び図17の遷移テーブル52を参照して特定すると、ノードIDをもとにフロー構成部品テーブル50を参照して、その画面部品の部品IDを取得する。
【0059】
例えば、図16の例では、フローID「PROC01_RECOV_01」の画面フローには、部品IDが「PROC01_EXEC_CHECK」、「PROC01_RECOVERY_SEARCH」、「PROC01_RECOVERY」、「PROC01_OBS_SEARCH」、「PROC01_REPORT」である5種の画面部品が含まれており、それぞれにノードIDが割り当てられている。このうち、画面部品「PROC01_REPORT」は、5つの異なる接続子の遷移先として設定されているため、5つのノードIDが割り当てられている。同種の画面部品であっても、画面フローにおいて複数のノードに設定されている場合は、それぞれ異なるノードIDが割り当てられる。これらの画面部品の遷移関係は、図17に示す遷移テーブル52に格納されている。
【0060】
図17は、遷移テーブル52の内部データの例を示す。遷移テーブル52は、画面フローにおける画面部品の遷移を定義するための情報を格納する。遷移テーブル52には、ノードID欄171、接続子ID欄172、及び遷移先ノードID欄173が設けられている。
【0061】
ノードID欄171は、遷移元の画面部品のノードIDを格納する。接続子ID欄172は、画面部品の接続子を識別するためのIDを格納する。遷移先ノードID欄173は、接続子IDに対応した遷移先の画面部品のノードIDを格納する。対応アクション制御部28は、オペレータが入力した作業結果を示す接続子IDをもとに、遷移テーブル52を参照して、遷移先ノードIDを取得する。
【0062】
例えば、図17の例では、ノードIDが「00001」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_EXEC_CHECK」の画面部品(画面D1)の遷移先として、2つの画面部品が設定されている。接続子ID「1」、すなわち、「自動復旧している」場合の遷移先は、ノードIDが「00005」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_REPORT」の画面部品(画面D5)が設定されている。接続子ID「2」、すなわち、「停止したまま」の場合の遷移先は、ノードIDが「00002」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_RECOVERY_SEARCH」の画面部品(画面D2)が設定されている。
【0063】
図18は、連絡先データベース38のテーブル構成の例を示す。連絡先データベース38は、メールテンプレートテーブル54、連絡先管理テーブル56、連絡先ブロックテーブル58、電話連絡先順位テーブル60、及びメール宛先テーブル62を含む。これらの情報は、「メール送信部品」、「障害報告部品」、「汎用部品」、「連絡確認部品」などの画面部品において、連絡先を予め画面部品に設定しておき、オペレータに提示するために用いられる。また、切り分け条件テーブル40において、「自動電話」機能や「自動メール」機能が選択された場合に、自動的に電話やメールを発信するために用いられる。
【0064】
図19は、メールテンプレートテーブル54の内部データの例を示す。メールテンプレートテーブル54は、障害発生の報告や障害回復の報告などに用いる電子メールのテンプレートに関する情報を格納する。メールテンプレートテーブル54には、テンプレートID欄221、テンプレート名欄222、本文欄223が設けられている。テンプレートID欄221は、メールテンプレートを識別するためのIDを格納する。テンプレート名欄222は、メールテンプレートの名称を格納する。本文欄223は、電子メールのテンプレートとして使用される文章の内容を格納する。テンプレートとして使用される文章は、メッセージの内容や作業結果などの可変値を本文内に埋め込むための予約語を含んでもよい。
【0065】
対応アクション制御部28は、画面部品にメールテンプレートが指定されている場合、該当するメールテンプレートの本文をメールテンプレートテーブル54を参照して取得し、その本文の内容を読み出して設定する。
【0066】
図20は、連絡先管理テーブル56の内部データの例を示す。連絡先管理テーブル56は、障害発生や障害回復などを連絡すべき相手の情報を格納する。連絡先管理テーブル56には、連絡先ID欄231、会社名欄232、所属欄233、氏名欄234、メール属性1欄235、メールアドレス1欄236、メール属性2欄237、メールアドレス2欄238、電話属性1欄239、電話番号1欄240、電話属性2欄241、電話番号2欄242、電話属性3欄243、電話番号3欄244が設けられている。連絡先ID欄231は、連絡先を識別するためのIDを格納する。会社名欄232は、連絡先が属する会社の名称を格納する。所属欄233は、連絡先の所属を格納する。氏名欄234は、連絡先の氏名を格納する。メール属性1欄235及びメール属性2欄237は、メールアドレスの種別を格納する。メールアドレス1欄236及びメールアドレス2欄238は、連絡先のメールアドレスを格納する。電話属性1欄239、電話属性2欄241、及び電話属性3欄243は、電話の種別や属性などを示す文字列を格納する。電話番号1欄240、電話番号2欄242、及び電話番号3欄244は、連絡先の電話番号を格納する。
【0067】
対応アクション制御部28は、画面部品に連絡先が指定されている場合、該当する連絡先の電話番号又はメールアドレスを、連絡先管理テーブル56を参照して取得し、画面に提示する。
【0068】
図21は、連絡先ブロックテーブル58の内部データの例を示す。連絡先ブロックテーブル58は、複数の連絡先の集合である連絡先ブロックの一覧とそれらの基本情報を格納する。連絡先ブロックテーブル58には、システムID欄251、連絡先ブロックID欄252、ブロック名称欄253、有効開始日欄254が設けられている。システムID欄251は、システムのIDを格納する。連絡先ブロックID欄252は、連絡先ブロックを識別するためのIDを格納する。ブロック名称欄253は、連絡先ブロックの名称を格納する。有効開始日欄254は、連絡先ブロックを有効とする日を格納する。
【0069】
対応アクション制御部28は、画面部品に連絡先ブロックが指定されている場合、連絡先ブロックテーブル58を参照して有効開始日を確認し、後述する電話連絡先順位テーブル60又はメール宛先テーブル62を参照して、その連絡先ブロックに属する連絡先を取得し、画面に提示する。
【0070】
図22は、電話連絡先順位テーブル60の内部データの例を示す。電話連絡先順位テーブル60は、連絡先ブロックに属する連絡先と、それらの連絡先に電話連絡を行う際の優先順位を格納する。電話連絡先順位テーブル60には、連絡先ブロックID欄261、連絡先ID欄262、電話属性番号欄263、順位(営業日+日中)欄264、順位(営業日+夜間)欄265、順位(休日+日中)欄266、順位(休日+夜間)欄267が設けられている。連絡先ブロックID欄261は、連絡先ブロックのIDを格納する。連絡先ID欄262は、連絡先ブロックに属する連絡先のIDを格納する。電話属性番号欄263は、連絡先の電話番号の種別や属性などを示す文字列を格納する。順位(営業日+日中)欄264、順位(営業日+夜間)欄265、順位(休日+日中)欄266、及び順位(休日+夜間)欄267は、連絡先へ電話をかける際の時間帯別の優先順位を格納する。
【0071】
図23は、メール宛先テーブル62の内部データの例を示す。メール宛先テーブル62は、連絡先ブロックに属するメールの宛先を格納する。メール宛先テーブル62には、連絡先ブロックID欄271、連絡先ID欄272、メール属性番号欄273、宛先区分欄274が設けられている。連絡先ブロックID欄271は、連絡先ブロックのIDを格納する。連絡先ID欄272は、連絡先ブロックに属する連絡先のIDを格納する。メール属性番号欄273は、連絡先のメールアドレスの種別を格納する。宛先区分欄274は、メールアドレスを指定する宛先区分を格納する。
【0072】
このように、連絡先を予め登録し、画面の構成要素として画面部品に設定できるようにしておくことにより、受信したメッセージや作業の内容に応じて適切な連絡先をオペレータに提示することができる。これにより、オペレータが連絡先を調べる手間を省き、工数を削減させることができる。
【0073】
図24は、メッセージを受信してから解析するまでの手順を示すフローチャートである。メッセージ受信部22が監視対象システム10から発信された障害メッセージを受信すると(S10)、メッセージ解析部24は、顧客システムデータベース32を参照して、受信したメッセージがいずれの顧客システムから発信されたものであるかを特定する(S12)。顧客システムが特定されると、その顧客システムに対して設定されたアクション定義データベース34の切り分け条件テーブル40を参照して、受信したメッセージが0次切り分け条件に合致するかマッチングする(S14)。無視条件のポリシーに合致する場合(S16のY)、メッセージ解析部24は、そのメッセージを無視障害として障害管理データベース36に登録し(S20)、そのメッセージに対する処理を終了する。無視条件のポリシーに合致しない場合(S16のN)、メッセージ解析部24は、そのメッセージを障害として障害管理データベース36に登録する(S18)。受信したメッセージが自動処理条件のポリシーに合致する場合(S22のY)、メッセージ解析部24は、自動電話、自動メール、自動コマンドなどの自動処理を実行させる(S24)。自動処理条件にも合致しなかった場合(S22のN)、メッセージ解析部24は、アラート通知部30によりメッセージの受信をオペレータへ通知する(S26)。障害の発生を知ったオペレータが対応作業を開始すると、図25に示す対応アクション判定処理へ移る。
【0074】
このように、まず、顧客システムを特定し、顧客システム毎に設定されたアクション定義データベース34を適用することにより、顧客システムごとに適切にメッセージをフィルタリングすることができる。また、顧客システム毎に対応策が異なる場合であっても、障害が発生した顧客システムに応じた適切な対応策を画面フローとして提示することができる。
【0075】
図25は、対応アクション判定の手順を示すフローチャートである。オペレータにより障害メッセージに対する作業の開始が指示されると、対応アクション判定部26は、アクション定義データベース34の切り分け条件テーブル40を参照して、受信したメッセージが合致する1次切り分け条件を検索する(S30)。切り分け条件のポリシーに合致しない場合(S32のN)、対応アクション判定部26は、汎用的な画面フローを対応アクションとして選択する(S36)。切り分け条件のポリシーに合致した場合(S32のY)、対応アクション判定部26は、合致した切り分け条件のうち優先順位が最も高いものを、対応アクションとして判定し、そのアクション区分が「4(画面フロー)」であった場合は、フローIDを取得して対応アクション制御部28に通知する(S34)。
【0076】
このように、受信したメッセージの切り分け条件を設定しておくことにより、メッセージに応じて適切な画面フローを自動的に判定することができるので、オペレータの工数を激減させることができる。また、オペレータの判定ミスを防止することができる。
【0077】
図26は、対応アクション制御の手順を示すフローチャートである。対応アクション制御部28は、対応アクション判定部26からフローIDを通知されると、フロー管理テーブル48を参照して、最初に実行すべき画面部品のノードIDを取得する(S40)。つづいて、対応アクション制御部28は、フロー構成部品テーブル50を参照して、取得したノードIDに該当する画面部品の部品IDを取得する(S42)。さらに、対応アクション制御部28は、プロパティテーブル44を参照して、取得した部品IDの画面部品を構成する要素を読み出し、画面を構成して提示する(S44)。
【0078】
オペレータが、画面に提示された作業を実行し、その結果を入力して画面遷移を要求すると(S46のY)、対応アクション制御部28は、接続子テーブル46を参照して、入力された結果に対応する接続子IDを取得する(S48)。つづいて、対応アクション制御部28は、遷移テーブル52を参照して、取得した接続子IDに該当する遷移先の画面部品のノードIDを取得する(S50)。このとき、ノードIDが指定されておらず、対応アクションを終了する旨のデータが格納されていた場合は(S52のY)、対応アクションを終了して、作業の内容と結果を障害管理データベース36に記録する。ノードIDが取得された場合は(S52のN)、S42に戻り、次の画面部品の部品IDを取得して画面部品を実行し、画面を提示する。
【0079】
ここで、図2に示した作業フローを提示する画面フローが、図8から図17に示した構成により実現される過程を更に説明する。図27は、図2に示した作業フローを提示するための画面フローを示す。まず、メッセージ受信部22が、「A社」の顧客システムの監視対象装置「NODEA01」から、プロセス「PROC01」の異常を示すメッセージを受信したとする。このとき、メッセージ解析部24が、メッセージに含まれる装置ID「NODEA01」をキーにして、図9の顧客システムデータベース32を検索し、このメッセージの発信元の顧客システムのシステムIDが「SYSA」であることを特定する。つづいて、メッセージ解析部24は、図11の切り分け条件テーブル40を検索して、このメッセージが無視条件や自動処理条件に合致するか否かを判定するが、このメッセージは無視条件や自動処理条件に合致しないので、アラート通知部30によりアラートが発せられる。
【0080】
オペレータがアラートに気づいて対応作業を開始すると、対応アクション判定部26は、図11の切り分け条件テーブル40を検索して、このメッセージが切り分けID「101」の切り分け条件に合致することを特定し、起動すべき画面フローのフローID「PROC01_RECOV_01」を対応アクション制御部28へ通知する。対応アクション制御部28は、図15のフロー管理テーブル48を参照して、システムIDが「SYSA」でフローIDが「PROC01_RECOV_01」の画面フローにおいて、最初に実行すべき画面部品のノードID「00001」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、フローID「PROC01_RECOV_01」を構成する画面部品のうち、ノードIDが「00001」である画面部品の部品ID「PROC01_EXEC_CHECK」を取得する。対応アクション制御部28は、部品ID「PROC01_EXEC_CHECK」の画面部品を実行するために、図13のプロパティテーブル44から、部品IDが「PROC01_EXEC_CHECK」であるレコードを全て読み出し、それらの構成要素により画面を構成して提示する。こうして、図3の画面D1がオペレータに提示される。
【0081】
オペレータが、画面D1に提示された指示を実行し、「自動復旧している」のラジオボタンを選択して「次へ」ボタンをクリックすると、対応アクション制御部28は、「自動復旧している」のラジオボタンに割り当てられた接続子ID「1」を取得する。対応アクション制御部28は、図17の遷移テーブル52を参照して、ノードIDが「00001」である画面部品において、接続子ID「1」の接続子に対応づけられた遷移先ノードID「00005」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、ノードIDが「00005」である画面部品の部品ID「PROC01_REPORT」を取得する。対応アクション制御部28は、部品ID「PROC01_REPORT」の画面部品を実行するために、図13のプロパティテーブル44から、画面の構成要素を読み出して画面を構成する。こうして、自動復旧していた場合の画面として、図7の画面D5がオペレータに提示される。
【0082】
オペレータが、画面D1に提示された指示を実行し、「停止したまま」のラジオボタンを選択して「次へ」ボタンをクリックすると、対応アクション制御部28は、「停止したまま」のラジオボタンに割り当てられた接続子ID「2」を取得する。対応アクション制御部28は、図17の遷移テーブル52を参照して、ノードIDが「00001」である画面部品において、接続子ID「2」の接続子に対応づけられた遷移先ノードID「00002」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、ノードIDが「00002」である画面部品の部品ID「PROC01_RECOVERY_SEARCH」を取得する。対応アクション制御部28は、部品ID「PROC01_RECOVERY_SEARCH」の画面部品を実行するために、図13のプロパティテーブル44から、画面の構成要素を読み出して画面を構成する。こうして、プロセスが停止したままであった場合の画面として、図4の画面D2がオペレータに提示される。以降、同様にして、図27に示した画面フローの画面部品が順次実行され、図3から図7に示した画面のいずれかが提示される。
【0083】
このように、複数の画面部品を適宜組み合わせ、作業の結果に応じて次に実行すべき画面部品を指定可能であるので、画面フローの設計が容易となり、設計の工数を削減することができる。また、柔軟な画面の流れを定義することが可能となり、より適切な作業の流れを表現することができる。また、個々の画面部品についても、用意された構成要素を配置して画面を設計することができるので、画面の設計が容易となり、工数を削減することができる。
【0084】
つづいて、画面フローを生成、編集する機能について説明する。上述したように、画面フローは、複数の画面部品を含んでおり、それらの画面部品の間で遷移関係と遷移条件を定義することにより、一連の作業フローを提示するための画面フローが実現される。
【0085】
図28は、フロー編集ユニットの構成を示す。フロー編集ユニット70は、フロー編集装置の一例であり、画面フローを編集するためのグラフィカルユーザインタフェイス(Graphical User Interface:GUI)を提供する。フロー編集ユニット70は、画面のフローを有向グラフの形式で視覚化して編集画面に表示し、マウスなどのポインティングデバイスによるユーザの編集操作を受け付け、画面フローを構成する画面部品の構成、遷移関係などを編集する。フロー編集ユニット70は、図8に示した監視装置20の内部に設けられてもよいし、監視装置20のメンテナンス用のアプリケーションとして、監視装置20の機能を実現するアプリケーションとは別個に設けられてもよい。
【0086】
フロー編集ユニット70は、画面フローの名称、画面フローを使用するシステムのID、分類、備考などの基本情報を受け付け、フロー管理テーブル48に格納する。フロー編集ユニット70は、編集画面表示部71、部品検索部72、部品編集部74、部品組込部76、遷移先設定部78を含む。まず、図29から図31を参照して編集の手順を説明した後、個々の構成の機能を整理することにする。
【0087】
図29は、フロー編集ユニット70が提示する画面フローの編集画面の例を示す。図29は、画面フローを新規に作成するときに提示される編集画面90を示す。編集される画面フローには、まだ画面部品が組み込まれていないので、有向グラフは表示されていない。画面左側のボタン91をクリックすると、画面部品の検索画面が表示される。「MyDock」画面99には、よく使用する画面部品を登録できるようになっており、登録された画面部品の一覧が表示される。編集画面の左上には、表示の縮尺を変更するためのスライドバーが設けられており、自由に縮尺を変更して編集画面に表示させることができる。また、巨大なフローの一部が編集画面に表示されている場合に、フロー全体における現在表示中の位置が提示される。
【0088】
図30は、部品検索部72が提示する画面部品の検索画面の例を示す。ユーザが検索画面92において検索条件を入力して検索を要求すると、部品検索部72は、部品管理テーブル42を参照して、検索条件に合致する画面部品をリストにして検索結果画面93に表示する。このリストの中から、又は、「MyDock」画面99に登録された画面部品の中から、ユーザが画面フローに組み込みたい画面部品を編集画面90にドラッグアンドドロップすると、部品組込部76がこの編集操作を受け付け、その画面部品を編集中の画面フローに組み込む。編集画面表示部71は、組み込まれた画面部品のノードと、その画面部品に定義された接続子の数のエッジを編集画面90に表示する。図30の編集画面90において、画面部品を示すノード94は四角形で示され、四角形の内部には、その画面部品のID及び名称が表示されている。四角形の下部には、画面部品に定義された接続子に対応するエッジが表示されている。エッジの近傍にポインタがロールオーバーしたときに、そのエッジの接続子名称などを表示してもよい。画面フローを構成する画面部品の情報は、フロー構成部品テーブル50に格納される。
【0089】
図31は、画面の遷移関係が設定される様子を示す。編集画面90において、ユーザがポインティングデバイスなどを用いて、ノード95に対応する画面部品から出ている2本のエッジのうち、接続子ID「1」に対応するエッジ97の矢印の終点をドラッグし、画面部品を示すノード96にドロップすると、矢印の始点のノード95に対応する画面部品に定義された接続子ID「1」の接続子の遷移先として、ノード96に対応する画面部品が設定される。この情報は、遷移テーブル52に格納される。また、画面フローの最初に実行される画面部品の情報はフロー管理テーブル48に格納される。
【0090】
図28に戻り、各構成の動作及び機能を整理する。編集画面表示部71は、画面フローを構成する画面部品をノードとする有向グラフを生成して編集画面に表示し、ユーザから画面フローに対する編集操作を受け付ける。編集画面表示部71は、画面部品に対応するノードを四角形や円などの図形を用いて表示し、画面の遷移関係を示すエッジを矢印などの図形を用いて表示してもよい。編集画面表示部71は、画面部品に対応するノードを示す図形の内部に、その画面部品のID又は名称などを表示してもよい。編集画面表示部71は、画面の遷移関係を示すエッジの近傍に、そのエッジに対応する遷移条件、接続子の名称、又は接続子IDなどを表示してもよい。編集画面表示部71は、エッジの近傍にポインタがロールオーバーしたときに、そのエッジの接続子名称などを表示してもよい。
【0091】
部品検索部72は、ユーザから画面部品の検索条件を受け付けるための画面を提示し、ユーザから検索条件を受け付けると、アクション定義データベース34の部品管理テーブル42に登録されている画面部品の中から、ユーザが指定した検索条件に合致する画面部品を検索して提示する。部品編集部74は、画面部品の基本情報や構成要素を編集するためのユーザインタフェイスを提示し、ユーザから編集操作を受け付ける。部品編集部74は、画面部品の基本情報が編集されると、アクション定義データベース34の部品管理テーブル42の該当項目を変更する。部品編集部74は、画面部品の構成要素が編集されると、アクション定義データベース34のプロパティテーブル44の該当項目を変更する。部品編集部74は、画面部品の遷移条件や接続子の数などが編集されると、アクション定義データベース34の接続子テーブル46の該当項目を変更する。
【0092】
部品組込部76は、ユーザから画面フローに組み込む画面部品の指定を受け付け、指定された画面部品を示すノードを、編集画面に表示された画面フローの有向グラフに追加するよう編集画面表示部71に指示する。部品組込部76は、部品検索部72が提示した検索結果画面に提示された画面部品を、画面フローの有向グラフを表示した画面フローの編集画面にドラッグアンドドロップする操作により、画面部品を画面フローに組み込む指示を受け付けてもよい。部品組込部76は、画面部品のID、名前などを直接受け付けて、画面フローに組み込む画面部品を特定してもよい。部品組込部76は、画面フローに組み込む画面部品の指定を受け付けると、その画面部品に対してノードIDを割り当て、フロー構成部品テーブル50に登録する。
【0093】
編集画面表示部71は、部品組込部76から、画面部品を画面フローに組み込む指示を受け付けると、その画面部品に対応するノードを有向グラフに追加する。このとき、編集画面表示部71は、部品組込部76から画面部品を特定する情報を取得し、その画面部品のID又は名称を部品管理テーブル42から読み出して、ノードを示す図形の内部に表示してもよい。また、その画面部品に定義された接続子の数を接続子テーブル46から読み出して、その数のエッジをノードとともに表示してもよい。また、それぞれの接続子に対応する遷移条件、接続子の名称、又は接続子IDを接続子テーブル46から読み出して、エッジの近傍に表示してもよい。
【0094】
遷移先設定部78は、画面フローを構成する画面部品をノードとする有向グラフが表示された編集画面において、ノード間をエッジで結ぶ編集操作を受け付けると、エッジで結ばれたノードに対応する画面部品間における遷移関係を設定する。遷移先設定部78は、あるノードから出ているエッジの終点を他のノードに結ぶ編集操作を受け付けると、そのエッジの始点のノードに対応する画面部品から、そのエッジの終点に結ばれたノードに対応する画面部品への遷移を、遷移テーブル52に設定するようにしてもよい。このとき、そのエッジに対応づけられた接続子ID又は遷移条件に合致したときの遷移先として、エッジの終点に結ばれたノードに対応する画面部品を設定してもよい。
【0095】
フロー編集ユニット70は、画面フローの編集終了時に又は編集中にユーザから設定情報の保存を要求されると、フロー管理テーブル48、フロー構成部品テーブル50、及び遷移テーブル52に、必要な情報を格納する。
【0096】
このように、画面フローを有向グラフを用いて表示し、有向グラフに対するユーザの編集操作を受け付けて画面フローを編集することが可能なグラフィカルユーザインタフェイスを提供する。これにより、ユーザは視覚的に分かりやすい方法で容易に画面フローを生成、編集することができる。監視装置20を新規導入する際に、標準的な障害対応作業を提示する画面フローが予め登録されていてもよい。監視装置20の管理者は、画面フロー編集機能を用いて、顧客システムに応じた作業の内容に合うように画面フローをカスタマイズすればよい。これにより、監視システムの品質及び信頼性を向上させることができる。
【0097】
監視装置20において、対応アクション制御部28が画面フローをオペレータに提示するときに、フロー編集ユニット70により生成された有向グラフを提示し、その画面フローのうち現在提示されている画面を、他の画面と識別可能に提示してもよい。例えば、現在表示されている画面に対応するノードを示す図形の表示色を他のノードの図形とは異なる色に変更するなどして強調表示してもよい。また、画面フローにおいて、現在の画面に至るまでに提示された画面の経路を強調表示してもよい。
【0098】
図32は、監視装置20が画面フローを提示する画面の例を示す。図32に示した画面D3には、図5に示した画面D3に加えて、画面の左下に、実行中の画面フローの全容を示す有向グラフD0が表示されており、その中で、既に表示された画面を示すノードとエッジが太い線で表示されており、現在表示されている画面を示すノードは斜線を付して表示されている。これにより、オペレータは、画面フローの全容と現在の進行状況を容易に把握することができる。画面フローの全容を示す有向グラフD0は、画面D3とは別のウインドウに表示されてもよい。
【0099】
対応アクション制御部28は、フロー構成部品テーブル50及び遷移テーブル52を参照して、画面フローの全容を示す有向グラフD0を新たに生成して提示してもよいし、フロー編集ユニット70により画面フローが編集されたときの編集画面に提示されていた有向グラフを保持しておき、画面フローを提示するときに合わせて提示してもよい。後者の場合、フロー編集ユニット70は、画面フローを生成、編集したときに、フロー管理テーブル48及びフロー構成部品テーブル50に、有向グラフにおける各画面部品のノードの位置を示す座標をさらに格納しておいてもよい。対応アクション制御部28は、この座標をフロー管理テーブル48及びフロー構成部品テーブル50から読み出して、画面フローの有向グラフD0を表示すればよい。
【0100】
なお、例えば、専門家などに指示を仰いだ後に実行する作業などは、事前に予測することができないので、障害対応作業の終了までの画面フローを定義できない場合もある。また、さまざまな作業の選択肢を考慮した画面フローを用意するとすれば、画面フローが肥大化し、画面を部品化したメリットが薄れてしまう。このような場合を考慮して、指示された内容に応じて別の画面フローへ移行するためのインタフェイスを備えた画面部品を用意しておいてもよい。この画面部品を「対応クラウド部品」と呼ぶ。図7に示した障害報告画面D5において、「確認」という項に設けられた多数のラジオボタンは、別の画面フローを起動するためのインタフェイスに当たる。オペレータが、例えば電話連絡した相手から「手順書実行」を指示されると、「手順実行」のラジオボタンを選択して次画面へ遷移する。対応アクション制御部28は、「手順書実行」の接続子に対応づけられた画面フローを起動し、画面を提示する。遷移した後の画面フローにおいても、オペレータが行った作業の内容は障害管理データベース36に記録されるので、作業の終了までを定義していないような画面フローを実行する場合であっても、実際に行った作業の内容は自動的に記録される。この履歴を後から参照して、適切な画面フローを設計することもできる。
【0101】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0102】
実施の形態では、主としてオペレータの障害対応作業を支援することを目的とした画面フローについて説明したが、専門家などが障害対応作業を行う場合であっても、実施の形態で説明した技術を利用可能である。このように、オペレータ、技術者の別を問わず、実施の形態の技術を広く利用可能とすることで、作業の属人化を防ぐことができる。例えば、主担当ではない他のオペレータが作業する場合や、経験の浅い担当者が作業する場合に、作業が属人化していると対応できないことになってしまう。実施の形態で説明した技術を利用することにより、主担当ではない人が適切に対応することが可能となる。
【図面の簡単な説明】
【0103】
【図1】実施の形態に係る監視システムの構成を示す図である。
【図2】プロセスの異常を示すメッセージを受信したときに、オペレータが実行すべき作業のフローを示す図である。
【図3】図2に示した作業フローのうち、サービス確認作業の手順を提示するための画面を示す図である。
【図4】図2に示した作業フローのうち、復旧手順書検索作業の手順を提示するための画面を示す図である。
【図5】図2に示した作業フローのうち、手順書実行作業の手順を提示するための画面を示す図である。
【図6】図2に示した作業フローのうち、過去障害検索作業の手順を提示するための画面を示す図である。
【図7】図2に示した作業フローのうち、報告作業の手順を提示するための画面を示す図である。
【図8】監視装置の内部構成を示す図である。
【図9】顧客システムデータベースの内部データの例を示す図である。
【図10】アクション定義データベースのテーブル構成の例を示す図である。
【図11】切り分け条件テーブルの内部データの例を示す図である。
【図12】部品管理テーブルの内部データの例を示す図である。
【図13】プロパティテーブルの内部データの例を示す図である。
【図14】接続子テーブルの内部データの例を示す図である。
【図15】フロー管理テーブルの内部データの例を示す図である。
【図16】フロー構成部品テーブルの内部データの例を示す図である。
【図17】遷移テーブルの内部データの例を示す図である。
【図18】連絡先データベースのテーブル構成の例を示す図である。
【図19】メールテンプレートテーブルの内部データの例を示す図である。
【図20】連絡先管理テーブルの内部データの例を示す図である。
【図21】連絡先ブロックテーブルの内部データの例を示す図である。
【図22】電話連絡先順位テーブルの内部データの例を示す図である。
【図23】メール宛先テーブルの内部データの例を示す図である。
【図24】メッセージを受信してから解析するまでの手順を示すフローチャートである。
【図25】対応アクション判定の手順を示すフローチャートである。
【図26】対応アクション制御の手順を示すフローチャートである。
【図27】図2に示した作業フローを提示する画面フローを示す図である。
【図28】フロー編集ユニットの構成を示す図である。
【図29】フロー編集ユニットが提示する画面フローの編集画面の例を示す図である。
【図30】部品検索部が提示する画面部品の検索画面の例を示す図である。
【図31】画面の遷移関係が設定される様子を示す図である。
【図32】監視装置が画面フローを提示する画面の例を示す図である。
【符号の説明】
【0104】
10 監視対象システム、20 監視装置、22 メッセージ受信部、24 メッセージ解析部、26 対応アクション判定部、28 対応アクション制御部、30 アラート通知部、32 顧客システムデータベース、34 アクション定義データベース、36 障害管理データベース、38 連絡先データベース、40 切り分け条件テーブル、41 部品データテーブル、42 部品管理テーブル、44 プロパティテーブル、46 接続子テーブル、47 フローデータテーブル、48 フロー管理テーブル、50 フロー構成部品テーブル、52 遷移テーブル、54 メールテンプレートテーブル、56 連絡先管理テーブル、58 連絡先ブロックテーブル、60 電話連絡先順位テーブル、62 メール宛先テーブル、70 フロー編集ユニット、71 編集画面表示部、72 部品検索部、74 部品編集部、76 部品組込部、78 遷移先設定部。
【技術分野】
【0001】
本発明は、監視技術に関し、特に、ネットワークを介してコンピュータなどの装置を監視する監視装置及び監視方法に関する。
【背景技術】
【0002】
近年、コンピュータのソフトウェアの多様化及びハードウェアの性能向上に伴い、システムの運用要件が複雑化してきている。このため、コンピュータシステムの運用監視を行う監視装置は、各ソフトウェア及びハードウェアからより多くの情報、例えば情報メッセージ及び障害メッセージなどを取得しなければならなくなっている。そのため、これらのメッセージを統括的に取り扱うために、ソフトウェア及びハードウェアごとに個別に運用される管理ツールを統合的に監視するツール(統合監視システム)が提案されている(例えば、非特許文献1参照)。
【0003】
監視するシステム内で障害が発生すると、各ソフトウェアやハードウェアのコンポーネントの監視ツールがメッセージを発信する。監視ツールが発信したメッセージは、オペレータの端末に提示される。オペレータは、受信したメッセージの内容を見て、被監視装置や被監視プロセスの状態確認、再起動、復旧コマンドの実行、技術者などの専門家への連絡など、必要な障害対応の作業を実行する。
【非特許文献1】http://www-6.ibm.com/jp/software/tivoli/products/systems_mgr.html
【発明の開示】
【発明が解決しようとする課題】
【0004】
障害が発生したときに、迅速な復旧を行うためには、オペレータが適切な障害対応を迅速かつ能動的に実行する必要がある。しかし、従来の監視システムでは、オペレータは、メッセージの内容が提示されると、障害対応の手順が記載されたマニュアルを手でめくって、なすべき対応の内容を調べる必要があったので、まず適切な対応策を見つけ出すまでに時間がかかっていた。また、オペレータのスキルによっては、適切な対応策を見つけ出せずに、専門家へ連絡して指示を待つことになる場合もあった。また、対応作業が複雑で高度な場合には、オペレータに作業を任すことができず、専門家が作業せざるを得ない場合があった。
【0005】
本発明はこうした状況に鑑みてなされたものであり、その目的は、障害発生に対処する際の効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【0006】
本発明のある態様は、監視装置に関する。この監視装置は、ネットワークを介して監視対象に関するメッセージを受信する受信部と、前記受信部が受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのデータを格納する画面フロー格納部と、前記画面フロー格納部に格納された前記画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件を格納した条件格納部と、前記条件格納部に格納された条件を参照して、提示すべき画面フローを判定する判定部と、前記判定部により判定された前記画面フローのデータを前記画面フロー格納部から読み出して提示する制御部と、を備えることを特徴とする。
【0007】
監視対象は、例えば、サーバ装置、パーソナルコンピュータなどの端末装置、それらの装置で動作するプロセス、ネットワークに設けられた各種の通信装置などであってもよい。受信したメッセージに対応して実行すべき作業を適切に判定してオペレータに提示することにより、障害への対処の効率を向上させることができる。また、障害対応の作業の特定を容易にし、監視業務の信頼性を向上させることができる。
【0008】
前記制御部は、前記画面により提示した作業の結果の入力を受け付け、その結果に基づいて、次に提示すべき画面を判定してもよい。画面に提示された作業をオペレータが実行し、実行した結果を入力すると、その結果に基づいて次にすべき作業の内容が判定されて提示されるので、オペレータを正しい作業に誘導することができる。これにより、オペレータのスキルによらず、適切な対応を講じさせることができる。また、オペレータが作業の内容を調べる手間を省き、工数を削減させることができる。さらに、複雑な作業であっても、オペレータに作業を移管することができる。
【0009】
前記画面フロー格納部は、前記作業の結果と次に提示すべき画面とを対応づけて格納した遷移テーブルを格納してもよく、前記制御部は、前記遷移テーブルを参照して次に提示すべき画面を判定してもよい。画面フローを設計する際に、既に作成した画面を部品として適宜組み合わせ、次に提示すべき画面への遷移を指定すればよいので、画面フローの設計が容易となり、工数を削減することができる。また、柔軟な画面の流れを定義することが可能となり、より適切に作業の流れを表現することができる。
【0010】
前記画面フロー格納部は、前記画面を構成する要素の情報を格納したプロパティテーブルを格納してもよく、前記制御部は、前記プロパティテーブルを参照して前記画面を構成する要素の情報を取得し、前記画面を構成して提示してもよい。個々の画面を設計する際に、例えばHTMLなどでページを一から作成するのではなく、既に作成された構成要素を配置して画面を設計することができるので、画面の設計が容易となり、工数を削減することができる。
【0011】
前記制御部は、前記画面フローを提示するときに、その画面フローを構成する画面をノードとする有向グラフを提示してもよい。このとき、前記制御部は、前記画面フローのうち現在提示されている画面及び既に提示された画面が識別可能な形式で前記有向グラフを提示してもよい。これにより、オペレータは、画面フローの全容と現在の進行状況を容易に把握することができる
【0012】
本発明の別の態様は、監視方法に関する。この監視方法は、ネットワークを介して監視対象に関するメッセージを受信するステップと、受信した前記メッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件が格納されたメモリから、前記条件を読み出して、受信したメッセージと前記条件から、提示すべき画面フローを判定するステップと、判定された画面フローを、前記画面フローのデータを格納したメモリから読み出して提示するステップと、を含むことを特徴とする。
【0013】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0014】
本発明によれば、監視対象に障害が発生したときに効率良く対処する技術を提供することができる。
【発明を実施するための最良の形態】
【0015】
図1は、実施の形態に係る監視システムの構成を示す。監視装置20は、監視対象となる端末装置14aやサーバ装置14bなど(以下、「監視対象装置14」という)が設けられたネットワークシステム12a、12b、・・・、を含む監視対象システム10を統合的に監視する。ネットワークシステム12a、12b、・・・、には、監視対象装置14の異常を検知してメッセージを発信する監視プログラム等がインストールされた管理装置16a、16b、・・・、がそれぞれ設けられており、そのプログラムに設定された条件に合致する状態が発生すると、管理装置16から監視装置20にメッセージが送信される。管理装置16にインストールされた監視プログラムが監視対象装置14を監視してもよいし、監視対象装置14に自身の状態を監視するためのエージェントなどをインストールしておいてもよい。監視装置20は、監視対象システム10から発信されたメッセージを取得し、取得したメッセージを記録するとともに、オペレータにメッセージを提示し、障害の発生を通知する。オペレータは、提示されたメッセージの内容を見て、障害に対してなすべき対応の内容を判断する。
【0016】
従来の監視システムでは、オペレータは、メッセージの内容が提示されると、障害対応の手順が記載された分厚いマニュアルを手でめくって、なすべき対応の内容を調べる必要があり、時には、適切な対応策を見つけ出せない場合もあった。しかし、障害対応にはパターン化できるものもあり、予め決まった対応作業のフローを用意しておくことにより、オペレータのスキルによらず、適切な対応をとることができるようになる。本実施の形態では、オペレータの作業を半自動化し、実行すべき対応のフローをオペレータに提示しつつ、オペレータの作業を的確に誘導することにより、オペレータによる障害対応作業を効率的に支援する技術を提案する。
【0017】
具体的には、実行すべき作業の内容を判定するための切り分け条件と、その切り分け条件に合致したときに実行すべき作業の流れを提示するための画面フローを予め設定しておき、受信したメッセージに応じて、実行すべき作業のフローを、画面フローとしてオペレータに提示する。この画面フローは、オペレータの作業の内容を提示するための、カスタマイズ可能な画面の組合せにより構成される。画面フローにおいては、オペレータの作業の結果などに基づいて、次に提示すべき画面への遷移が定義される。本実施の形態の監視装置20は、監視対象装置などから発信されたメッセージを受信すると、切り分け条件にしたがって適切な画面フローを起動する。起動された画面フローは、オペレータの作業の進行に伴って、次に実行すべき作業を示す画面を順次提示し、オペレータの作業を支援する。
【0018】
まず、画面フローの例を示す。図2は、プロセスの異常を示すメッセージを受信したときに、オペレータが実行すべき作業のフローを示す。プロセスの異常を示すメッセージを受信すると、オペレータは、サービスの状態を確認する(S110)。サービスが既に復旧していれば(S112のY)、その旨を顧客へ報告する(S126)。サービスが復旧していなければ(S112のN)、つづいて、サービス復旧のための手順書を検索する(S114)。手順書があれば(S116のY)、その手順書に記述された復旧手順を実行する(S118)。復旧に成功しても(S120のY)、失敗しても(S120のN)、適切な連絡先へ報告する(S126)。また、手順書が無ければ(S116のN)、過去に同様の障害が発生したときの対応履歴を検索する(S122)。過去の対応実績があっても(S124のY)、無くても(S124のN)、適切な連絡先へ報告する(S126)。
【0019】
監視装置20は、このようなオペレータの作業を支援するために、作業の内容を示す画面を提示する。まず、プロセス異常の障害対応をオペレータが開始すると、最初の作業であるサービス状態の確認(S110)の実行を促すための画面D1を提示する。オペレータが、画面D1に提示された指示にしたがってサービス確認作業を実行し、実行結果を入力して次画面へ遷移するためのボタンをクリックすると、サービスが復旧していた場合は、その旨を顧客へ報告する作業(S126)を提示する画面D5へ遷移する。サービスが復旧していなかった場合は、サービス復旧のための手順書を検索する作業(S114)を提示する画面D2へ遷移する。このように、個々の作業の指示を提示するための画面を組み合わせた画面フローを用意しておき、オペレータによる実行結果に応じて次に実行すべき作業の指示を画面に提示して、オペレータの作業を支援する。
【0020】
図3は、図2に示した作業フローのうち、サービス確認作業(S110)の手順を提示するための画面D1を示す。画面D1には、障害が発生しているプロセスが自動復旧しているかを確認する作業(S110)の指示が提示されている。画面D1には、サービスの状態を確認するコマンドを実行するためのボタンが用意されており、オペレータがこのボタンを押すと、コマンドの発行指示が監視対象装置14へ通知され、監視対象装置14でコマンドが実行される。コマンドが実行されると、コマンドの実行結果を示す戻り値が監視装置20に通知され、画面D1のコマンド実行結果欄に表示される。コマンド実行結果イメージ欄に戻り値の説明を表示して、オペレータが実行結果を判断するための指標としてもよい。この説明は、予め任意に編集しておくことができる。画面D1には、実行結果を入力するためのラジオボタンが設けられており、オペレータがプロセスの状態を確認して、「自動復旧している」か「停止したまま」のいずれかのラジオボタンを選択し、「次へ」ボタンをクリックすると、実行結果に応じて適切な画面へ遷移する。
【0021】
図4は、図2に示した作業フローのうち、復旧手順書検索作業(S114)の手順を提示するための画面D2を示す。画面D2には、プロセスの復旧手順書の有無を確認する作業(S114)の指示が提示されている。画面D2には、予め画面に登録されていた復旧手順書の候補が提示されてもよい。オペレータは、画面D2に提示された候補の中から適切な手順書を選択してもよいし、「手順書一覧」ボタンをクリックして、手順書の一覧の中から適切な手順書を検索してもよい。オペレータが、プロセスの復旧手順書を発見した場合、「有り」のラジオボタンを選択して「次へ」ボタンをクリックすると、手順書を実行する作業(S118)を提示する画面D3へ遷移する。オペレータが、プロセスの復旧手順書を発見できなかった場合、「無し」のラジオボタンを選択して「次へ」ボタンをクリックすると、過去の障害を検索する作業(S122)を提示する画面D4へ遷移する。
【0022】
図5は、図2に示した作業フローのうち、手順書実行作業(S118)の手順を提示するための画面D3を示す。画面D3には、手順書に記述された手順を実行する作業(S118)の指示が提示されている。オペレータが、手順書に記述された手順を実行し、「正常終了」、「異常終了」、「その他」のいずれかのラジオボタンを選択して「次へ」ボタンをクリックすると、結果に応じて適切な連絡先へ報告する作業(S126)を提示する画面D5へ遷移する。
【0023】
図6は、図2に示した作業フローのうち、過去障害検索作業(S122)の手順を提示するための画面D4を示す。画面D4には、過去の障害対応履歴を検索する作業(S122)の指示が提示されている。オペレータが、過去の障害対応履歴を検索し、「有り」又は「無し」のラジオボタンを選択して「次へ」ボタンをクリックすると、結果に応じて適切な連絡先へ報告する作業(S126)を提示する画面D5へ遷移する。
【0024】
図7は、図2に示した作業フローのうち、報告作業(S126)の手順を提示するための画面D5を示す。画面D5には、障害を報告する指示が提示されている。この障害報告画面D5では、それまでの作業の実行結果に応じて、報告すべき内容がオペレータに提示されている。また、後述するように、連絡すべき相手が優先順位付きで予め登録されており、それまでの実行結果に応じて適切な連絡先が自動的に選択されてオペレータに提示される。また、それまで実行した作業の内容や結果を、対応履歴として表示することもできる。さらに、コマンド実行結果としての戻り値は、この欄から別ウィンドウで表示させるようにすることもできる。オペレータは、画面に提示された連絡先へ電話を発呼し、画面に提示された文章を読み上げればよい。オペレータのスキルに応じて、文章の内容を変えることもできる。
【0025】
これらの画面は、カスタマイズ可能な部品として用意されており、後述するように、顧客システムごとに作業内容が異なる場合には、画面を適宜カスタマイズすることにより、顧客システムごとの作業内容に応じた画面を作成することができる。それぞれの画面は、名称やIDなどの基本データ、構成要素のプロパティデータ、遷移先を定義するための接続子データなどにより定義されており、これらのデータを設定することにより、画面フローの部品として利用可能となる。
【0026】
ディスプレイに画面が順次表示されていくことは、監視装置20から見ると、画面を構成して表示する処理を順次実行していくことに対応する。この意味で、画面フローを提示していくことを、画面フローを「実行」するともいう。また、画面フローのデータを読み出して、画面フローを提示する処理を開始することを、画面フローを「起動」するともいう。個々の画面を構成して表示する処理は、画面フロー全体を実行するための部品ととらえることができる。この意味で、画面を提示することを、画面部品を「実行」するともいう。前述した、画面を定義するための種々のデータは、画面部品の実行に用いられるデータでもある。画面が提示されるとき、「画面部品」のデータが読み出され、「画面」が構成されて、オペレータに提示される。文脈上、監視装置20により実行されるフローの処理単位である「画面部品」という語と、その処理の実行結果として表示される「画面」という語を、とくに区別なく用いることもある。
【0027】
画面の構成要素には、見出し表示領域、連絡先表示領域、特記事項入力用テキストボックス、「次へ」ボタン、「中断」ボタンなどがある。画面を作成、編集する場合は、これらの構成要素を指定すればよい。したがって、画面をカスタマイズする場合に、例えばHTMLにより画面の内容を記述する必要はなく、用意されている構成要素を画面に組み込むことにより、容易に画面を作成、編集することができる。
【0028】
また、画面の構成要素として、ラジオボタンなどの選択入力用のインタフェイスが用意されており、それぞれの選択肢に対応する接続子に対して遷移先の画面が定義される。接続子には、それぞれを一意に識別するための接続子IDが割り当てられている。監視装置20には、画面フローにおける画面の遷移を定義するためのテーブルが用意されており、それぞれの画面の接続子に遷移先の画面を設定することにより、オペレータの作業に合わせた画面フローを構築することができる。
【0029】
このように、実行すべき作業の流れを自動的に判定してオペレータに提示することにより、オペレータは、メッセージが提示される度に分厚いマニュアルを開いて対応を調べる手間から解放される。したがって、オペレータの作業を飛躍的に効率化することができる。また、対応作業が複雑であっても、オペレータに作業の内容を適切に指示する画面を提示することができるので、従来、専門家が行っていた作業をオペレータに移管することができ、専門家の負担も軽減することができる。
【0030】
つづいて、本実施の形態の監視装置20の構成と動作について説明する。
【0031】
図8は、監視装置20の内部構成を示す。監視装置20は、メッセージ受信部22、メッセージ解析部24、対応アクション判定部26、対応アクション制御部28、アラート通知部30、顧客システムデータベース32、アクション定義データベース34、障害管理データベース36、及び連絡先データベース38を含む。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0032】
メッセージ受信部22は、監視対象システム10から発信されたメッセージを受信する。メッセージ解析部24は、顧客システムデータベース32及びアクション定義データベース34を参照して、メッセージ受信部22が受信したメッセージを解析する。メッセージ解析部24は、受信したメッセージが、アクション定義データベース34に格納された無視条件に合致した場合、メッセージをオペレータに提示せずに、無視メッセージとして障害管理データベース36へ格納する。メッセージ解析部24は、受信したメッセージが、自動電話、自動メール、自動コマンドなどの自動処理条件に合致した場合、設定された自動処理を実行するように、自動処理を実行する構成へ指示する。メッセージ解析部24は、受信したメッセージが、無視条件及び自動処理条件に合致しない場合は、メッセージを障害管理データベース36に格納するとともに、アラート通知部30によりメッセージの受信を通知する。
【0033】
アラート通知部30により障害メッセージの受信を通知されたオペレータから、障害メッセージへの対応作業の開始を指示されると、対応アクション判定部26は、アクション定義データベース34を参照して、受信したメッセージに対応して実行すべきアクションの内容を判定する。具体的には、対応アクション判定部26は、アクション定義データベース34に格納された切り分け条件に基づいて、起動すべき画面フローを判定する。対応アクション判定部26は、受信したメッセージがいずれの切り分け条件にも合致しなかった場合、すなわち、対応アクションが設定されていなかった場合、デフォルトとして設定された汎用的な画面フローを起動してもよい。この画面フローは、例えば、障害の発生を技術者などに報告する作業を提示するものであってもよい。
【0034】
対応アクション制御部28は、アクション定義データベース34を参照して、対応アクション判定部26により判定された画面フローを提示する。対応アクション制御部28は、画面フローにより提示した作業の結果の入力を受け付け、その結果に基づいて画面を遷移させるとともに、作業の内容と結果を障害管理データベース36に履歴として記録する。対応アクション制御部28が、提示した画面ごとに作業の内容と結果を自動的に記録するので、オペレータが作業報告を作成しなくても、正確に履歴を残すことができる。顧客などにオペレータの作業報告を提出する場合にも、障害管理データベース36に蓄積された障害情報及び対応履歴情報を抽出、編集することにより、作業報告を一括して作成することができる。これにより、オペレータの工数を削減することができる。アラート通知部30は、パトランプや音声などによりオペレータにアラートを通知する。
【0035】
図9は、顧客システムデータベース32の内部データの例を示す。顧客システムデータベース32には、システムID欄101、顧客名欄102、及び監視対象装置名欄103が設けられている。メッセージ解析部24は、メッセージ受信部22が受信したメッセージ中の監視対象装置名などをもとに、顧客システムデータベース32を参照してメッセージの発信元のシステムIDを特定する。監視装置20が、複数の顧客システムから発信されるメッセージを統合的に管理する場合であっても、メッセージの発信元の顧客システムのシステムIDを的確に特定することができ、顧客システム毎に適切な対応を行うことができる。
【0036】
図10は、アクション定義データベース34のテーブル構成の例を示す。アクション定義データベース34は、メッセージの切り分け条件を格納する切り分け条件テーブル40、画面部品のデータを格納する部品データテーブル41、画面フローのデータを格納するフローデータテーブル47を含む。部品データテーブル41は、監視装置20において利用可能な画面部品の一覧とそれらの管理情報を格納した部品管理テーブル42、それぞれの画面を構成する要素の情報を格納したプロパティテーブル44、それぞれの画面に定義された接続子の情報を格納した接続子テーブル46を含む。フローデータテーブル47は、監視装置20において利用可能な画面フローの一覧とそれらの管理情報を格納したフロー管理テーブル48、それぞれの画面フローを構成する画面部品の情報を格納したフロー構成部品テーブル50、それぞれの画面フローにおける画面の遷移を定義するための情報を格納した遷移テーブル52を含む。切り分け条件テーブル40は、条件格納部の一例であり、フローデータテーブル47は、画面フロー格納部の一例である。
【0037】
アクション定義データベース34は、顧客システム毎に設けられてもよい。例えば、同じ障害が発生した場合であっても、ある顧客は、まずオペレータに復旧作業を実行させることを希望し、別の顧客は、迅速にネットワーク管理者などへ報告させることを希望するなど、障害対応作業の内容が異なる場合がある。このような場合であっても、システム毎にアクション定義データベース34を設け、メッセージを発信した顧客システムを特定してそのシステムのアクション定義データベース34を適用することにより、システム毎に柔軟に適切な障害対応の内容を設定することができる。
【0038】
図11は、切り分け条件テーブル40の内部データの例を示す。切り分け条件テーブル40は、受信したメッセージに対して適切な対応アクションを判定するために、メッセージを切り分けるための条件を格納する。切り分け条件テーブル40には、システムID欄111、切り分けID欄112、切り分け区分欄180、優先順位欄113、切り分け名称欄114、条件(メッセージID)欄115、条件(装置ID)欄116、条件(内容)欄117、アクション区分欄118、フローID欄119、連絡先ブロックID欄181、メールテンプレートID欄182、及びコマンド欄183が設けられている。
【0039】
システムID欄111は、顧客システムのIDを格納する。切り分けID欄112は、切り分け条件を識別するためのIDを格納する。切り分け区分欄180は、切り分け条件の区分を格納する。切り分け条件の区分には、オペレータにメッセージの受信が通知される前にメッセージ解析部24において適用される「0次切り分け」と、オペレータにメッセージの受信が通知されオペレータがメッセージへの対応作業を開始した後に対応アクション判定部26において適用される「1次切り分け」がある。優先順位欄113は、切り分け条件を適用する優先順位を格納する。優先順位は、「0次切り分け」と「1次切り分け」のそれぞれの区分の中で指定される。条件(メッセージID)欄115は、メッセージIDに関する切り分け条件を格納する。条件(装置ID)欄116は、監視対象の装置IDに関する切り分け条件を格納する。条件(内容)欄117は、メッセージの内容に関する切り分け条件を格納する。アクション区分欄118は、切り分け条件に合致したときに実行すべきアクションの区分を格納する。アクション区分には、アラートを通知せずに無視する「無視」、適切な連絡先へ自動的に電話を発信する「自動電話」、適切な連絡先へ自動的にメールを発信する「自動メール」、適切なコマンドを自動的に発行する「自動コマンド」、適切な画面フローを起動する「画面フロー」などがある。
【0040】
フローID欄119は、アクション区分が「画面フロー」である切り分け条件に合致したときに、実行すべき画面フローのIDを格納する。連絡先ブロックID欄181は、アクション区分が「自動電話」又は「自動メール」である切り分け条件に合致したときに、自動的に電話又はメールを発信すべき連絡先のブロックIDを格納する。メールテンプレートID欄182は、アクション区分が「自動メール」である切り分け条件に合致したときに、自動的に発信するメールのテンプレートとして使用されるメールテンプレートのIDを格納する。コマンド欄183は、アクション区分が「自動コマンド」である切り分け条件に合致したときに、自動的に発行されるコマンドを格納する。
【0041】
メッセージ解析部24は、切り分け条件テーブル40の条件(メッセージID)欄115、条件(装置ID)欄116、及び条件(内容)欄117を参照して、受信したメッセージが、切り分け区分が「0次切り分け」である無視条件又は自動処理条件に合致するか否かを解析する。合致した切り分け条件のアクション区分が「0(無視)」であった場合は、メッセージ解析部24は、メッセージの受信をアラート通知部30に通知せずに、無視メッセージとして障害管理データベース36へ格納する。合致した切り分け条件のアクション区分が「1(自動電話)」、「2(自動メール)」、「3(自動コマンド)」などの自動処理条件であった場合、メッセージ解析部24は、設定された自動処理を実行するように、自動処理を実行する構成へ指示する。これにより、画面フローを起動するまでもなく、自動的に障害対応処理を実行可能な場合は、オペレータの手を介さずに自動処理を行うことができる。
【0042】
対応アクション判定部26は、切り分け条件テーブル40の条件(メッセージID)欄115、条件(装置ID)欄116、及び条件(内容)欄117を参照して、受信したメッセージが、切り分け区分が「1次切り分け」である切り分け条件に合致するか否かを解析し、合致する切り分け条件のうち優先順位が最も高いものを対応アクションとして判定する。合致した切り分け条件のアクション区分が「4(画面フロー)」であった場合は、対応アクション判定部26は、対応アクション制御部28に、実行すべき画面フローのIDを通知する。対応アクション制御部28は、画面フローIDで特定される画面フローをオペレータに提示する。
【0043】
例えば、図11の例では、システムIDが「SYSA」の顧客システムから、装置IDが「NODEA01」で、かつ、正規表現で「*異常*(PROC01)*」という文字列を含むメッセージを受信したとき、切り分けID「101」の切り分け条件が適用され、画面フローID「PROC01_RECOV_01」の画面フローが起動される。この画面フローは、図2に示した作業フローを提示する画面フローである。こうして、プロセス異常を示すメッセージを受信したときに、図3から図7に示した画面フローがオペレータに提示される。
【0044】
図12は、部品管理テーブル42の内部データの例を示す。部品管理テーブル42は、監視装置20により提示される画面フローで使用される部品の一覧とそれらの基本情報を格納する。部品管理テーブル42には、システムID欄121、部品ID欄122、部品区分欄123、及び部品名称欄124が設けられている。
【0045】
システムID欄121は、画面部品が使用されるシステムのIDを格納する。部品ID欄122は、画面部品を識別するためのIDを格納する。部品名称欄124は、画面部品の名称を格納する。部品区分欄123は、画面部品の区分を格納する。画面部品の区分には、例えば、「コマンド実行部品」、「メール送信部品」、「手順書実行部品」、「障害報告部品」、「汎用部品」、「連絡確認部品」などがある。一例として、システムID「SYSA」の顧客システムで用いられる部品ID「PROC01_EXEC_CHECK」の画面部品は、部品区分が「コマンド実行」であり、部品名称が「PROC01サービス稼働状況確認」である。この画面部品は、図3に示した画面D1を提示するための画面部品である。
【0046】
「コマンド実行部品」は、コマンドを実行するための画面部品である。コマンド実行部品により実行されるコマンドには、「ping」など、監視装置20自身が実行可能なコマンドと、プロセスの再起動やCPU稼働率の調査など、管理装置16又は監視対象装置14が実行主体となるコマンドがある。「メール送信部品」は、障害報告や復旧報告などを電子メールで送信する場合に、メール送信を支援するための画面部品である。「手順書実行部品」は、電子化された手順書の中から、適切な個所を検索して表示させるための画面部品である。「障害報告部品」は、障害の発生などを適切な相手に報告する作業を支援するための画面部品である。「汎用部品」は、汎用的なスクリプト表示、値入力、選択肢の選択、分岐処理、手順書選択などを行うための画面部品である。「連絡確認部品」は、障害の発生などをベンダなどの連絡先に連絡し、状況を確認するための画面部品である。
【0047】
後述するフロー編集機能を用いて、新たな画面部品が生成されると、その画面部品の情報が部品管理テーブル42に登録され、以降、画面フローを構成する画面部品として利用することが可能となる。
【0048】
図13は、プロパティテーブル44の内部データの例を示す。プロパティテーブル44は、画面を構成する要素のプロパティを格納する。プロパティテーブル44には、部品ID欄131、キー欄132、及び設定値欄133が設けられている。
【0049】
部品ID欄131は、画面部品のIDを格納する。キー欄132は、画面を構成する要素の種別を示すキー情報を格納する。設定値欄133は、キー欄132に格納された要素の種別に応じて、必要な設定値を格納する。例えば、キー情報が「navi_title」のレコードの設定値には、画面部品のタイトルである「インフォメーション確認(プロセス)」が格納されている。対応アクション制御部28は、実行する画面部品の部品IDをもとに、プロパティテーブル44を検索し、その画面部品により提示される画面を構成する要素の情報を読み出して、画面を構成する。
【0050】
図13には、一例として、部品ID「PROC01_EXEC_CHECK」の画面部品により提示される画面、すなわち、図3に示した画面D1の構成要素の一部を示している。対応アクション制御部28は、これらの情報を読み出して、構成要素を画面に配置し、画面D1を構成する。
【0051】
図13に示した画面の構成要素のうち、キー「sel_exp_1」及び「sel_exp_2」は、実行結果を入力するためのラジオボタンであり、「sel_exp_1」の末尾の番号「1」は、このラジオボタンの接続子IDが「1」であることを示し、「sel_exp_2」の末尾の番号「2」は、このラジオボタンの接続子IDが「2」であることを示している。図13に示した例では、「自動復旧している」と書かれたラジオボタンには、その接続子を識別する接続子IDとして「1」が割り当てられ、「停止したまま」と書かれたラジオボタンには、接続子ID「2」が割り当てられる。
【0052】
図14は、接続子テーブル46の内部データの例を示す。接続子テーブル46は、ある画面部品から複数の画面部品へ遷移する可能性がある場合に、それぞれの遷移先を設定するために、画面部品の接続子の情報を格納する。接続子テーブル46には、部品ID欄141及び接続子ID欄142が設けられている。
【0053】
部品ID欄141は、画面部品のIDを格納する。接続子ID欄142は、画面部品の接続子を識別するためのIDを格納する。一例として、部品ID「PROC01_EXEC_CHECK」の画面部品により提示される画面、すなわち、図3に示した画面D1には、接続子ID「1」と「2」の2つの接続子が用意されている。図13のプロパティテーブル44において定義されているように、オペレータが処理を実行した結果として、「自動復旧している」と書かれたラジオボタンを選択して画面遷移を要求すると、対応アクション制御部28は、画面部品「PROC01_EXEC_CHECK」の接続子ID「1」に対応づけられた遷移先に画面を遷移させる。それぞれの接続子IDに対応づけられた遷移先の画面は、図17に示す遷移テーブル52に設定されている。この接続子IDは、後述するフローの編集機能においても、接続子を識別するために使用される。
【0054】
図15は、フロー管理テーブル48の内部データの例を示す。フロー管理テーブル48は、監視装置20により提示される画面フローの一覧とそれらの基本情報を格納する。フロー管理テーブル48には、システムID欄151、フローID欄152、フロー名称欄153、及びノードID欄154が設けられている。
【0055】
システムID欄151は、画面フローが使用されるシステムのIDを格納する。フローID欄152は、画面フローを識別するためのIDを格納する。フロー名称欄153は、画面フローの名称を格納する。ノードID欄154は、画面フローが起動されたときに、最初に実行される画面部品のノードIDを格納する。この画面部品から後の画面フローについては、図17の遷移テーブル52に基づいて決定される。ここで、画面フローに組み込まれた画面部品を「ノード」と呼び、画面フローに組み込まれた個々の画面部品を識別するためのIDを「ノードID」と呼ぶ。
【0056】
対応アクション制御部28は、対応アクション判定部26により起動すべき画面フローが判定されると、その画面フローのIDをもとに、フロー管理テーブル48を参照して、最初に実行すべき画面部品のノードIDを取得する。例えば、図15の例では、システムID「SYSA」の顧客システムにおいて、フローID「PROC01_RECOV_01」の画面フローを起動するとき、最初に実行する画面部品のノードIDは「00001」である。ノードIDと、部品IDとの対応は、図16に示すフロー構成部品テーブル50に格納されている。
【0057】
図16は、フロー構成部品テーブル50の内部データの例を示す。フロー構成部品テーブル50は、それぞれの画面フローを構成する画面部品の一覧と、それらの基本情報を格納する。フロー構成部品テーブル50には、ノードID欄161、フローID欄162、及び部品ID欄163が設けられている。
【0058】
ノードID欄161は、画面フローに配置された画面部品を識別するためのIDを格納する。フローID欄162は、画面フローを識別するためのIDを格納する。部品ID欄163は、画面部品のIDを格納する。対応アクション制御部28は、次に実行すべき画面部品のノードIDを図15のフロー管理テーブル48及び図17の遷移テーブル52を参照して特定すると、ノードIDをもとにフロー構成部品テーブル50を参照して、その画面部品の部品IDを取得する。
【0059】
例えば、図16の例では、フローID「PROC01_RECOV_01」の画面フローには、部品IDが「PROC01_EXEC_CHECK」、「PROC01_RECOVERY_SEARCH」、「PROC01_RECOVERY」、「PROC01_OBS_SEARCH」、「PROC01_REPORT」である5種の画面部品が含まれており、それぞれにノードIDが割り当てられている。このうち、画面部品「PROC01_REPORT」は、5つの異なる接続子の遷移先として設定されているため、5つのノードIDが割り当てられている。同種の画面部品であっても、画面フローにおいて複数のノードに設定されている場合は、それぞれ異なるノードIDが割り当てられる。これらの画面部品の遷移関係は、図17に示す遷移テーブル52に格納されている。
【0060】
図17は、遷移テーブル52の内部データの例を示す。遷移テーブル52は、画面フローにおける画面部品の遷移を定義するための情報を格納する。遷移テーブル52には、ノードID欄171、接続子ID欄172、及び遷移先ノードID欄173が設けられている。
【0061】
ノードID欄171は、遷移元の画面部品のノードIDを格納する。接続子ID欄172は、画面部品の接続子を識別するためのIDを格納する。遷移先ノードID欄173は、接続子IDに対応した遷移先の画面部品のノードIDを格納する。対応アクション制御部28は、オペレータが入力した作業結果を示す接続子IDをもとに、遷移テーブル52を参照して、遷移先ノードIDを取得する。
【0062】
例えば、図17の例では、ノードIDが「00001」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_EXEC_CHECK」の画面部品(画面D1)の遷移先として、2つの画面部品が設定されている。接続子ID「1」、すなわち、「自動復旧している」場合の遷移先は、ノードIDが「00005」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_REPORT」の画面部品(画面D5)が設定されている。接続子ID「2」、すなわち、「停止したまま」の場合の遷移先は、ノードIDが「00002」の画面部品、すなわち、図16を参照すると、部品IDが「PROC01_RECOVERY_SEARCH」の画面部品(画面D2)が設定されている。
【0063】
図18は、連絡先データベース38のテーブル構成の例を示す。連絡先データベース38は、メールテンプレートテーブル54、連絡先管理テーブル56、連絡先ブロックテーブル58、電話連絡先順位テーブル60、及びメール宛先テーブル62を含む。これらの情報は、「メール送信部品」、「障害報告部品」、「汎用部品」、「連絡確認部品」などの画面部品において、連絡先を予め画面部品に設定しておき、オペレータに提示するために用いられる。また、切り分け条件テーブル40において、「自動電話」機能や「自動メール」機能が選択された場合に、自動的に電話やメールを発信するために用いられる。
【0064】
図19は、メールテンプレートテーブル54の内部データの例を示す。メールテンプレートテーブル54は、障害発生の報告や障害回復の報告などに用いる電子メールのテンプレートに関する情報を格納する。メールテンプレートテーブル54には、テンプレートID欄221、テンプレート名欄222、本文欄223が設けられている。テンプレートID欄221は、メールテンプレートを識別するためのIDを格納する。テンプレート名欄222は、メールテンプレートの名称を格納する。本文欄223は、電子メールのテンプレートとして使用される文章の内容を格納する。テンプレートとして使用される文章は、メッセージの内容や作業結果などの可変値を本文内に埋め込むための予約語を含んでもよい。
【0065】
対応アクション制御部28は、画面部品にメールテンプレートが指定されている場合、該当するメールテンプレートの本文をメールテンプレートテーブル54を参照して取得し、その本文の内容を読み出して設定する。
【0066】
図20は、連絡先管理テーブル56の内部データの例を示す。連絡先管理テーブル56は、障害発生や障害回復などを連絡すべき相手の情報を格納する。連絡先管理テーブル56には、連絡先ID欄231、会社名欄232、所属欄233、氏名欄234、メール属性1欄235、メールアドレス1欄236、メール属性2欄237、メールアドレス2欄238、電話属性1欄239、電話番号1欄240、電話属性2欄241、電話番号2欄242、電話属性3欄243、電話番号3欄244が設けられている。連絡先ID欄231は、連絡先を識別するためのIDを格納する。会社名欄232は、連絡先が属する会社の名称を格納する。所属欄233は、連絡先の所属を格納する。氏名欄234は、連絡先の氏名を格納する。メール属性1欄235及びメール属性2欄237は、メールアドレスの種別を格納する。メールアドレス1欄236及びメールアドレス2欄238は、連絡先のメールアドレスを格納する。電話属性1欄239、電話属性2欄241、及び電話属性3欄243は、電話の種別や属性などを示す文字列を格納する。電話番号1欄240、電話番号2欄242、及び電話番号3欄244は、連絡先の電話番号を格納する。
【0067】
対応アクション制御部28は、画面部品に連絡先が指定されている場合、該当する連絡先の電話番号又はメールアドレスを、連絡先管理テーブル56を参照して取得し、画面に提示する。
【0068】
図21は、連絡先ブロックテーブル58の内部データの例を示す。連絡先ブロックテーブル58は、複数の連絡先の集合である連絡先ブロックの一覧とそれらの基本情報を格納する。連絡先ブロックテーブル58には、システムID欄251、連絡先ブロックID欄252、ブロック名称欄253、有効開始日欄254が設けられている。システムID欄251は、システムのIDを格納する。連絡先ブロックID欄252は、連絡先ブロックを識別するためのIDを格納する。ブロック名称欄253は、連絡先ブロックの名称を格納する。有効開始日欄254は、連絡先ブロックを有効とする日を格納する。
【0069】
対応アクション制御部28は、画面部品に連絡先ブロックが指定されている場合、連絡先ブロックテーブル58を参照して有効開始日を確認し、後述する電話連絡先順位テーブル60又はメール宛先テーブル62を参照して、その連絡先ブロックに属する連絡先を取得し、画面に提示する。
【0070】
図22は、電話連絡先順位テーブル60の内部データの例を示す。電話連絡先順位テーブル60は、連絡先ブロックに属する連絡先と、それらの連絡先に電話連絡を行う際の優先順位を格納する。電話連絡先順位テーブル60には、連絡先ブロックID欄261、連絡先ID欄262、電話属性番号欄263、順位(営業日+日中)欄264、順位(営業日+夜間)欄265、順位(休日+日中)欄266、順位(休日+夜間)欄267が設けられている。連絡先ブロックID欄261は、連絡先ブロックのIDを格納する。連絡先ID欄262は、連絡先ブロックに属する連絡先のIDを格納する。電話属性番号欄263は、連絡先の電話番号の種別や属性などを示す文字列を格納する。順位(営業日+日中)欄264、順位(営業日+夜間)欄265、順位(休日+日中)欄266、及び順位(休日+夜間)欄267は、連絡先へ電話をかける際の時間帯別の優先順位を格納する。
【0071】
図23は、メール宛先テーブル62の内部データの例を示す。メール宛先テーブル62は、連絡先ブロックに属するメールの宛先を格納する。メール宛先テーブル62には、連絡先ブロックID欄271、連絡先ID欄272、メール属性番号欄273、宛先区分欄274が設けられている。連絡先ブロックID欄271は、連絡先ブロックのIDを格納する。連絡先ID欄272は、連絡先ブロックに属する連絡先のIDを格納する。メール属性番号欄273は、連絡先のメールアドレスの種別を格納する。宛先区分欄274は、メールアドレスを指定する宛先区分を格納する。
【0072】
このように、連絡先を予め登録し、画面の構成要素として画面部品に設定できるようにしておくことにより、受信したメッセージや作業の内容に応じて適切な連絡先をオペレータに提示することができる。これにより、オペレータが連絡先を調べる手間を省き、工数を削減させることができる。
【0073】
図24は、メッセージを受信してから解析するまでの手順を示すフローチャートである。メッセージ受信部22が監視対象システム10から発信された障害メッセージを受信すると(S10)、メッセージ解析部24は、顧客システムデータベース32を参照して、受信したメッセージがいずれの顧客システムから発信されたものであるかを特定する(S12)。顧客システムが特定されると、その顧客システムに対して設定されたアクション定義データベース34の切り分け条件テーブル40を参照して、受信したメッセージが0次切り分け条件に合致するかマッチングする(S14)。無視条件のポリシーに合致する場合(S16のY)、メッセージ解析部24は、そのメッセージを無視障害として障害管理データベース36に登録し(S20)、そのメッセージに対する処理を終了する。無視条件のポリシーに合致しない場合(S16のN)、メッセージ解析部24は、そのメッセージを障害として障害管理データベース36に登録する(S18)。受信したメッセージが自動処理条件のポリシーに合致する場合(S22のY)、メッセージ解析部24は、自動電話、自動メール、自動コマンドなどの自動処理を実行させる(S24)。自動処理条件にも合致しなかった場合(S22のN)、メッセージ解析部24は、アラート通知部30によりメッセージの受信をオペレータへ通知する(S26)。障害の発生を知ったオペレータが対応作業を開始すると、図25に示す対応アクション判定処理へ移る。
【0074】
このように、まず、顧客システムを特定し、顧客システム毎に設定されたアクション定義データベース34を適用することにより、顧客システムごとに適切にメッセージをフィルタリングすることができる。また、顧客システム毎に対応策が異なる場合であっても、障害が発生した顧客システムに応じた適切な対応策を画面フローとして提示することができる。
【0075】
図25は、対応アクション判定の手順を示すフローチャートである。オペレータにより障害メッセージに対する作業の開始が指示されると、対応アクション判定部26は、アクション定義データベース34の切り分け条件テーブル40を参照して、受信したメッセージが合致する1次切り分け条件を検索する(S30)。切り分け条件のポリシーに合致しない場合(S32のN)、対応アクション判定部26は、汎用的な画面フローを対応アクションとして選択する(S36)。切り分け条件のポリシーに合致した場合(S32のY)、対応アクション判定部26は、合致した切り分け条件のうち優先順位が最も高いものを、対応アクションとして判定し、そのアクション区分が「4(画面フロー)」であった場合は、フローIDを取得して対応アクション制御部28に通知する(S34)。
【0076】
このように、受信したメッセージの切り分け条件を設定しておくことにより、メッセージに応じて適切な画面フローを自動的に判定することができるので、オペレータの工数を激減させることができる。また、オペレータの判定ミスを防止することができる。
【0077】
図26は、対応アクション制御の手順を示すフローチャートである。対応アクション制御部28は、対応アクション判定部26からフローIDを通知されると、フロー管理テーブル48を参照して、最初に実行すべき画面部品のノードIDを取得する(S40)。つづいて、対応アクション制御部28は、フロー構成部品テーブル50を参照して、取得したノードIDに該当する画面部品の部品IDを取得する(S42)。さらに、対応アクション制御部28は、プロパティテーブル44を参照して、取得した部品IDの画面部品を構成する要素を読み出し、画面を構成して提示する(S44)。
【0078】
オペレータが、画面に提示された作業を実行し、その結果を入力して画面遷移を要求すると(S46のY)、対応アクション制御部28は、接続子テーブル46を参照して、入力された結果に対応する接続子IDを取得する(S48)。つづいて、対応アクション制御部28は、遷移テーブル52を参照して、取得した接続子IDに該当する遷移先の画面部品のノードIDを取得する(S50)。このとき、ノードIDが指定されておらず、対応アクションを終了する旨のデータが格納されていた場合は(S52のY)、対応アクションを終了して、作業の内容と結果を障害管理データベース36に記録する。ノードIDが取得された場合は(S52のN)、S42に戻り、次の画面部品の部品IDを取得して画面部品を実行し、画面を提示する。
【0079】
ここで、図2に示した作業フローを提示する画面フローが、図8から図17に示した構成により実現される過程を更に説明する。図27は、図2に示した作業フローを提示するための画面フローを示す。まず、メッセージ受信部22が、「A社」の顧客システムの監視対象装置「NODEA01」から、プロセス「PROC01」の異常を示すメッセージを受信したとする。このとき、メッセージ解析部24が、メッセージに含まれる装置ID「NODEA01」をキーにして、図9の顧客システムデータベース32を検索し、このメッセージの発信元の顧客システムのシステムIDが「SYSA」であることを特定する。つづいて、メッセージ解析部24は、図11の切り分け条件テーブル40を検索して、このメッセージが無視条件や自動処理条件に合致するか否かを判定するが、このメッセージは無視条件や自動処理条件に合致しないので、アラート通知部30によりアラートが発せられる。
【0080】
オペレータがアラートに気づいて対応作業を開始すると、対応アクション判定部26は、図11の切り分け条件テーブル40を検索して、このメッセージが切り分けID「101」の切り分け条件に合致することを特定し、起動すべき画面フローのフローID「PROC01_RECOV_01」を対応アクション制御部28へ通知する。対応アクション制御部28は、図15のフロー管理テーブル48を参照して、システムIDが「SYSA」でフローIDが「PROC01_RECOV_01」の画面フローにおいて、最初に実行すべき画面部品のノードID「00001」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、フローID「PROC01_RECOV_01」を構成する画面部品のうち、ノードIDが「00001」である画面部品の部品ID「PROC01_EXEC_CHECK」を取得する。対応アクション制御部28は、部品ID「PROC01_EXEC_CHECK」の画面部品を実行するために、図13のプロパティテーブル44から、部品IDが「PROC01_EXEC_CHECK」であるレコードを全て読み出し、それらの構成要素により画面を構成して提示する。こうして、図3の画面D1がオペレータに提示される。
【0081】
オペレータが、画面D1に提示された指示を実行し、「自動復旧している」のラジオボタンを選択して「次へ」ボタンをクリックすると、対応アクション制御部28は、「自動復旧している」のラジオボタンに割り当てられた接続子ID「1」を取得する。対応アクション制御部28は、図17の遷移テーブル52を参照して、ノードIDが「00001」である画面部品において、接続子ID「1」の接続子に対応づけられた遷移先ノードID「00005」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、ノードIDが「00005」である画面部品の部品ID「PROC01_REPORT」を取得する。対応アクション制御部28は、部品ID「PROC01_REPORT」の画面部品を実行するために、図13のプロパティテーブル44から、画面の構成要素を読み出して画面を構成する。こうして、自動復旧していた場合の画面として、図7の画面D5がオペレータに提示される。
【0082】
オペレータが、画面D1に提示された指示を実行し、「停止したまま」のラジオボタンを選択して「次へ」ボタンをクリックすると、対応アクション制御部28は、「停止したまま」のラジオボタンに割り当てられた接続子ID「2」を取得する。対応アクション制御部28は、図17の遷移テーブル52を参照して、ノードIDが「00001」である画面部品において、接続子ID「2」の接続子に対応づけられた遷移先ノードID「00002」を取得する。対応アクション制御部28は、さらに、図16のフロー構成部品テーブル50を参照して、ノードIDが「00002」である画面部品の部品ID「PROC01_RECOVERY_SEARCH」を取得する。対応アクション制御部28は、部品ID「PROC01_RECOVERY_SEARCH」の画面部品を実行するために、図13のプロパティテーブル44から、画面の構成要素を読み出して画面を構成する。こうして、プロセスが停止したままであった場合の画面として、図4の画面D2がオペレータに提示される。以降、同様にして、図27に示した画面フローの画面部品が順次実行され、図3から図7に示した画面のいずれかが提示される。
【0083】
このように、複数の画面部品を適宜組み合わせ、作業の結果に応じて次に実行すべき画面部品を指定可能であるので、画面フローの設計が容易となり、設計の工数を削減することができる。また、柔軟な画面の流れを定義することが可能となり、より適切な作業の流れを表現することができる。また、個々の画面部品についても、用意された構成要素を配置して画面を設計することができるので、画面の設計が容易となり、工数を削減することができる。
【0084】
つづいて、画面フローを生成、編集する機能について説明する。上述したように、画面フローは、複数の画面部品を含んでおり、それらの画面部品の間で遷移関係と遷移条件を定義することにより、一連の作業フローを提示するための画面フローが実現される。
【0085】
図28は、フロー編集ユニットの構成を示す。フロー編集ユニット70は、フロー編集装置の一例であり、画面フローを編集するためのグラフィカルユーザインタフェイス(Graphical User Interface:GUI)を提供する。フロー編集ユニット70は、画面のフローを有向グラフの形式で視覚化して編集画面に表示し、マウスなどのポインティングデバイスによるユーザの編集操作を受け付け、画面フローを構成する画面部品の構成、遷移関係などを編集する。フロー編集ユニット70は、図8に示した監視装置20の内部に設けられてもよいし、監視装置20のメンテナンス用のアプリケーションとして、監視装置20の機能を実現するアプリケーションとは別個に設けられてもよい。
【0086】
フロー編集ユニット70は、画面フローの名称、画面フローを使用するシステムのID、分類、備考などの基本情報を受け付け、フロー管理テーブル48に格納する。フロー編集ユニット70は、編集画面表示部71、部品検索部72、部品編集部74、部品組込部76、遷移先設定部78を含む。まず、図29から図31を参照して編集の手順を説明した後、個々の構成の機能を整理することにする。
【0087】
図29は、フロー編集ユニット70が提示する画面フローの編集画面の例を示す。図29は、画面フローを新規に作成するときに提示される編集画面90を示す。編集される画面フローには、まだ画面部品が組み込まれていないので、有向グラフは表示されていない。画面左側のボタン91をクリックすると、画面部品の検索画面が表示される。「MyDock」画面99には、よく使用する画面部品を登録できるようになっており、登録された画面部品の一覧が表示される。編集画面の左上には、表示の縮尺を変更するためのスライドバーが設けられており、自由に縮尺を変更して編集画面に表示させることができる。また、巨大なフローの一部が編集画面に表示されている場合に、フロー全体における現在表示中の位置が提示される。
【0088】
図30は、部品検索部72が提示する画面部品の検索画面の例を示す。ユーザが検索画面92において検索条件を入力して検索を要求すると、部品検索部72は、部品管理テーブル42を参照して、検索条件に合致する画面部品をリストにして検索結果画面93に表示する。このリストの中から、又は、「MyDock」画面99に登録された画面部品の中から、ユーザが画面フローに組み込みたい画面部品を編集画面90にドラッグアンドドロップすると、部品組込部76がこの編集操作を受け付け、その画面部品を編集中の画面フローに組み込む。編集画面表示部71は、組み込まれた画面部品のノードと、その画面部品に定義された接続子の数のエッジを編集画面90に表示する。図30の編集画面90において、画面部品を示すノード94は四角形で示され、四角形の内部には、その画面部品のID及び名称が表示されている。四角形の下部には、画面部品に定義された接続子に対応するエッジが表示されている。エッジの近傍にポインタがロールオーバーしたときに、そのエッジの接続子名称などを表示してもよい。画面フローを構成する画面部品の情報は、フロー構成部品テーブル50に格納される。
【0089】
図31は、画面の遷移関係が設定される様子を示す。編集画面90において、ユーザがポインティングデバイスなどを用いて、ノード95に対応する画面部品から出ている2本のエッジのうち、接続子ID「1」に対応するエッジ97の矢印の終点をドラッグし、画面部品を示すノード96にドロップすると、矢印の始点のノード95に対応する画面部品に定義された接続子ID「1」の接続子の遷移先として、ノード96に対応する画面部品が設定される。この情報は、遷移テーブル52に格納される。また、画面フローの最初に実行される画面部品の情報はフロー管理テーブル48に格納される。
【0090】
図28に戻り、各構成の動作及び機能を整理する。編集画面表示部71は、画面フローを構成する画面部品をノードとする有向グラフを生成して編集画面に表示し、ユーザから画面フローに対する編集操作を受け付ける。編集画面表示部71は、画面部品に対応するノードを四角形や円などの図形を用いて表示し、画面の遷移関係を示すエッジを矢印などの図形を用いて表示してもよい。編集画面表示部71は、画面部品に対応するノードを示す図形の内部に、その画面部品のID又は名称などを表示してもよい。編集画面表示部71は、画面の遷移関係を示すエッジの近傍に、そのエッジに対応する遷移条件、接続子の名称、又は接続子IDなどを表示してもよい。編集画面表示部71は、エッジの近傍にポインタがロールオーバーしたときに、そのエッジの接続子名称などを表示してもよい。
【0091】
部品検索部72は、ユーザから画面部品の検索条件を受け付けるための画面を提示し、ユーザから検索条件を受け付けると、アクション定義データベース34の部品管理テーブル42に登録されている画面部品の中から、ユーザが指定した検索条件に合致する画面部品を検索して提示する。部品編集部74は、画面部品の基本情報や構成要素を編集するためのユーザインタフェイスを提示し、ユーザから編集操作を受け付ける。部品編集部74は、画面部品の基本情報が編集されると、アクション定義データベース34の部品管理テーブル42の該当項目を変更する。部品編集部74は、画面部品の構成要素が編集されると、アクション定義データベース34のプロパティテーブル44の該当項目を変更する。部品編集部74は、画面部品の遷移条件や接続子の数などが編集されると、アクション定義データベース34の接続子テーブル46の該当項目を変更する。
【0092】
部品組込部76は、ユーザから画面フローに組み込む画面部品の指定を受け付け、指定された画面部品を示すノードを、編集画面に表示された画面フローの有向グラフに追加するよう編集画面表示部71に指示する。部品組込部76は、部品検索部72が提示した検索結果画面に提示された画面部品を、画面フローの有向グラフを表示した画面フローの編集画面にドラッグアンドドロップする操作により、画面部品を画面フローに組み込む指示を受け付けてもよい。部品組込部76は、画面部品のID、名前などを直接受け付けて、画面フローに組み込む画面部品を特定してもよい。部品組込部76は、画面フローに組み込む画面部品の指定を受け付けると、その画面部品に対してノードIDを割り当て、フロー構成部品テーブル50に登録する。
【0093】
編集画面表示部71は、部品組込部76から、画面部品を画面フローに組み込む指示を受け付けると、その画面部品に対応するノードを有向グラフに追加する。このとき、編集画面表示部71は、部品組込部76から画面部品を特定する情報を取得し、その画面部品のID又は名称を部品管理テーブル42から読み出して、ノードを示す図形の内部に表示してもよい。また、その画面部品に定義された接続子の数を接続子テーブル46から読み出して、その数のエッジをノードとともに表示してもよい。また、それぞれの接続子に対応する遷移条件、接続子の名称、又は接続子IDを接続子テーブル46から読み出して、エッジの近傍に表示してもよい。
【0094】
遷移先設定部78は、画面フローを構成する画面部品をノードとする有向グラフが表示された編集画面において、ノード間をエッジで結ぶ編集操作を受け付けると、エッジで結ばれたノードに対応する画面部品間における遷移関係を設定する。遷移先設定部78は、あるノードから出ているエッジの終点を他のノードに結ぶ編集操作を受け付けると、そのエッジの始点のノードに対応する画面部品から、そのエッジの終点に結ばれたノードに対応する画面部品への遷移を、遷移テーブル52に設定するようにしてもよい。このとき、そのエッジに対応づけられた接続子ID又は遷移条件に合致したときの遷移先として、エッジの終点に結ばれたノードに対応する画面部品を設定してもよい。
【0095】
フロー編集ユニット70は、画面フローの編集終了時に又は編集中にユーザから設定情報の保存を要求されると、フロー管理テーブル48、フロー構成部品テーブル50、及び遷移テーブル52に、必要な情報を格納する。
【0096】
このように、画面フローを有向グラフを用いて表示し、有向グラフに対するユーザの編集操作を受け付けて画面フローを編集することが可能なグラフィカルユーザインタフェイスを提供する。これにより、ユーザは視覚的に分かりやすい方法で容易に画面フローを生成、編集することができる。監視装置20を新規導入する際に、標準的な障害対応作業を提示する画面フローが予め登録されていてもよい。監視装置20の管理者は、画面フロー編集機能を用いて、顧客システムに応じた作業の内容に合うように画面フローをカスタマイズすればよい。これにより、監視システムの品質及び信頼性を向上させることができる。
【0097】
監視装置20において、対応アクション制御部28が画面フローをオペレータに提示するときに、フロー編集ユニット70により生成された有向グラフを提示し、その画面フローのうち現在提示されている画面を、他の画面と識別可能に提示してもよい。例えば、現在表示されている画面に対応するノードを示す図形の表示色を他のノードの図形とは異なる色に変更するなどして強調表示してもよい。また、画面フローにおいて、現在の画面に至るまでに提示された画面の経路を強調表示してもよい。
【0098】
図32は、監視装置20が画面フローを提示する画面の例を示す。図32に示した画面D3には、図5に示した画面D3に加えて、画面の左下に、実行中の画面フローの全容を示す有向グラフD0が表示されており、その中で、既に表示された画面を示すノードとエッジが太い線で表示されており、現在表示されている画面を示すノードは斜線を付して表示されている。これにより、オペレータは、画面フローの全容と現在の進行状況を容易に把握することができる。画面フローの全容を示す有向グラフD0は、画面D3とは別のウインドウに表示されてもよい。
【0099】
対応アクション制御部28は、フロー構成部品テーブル50及び遷移テーブル52を参照して、画面フローの全容を示す有向グラフD0を新たに生成して提示してもよいし、フロー編集ユニット70により画面フローが編集されたときの編集画面に提示されていた有向グラフを保持しておき、画面フローを提示するときに合わせて提示してもよい。後者の場合、フロー編集ユニット70は、画面フローを生成、編集したときに、フロー管理テーブル48及びフロー構成部品テーブル50に、有向グラフにおける各画面部品のノードの位置を示す座標をさらに格納しておいてもよい。対応アクション制御部28は、この座標をフロー管理テーブル48及びフロー構成部品テーブル50から読み出して、画面フローの有向グラフD0を表示すればよい。
【0100】
なお、例えば、専門家などに指示を仰いだ後に実行する作業などは、事前に予測することができないので、障害対応作業の終了までの画面フローを定義できない場合もある。また、さまざまな作業の選択肢を考慮した画面フローを用意するとすれば、画面フローが肥大化し、画面を部品化したメリットが薄れてしまう。このような場合を考慮して、指示された内容に応じて別の画面フローへ移行するためのインタフェイスを備えた画面部品を用意しておいてもよい。この画面部品を「対応クラウド部品」と呼ぶ。図7に示した障害報告画面D5において、「確認」という項に設けられた多数のラジオボタンは、別の画面フローを起動するためのインタフェイスに当たる。オペレータが、例えば電話連絡した相手から「手順書実行」を指示されると、「手順実行」のラジオボタンを選択して次画面へ遷移する。対応アクション制御部28は、「手順書実行」の接続子に対応づけられた画面フローを起動し、画面を提示する。遷移した後の画面フローにおいても、オペレータが行った作業の内容は障害管理データベース36に記録されるので、作業の終了までを定義していないような画面フローを実行する場合であっても、実際に行った作業の内容は自動的に記録される。この履歴を後から参照して、適切な画面フローを設計することもできる。
【0101】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0102】
実施の形態では、主としてオペレータの障害対応作業を支援することを目的とした画面フローについて説明したが、専門家などが障害対応作業を行う場合であっても、実施の形態で説明した技術を利用可能である。このように、オペレータ、技術者の別を問わず、実施の形態の技術を広く利用可能とすることで、作業の属人化を防ぐことができる。例えば、主担当ではない他のオペレータが作業する場合や、経験の浅い担当者が作業する場合に、作業が属人化していると対応できないことになってしまう。実施の形態で説明した技術を利用することにより、主担当ではない人が適切に対応することが可能となる。
【図面の簡単な説明】
【0103】
【図1】実施の形態に係る監視システムの構成を示す図である。
【図2】プロセスの異常を示すメッセージを受信したときに、オペレータが実行すべき作業のフローを示す図である。
【図3】図2に示した作業フローのうち、サービス確認作業の手順を提示するための画面を示す図である。
【図4】図2に示した作業フローのうち、復旧手順書検索作業の手順を提示するための画面を示す図である。
【図5】図2に示した作業フローのうち、手順書実行作業の手順を提示するための画面を示す図である。
【図6】図2に示した作業フローのうち、過去障害検索作業の手順を提示するための画面を示す図である。
【図7】図2に示した作業フローのうち、報告作業の手順を提示するための画面を示す図である。
【図8】監視装置の内部構成を示す図である。
【図9】顧客システムデータベースの内部データの例を示す図である。
【図10】アクション定義データベースのテーブル構成の例を示す図である。
【図11】切り分け条件テーブルの内部データの例を示す図である。
【図12】部品管理テーブルの内部データの例を示す図である。
【図13】プロパティテーブルの内部データの例を示す図である。
【図14】接続子テーブルの内部データの例を示す図である。
【図15】フロー管理テーブルの内部データの例を示す図である。
【図16】フロー構成部品テーブルの内部データの例を示す図である。
【図17】遷移テーブルの内部データの例を示す図である。
【図18】連絡先データベースのテーブル構成の例を示す図である。
【図19】メールテンプレートテーブルの内部データの例を示す図である。
【図20】連絡先管理テーブルの内部データの例を示す図である。
【図21】連絡先ブロックテーブルの内部データの例を示す図である。
【図22】電話連絡先順位テーブルの内部データの例を示す図である。
【図23】メール宛先テーブルの内部データの例を示す図である。
【図24】メッセージを受信してから解析するまでの手順を示すフローチャートである。
【図25】対応アクション判定の手順を示すフローチャートである。
【図26】対応アクション制御の手順を示すフローチャートである。
【図27】図2に示した作業フローを提示する画面フローを示す図である。
【図28】フロー編集ユニットの構成を示す図である。
【図29】フロー編集ユニットが提示する画面フローの編集画面の例を示す図である。
【図30】部品検索部が提示する画面部品の検索画面の例を示す図である。
【図31】画面の遷移関係が設定される様子を示す図である。
【図32】監視装置が画面フローを提示する画面の例を示す図である。
【符号の説明】
【0104】
10 監視対象システム、20 監視装置、22 メッセージ受信部、24 メッセージ解析部、26 対応アクション判定部、28 対応アクション制御部、30 アラート通知部、32 顧客システムデータベース、34 アクション定義データベース、36 障害管理データベース、38 連絡先データベース、40 切り分け条件テーブル、41 部品データテーブル、42 部品管理テーブル、44 プロパティテーブル、46 接続子テーブル、47 フローデータテーブル、48 フロー管理テーブル、50 フロー構成部品テーブル、52 遷移テーブル、54 メールテンプレートテーブル、56 連絡先管理テーブル、58 連絡先ブロックテーブル、60 電話連絡先順位テーブル、62 メール宛先テーブル、70 フロー編集ユニット、71 編集画面表示部、72 部品検索部、74 部品編集部、76 部品組込部、78 遷移先設定部。
【特許請求の範囲】
【請求項1】
ネットワークを介して監視対象に関するメッセージを受信する受信部と、
前記受信部が受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのデータを格納する画面フロー格納部と、
前記画面フロー格納部に格納された前記画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件を格納した条件格納部と、
前記条件格納部に格納された条件を参照して、提示すべき画面フローを判定する判定部と、
前記判定部により判定された前記画面フローのデータを前記画面フロー格納部から読み出して提示する制御部と、
を備えることを特徴とする監視装置。
【請求項2】
前記制御部は、前記画面により提示した作業の結果の入力を受け付け、その結果に基づいて、次に提示すべき画面を判定することを特徴とする請求項1に記載の監視装置。
【請求項3】
前記画面フロー格納部は、前記作業の結果と次に提示すべき画面とを対応づけて格納した遷移テーブルを格納し、
前記制御部は、前記遷移テーブルを参照して次に提示すべき画面を判定することを特徴とする請求項2に記載の監視装置。
【請求項4】
前記画面フロー格納部は、前記画面を構成する要素の情報を格納したプロパティテーブルを格納し、
前記制御部は、前記プロパティテーブルを参照して前記画面を構成する要素の情報を取得し、前記画面を構成して提示することを特徴とする請求項1から3のいずれかに記載の監視装置。
【請求項5】
前記制御部は、前記画面フローを提示するときに、その画面フローを構成する画面をノードとする有向グラフを提示することを特徴とする請求項1から4のいずれかに記載の監視装置。
【請求項6】
前記制御部は、前記画面フローのうち現在提示されている画面及び既に提示された画面が識別可能な形式で前記有向グラフを提示することを特徴とする請求項1から5のいずれかに記載の監視装置。
【請求項7】
ネットワークを介して監視対象に関するメッセージを受信するステップと、
受信した前記メッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件が格納されたメモリから、前記条件を読み出して、受信したメッセージと前記条件から、提示すべき画面フローを判定するステップと、
判定された画面フローを、前記画面フローのデータを格納したメモリから読み出して提示するステップと、
を含むことを特徴とする監視方法。
【請求項1】
ネットワークを介して監視対象に関するメッセージを受信する受信部と、
前記受信部が受信したメッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのデータを格納する画面フロー格納部と、
前記画面フロー格納部に格納された前記画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件を格納した条件格納部と、
前記条件格納部に格納された条件を参照して、提示すべき画面フローを判定する判定部と、
前記判定部により判定された前記画面フローのデータを前記画面フロー格納部から読み出して提示する制御部と、
を備えることを特徴とする監視装置。
【請求項2】
前記制御部は、前記画面により提示した作業の結果の入力を受け付け、その結果に基づいて、次に提示すべき画面を判定することを特徴とする請求項1に記載の監視装置。
【請求項3】
前記画面フロー格納部は、前記作業の結果と次に提示すべき画面とを対応づけて格納した遷移テーブルを格納し、
前記制御部は、前記遷移テーブルを参照して次に提示すべき画面を判定することを特徴とする請求項2に記載の監視装置。
【請求項4】
前記画面フロー格納部は、前記画面を構成する要素の情報を格納したプロパティテーブルを格納し、
前記制御部は、前記プロパティテーブルを参照して前記画面を構成する要素の情報を取得し、前記画面を構成して提示することを特徴とする請求項1から3のいずれかに記載の監視装置。
【請求項5】
前記制御部は、前記画面フローを提示するときに、その画面フローを構成する画面をノードとする有向グラフを提示することを特徴とする請求項1から4のいずれかに記載の監視装置。
【請求項6】
前記制御部は、前記画面フローのうち現在提示されている画面及び既に提示された画面が識別可能な形式で前記有向グラフを提示することを特徴とする請求項1から5のいずれかに記載の監視装置。
【請求項7】
ネットワークを介して監視対象に関するメッセージを受信するステップと、
受信した前記メッセージに対応して実行すべき作業の内容を提示するための画面を複数組み合わせて構成され、前記作業の流れを提示するための画面フローのうち、いずれの画面フローを提示すべきかを判定するための条件が格納されたメモリから、前記条件を読み出して、受信したメッセージと前記条件から、提示すべき画面フローを判定するステップと、
判定された画面フローを、前記画面フローのデータを格納したメモリから読み出して提示するステップと、
を含むことを特徴とする監視方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公開番号】特開2007−72545(P2007−72545A)
【公開日】平成19年3月22日(2007.3.22)
【国際特許分類】
【出願番号】特願2005−255922(P2005−255922)
【出願日】平成17年9月5日(2005.9.5)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
【公開日】平成19年3月22日(2007.3.22)
【国際特許分類】
【出願日】平成17年9月5日(2005.9.5)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
[ Back to top ]