IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立製作所の特許一覧

<>
  • 特開-監視システムおよび監視方法 図1
  • 特開-監視システムおよび監視方法 図2
  • 特開-監視システムおよび監視方法 図3
  • 特開-監視システムおよび監視方法 図4
  • 特開-監視システムおよび監視方法 図5
  • 特開-監視システムおよび監視方法 図6
  • 特開-監視システムおよび監視方法 図7
  • 特開-監視システムおよび監視方法 図8
  • 特開-監視システムおよび監視方法 図9
  • 特開-監視システムおよび監視方法 図10
  • 特開-監視システムおよび監視方法 図11
  • 特開-監視システムおよび監視方法 図12
  • 特開-監視システムおよび監視方法 図13
  • 特開-監視システムおよび監視方法 図14
  • 特開-監視システムおよび監視方法 図15
  • 特開-監視システムおよび監視方法 図16
  • 特開-監視システムおよび監視方法 図17
  • 特開-監視システムおよび監視方法 図18
  • 特開-監視システムおよび監視方法 図19
  • 特開-監視システムおよび監視方法 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024158087
(43)【公開日】2024-11-08
(54)【発明の名称】監視システムおよび監視方法
(51)【国際特許分類】
   G06F 11/07 20060101AFI20241031BHJP
【FI】
G06F11/07 178
G06F11/07 140A
【審査請求】有
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023072952
(22)【出願日】2023-04-27
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】田中 友己
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042MA05
5B042MA08
5B042MA11
5B042MC22
5B042MC35
5B042MC37
(57)【要約】
【課題】ユーザにとって必要なメトリクスを優先して取得し得る監視システムを提供する。
【解決手段】所定のユーザにより所定の障害について障害調査が行われる場合、マネージャホストは、記憶部により記憶されている所定のユーザの操作履歴の中から、所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、エージェントホストが取得するメトリクスの優先度をメトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従ってエージェントホストにメトリクスを要求し、エージェントホストは、マネージャホストによる要求に応じてメトリクスをマネージャホストに送信し、マネージャホストは、エージェントホストから送信されたメトリクスを所定のユーザのユーザ端末に送信するようにした。
【選択図】図1
【特許請求の範囲】
【請求項1】
監視対象のメトリクスを取得するエージェントホストと、
前記エージェントホストにより取得されたメトリクスを管理するマネージャホストと、
前記エージェントホストにより取得されたメトリクスが障害調査のために前記マネージャホストによりユーザ端末に送信されたことを示す操作履歴を記憶する記憶部と、
を備え、
所定のユーザにより所定の障害について障害調査が行われる場合、
前記マネージャホストは、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、前記エージェントホストが取得するメトリクスの優先度を前記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って前記エージェントホストにメトリクスを要求し、
前記エージェントホストは、前記マネージャホストによる要求に応じてメトリクスを前記マネージャホストに送信し、
前記マネージャホストは、前記エージェントホストから送信されたメトリクスを前記所定のユーザのユーザ端末に送信する、
監視システム。
【請求項2】
前記マネージャホストは、前記所定の期間として、前記所定の障害が発生してから前記所定のユーザがログインするまでの経過時間を算出し、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの前記経過時間分の操作履歴を抽出する、
請求項1に記載の監視システム。
【請求項3】
前記マネージャホストは、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定の障害を示すメトリクスが取得された監視対象の種別および前記メトリクスの系統が一致する監視対象の種別およびメトリクスの系統の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴を監視対象の種別およびメトリクスの系統ごとに計数し、前記エージェントホストが取得するメトリクスの優先度を前記メトリクスが取得される監視対象の種別および前記メトリクスの系統が一致する監視対象の種別およびメトリクスの系統の操作履歴の数に基づいて決定し、決定した優先度に従って前記エージェントホストにメトリクスを要求する、
請求項1に記載の監視システム。
【請求項4】
前記マネージャホストは、第1のシステムに含まれる複数のエージェントホストの各々により取得されたメトリクスと、前記第1のシステムとは異なる第2のシステムに含まれる複数のエージェントホストの各々により取得されたメトリクスと、を管理し、
前記第1のシステムの第1のエージェントホストが取得するメトリクスが第1の障害を示し、前記第1の障害について所定のユーザにより障害調査が行われる場合、前記マネージャホストは、
前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記第1の障害のメトリクスの分類と一致するメトリクスの分類の第2の障害が発生してからの所定の期間分の操作履歴を抽出し、
前記第2の障害が発生した第2のエージェントホストが含まれるシステムが前記第2のシステムであるとき、前記第2のエージェントホストと前記第2のシステムの他のエージェントホストと間に構成されている構成要素の数であるhop数を前記第2のシステムの構成情報をもとに算出し、
前記所定の期間分の操作履歴をメトリクスの分類およびhop数ごとに計数し、
前記所定の期間分の操作履歴に係るメトリクスの優先度を、前記メトリクスの分類および前記メトリクスを取得するエージェントホストのhop数が一致するメトリクスの分類およびhop数の操作履歴の数に応じて決定し、
前記第1のエージェントホストと、前記第1のシステムの他のエージェントホストとの間に構成されている構成要素の数であるhop数を前記第1のシステムの構成情報をもとに算出し、
前記第1のシステムに含まれる複数のエージェントホストの各々に送信するメトリクスの優先度を、前記メトリクスの分類および前記メトリクスを取得するエージェントホストのhop数が一致するメトリクスの優先度に応じて決定する、
請求項1に記載の監視システム。
【請求項5】
前記記憶部には、障害を示したメトリクスの分類を示す情報と、前記障害が発生した日時の情報と、前記障害が復旧した日時の情報とを含む障害情報が記憶され、
前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が複数ある場合、前記マネージャホストは、
前記記憶部に記憶されている障害情報をもとに、前記複数の障害の各々について、障害が継続した時間を示す障害継続時間を算出し、
前記複数の障害の中から、算出した障害継続時間が最も短い一の障害を特定し、
前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記一の障害が発生してからの所定の期間分の操作履歴を抽出する、
請求項1に記載の監視システム。
【請求項6】
前記マネージャホストは、決定した優先度が高いほどメトリクスを送信する間隔を短くするように設定し、設定した間隔でメトリクスを送信するように前記エージェントホストに要求する、
請求項1に記載の監視システム。
【請求項7】
前記マネージャホストは、ユーザにより障害調査が行われる障害を指定可能な画面を前記ユーザのユーザ端末に提供し、
前記画面を介して所定のユーザにより所定の障害が指定された場合、前記マネージャホストは、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定のユーザにより指定された前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、前記エージェントホストが取得するメトリクスの優先度を前記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って前記エージェントホストにメトリクスを要求する、
請求項1に記載の監視システム。
【請求項8】
監視対象のメトリクスを取得するエージェントホストと、前記エージェントホストにより取得されたメトリクスを管理するマネージャホストと、前記エージェントホストにより取得されたメトリクスが障害調査のために前記マネージャホストによりユーザ端末に送信されたことを示す操作履歴を記憶する記憶部と、を備える監視システムにおける監視方法であって、
所定のユーザにより所定の障害について障害調査が行われる際、
前記マネージャホストが、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、前記エージェントホストが取得するメトリクスの優先度を前記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って前記エージェントホストにメトリクスを要求することと、
前記エージェントホストが、前記マネージャホストによる要求に応じてメトリクスを前記マネージャホストに送信することと、
前記マネージャホストが、前記エージェントホストから送信されたメトリクスを前記所定のユーザのユーザ端末に送信することと、
を含む監視方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、障害を監視する技術に関する。
【背景技術】
【0002】
近年、システムの大規模化に伴い、システム管理者、アプリ開発者等のユーザがシステム監視時に取得して解析するデータ、より具体的には、メモリ使用率、データ転送速度といったメトリクスが多くなっている。
【0003】
例えば、システムに障害が発生した場合、ユーザは、メトリクスを用いて、その障害の対応を行っている。その際、取得するメトリクスを制限することで解析対象のデータ量を削減できるので、障害の対応を迅速に行うことができる。
【0004】
この点、監視基盤の時系列データベースのリソースの浪費を削減し、かつ、運用管理者の監視にかかるコストを削減できるシステムが開示されている(特許文献1参照)。かかるシステムによれば、監視対象毎に、時系列データベースの現在の設定情報と、時系列データの操作履歴および時系列データの量の情報に基づいて、時間情報を含む設定情報の変更案が生成されるので、時系列データベースに格納する時系列データ量を削減できる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第6029951号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
障害の対応のために取得するメトリクスを制限する際、ユーザにとって必要なメトリクスは異なり、特許文献1に記載の技術では、何を基準にメトリクスを選定すべきか判断できない。結果として、効果的なデータ量の削減が実行できない。
【0007】
本発明は、以上の点を考慮してなされたもので、ユーザにとって必要なメトリクスを優先して取得し得る監視システム等を提案しようとするものである。
【課題を解決するための手段】
【0008】
かかる課題を解決するため本発明においては、監視対象のメトリクスを取得するエージェントホストと、前記エージェントホストにより取得されたメトリクスを管理するマネージャホストと、前記エージェントホストにより取得されたメトリクスが障害調査のために前記マネージャホストによりユーザ端末に送信されたことを示す操作履歴を記憶する記憶部と、を備え、所定のユーザにより所定の障害について障害調査が行われる場合、前記マネージャホストは、前記記憶部により記憶されている前記所定のユーザの操作履歴の中から、前記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、前記エージェントホストが取得するメトリクスの優先度を前記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って前記エージェントホストにメトリクスを要求し、前記エージェントホストは、前記マネージャホストによる要求に応じてメトリクスを前記マネージャホストに送信し、前記マネージャホストは、前記エージェントホストから送信されたメトリクスを前記所定のユーザのユーザ端末に送信するようにした。
【0009】
上記構成によれば、例えば、過去の経験が反映された操作履歴に基づくメトリクスが優先して取得され、かつ、データ量が削減されるので、障害の対応を早めることができる。
【発明の効果】
【0010】
本発明によれば、保守性の高い監視システムを実現することができる。上記以外の課題、構成、および効果は、以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
図1】第1の実施の形態による監視システムの一例を示す図である。
図2】第1の実施の形態によるマネージャホストの機能構成の一例を示す図である。
図3】第1の実施の形態によるエージェントホストの機能構成の一例を示す図である。
図4】第1の実施の形態によるマネージャホストおよびエージェントホストのハードウェア構成の一例を示す図である。
図5】第1の実施の形態による操作履歴の一例を示す図である。
図6】第1の実施の形態による障害情報の一例を示す図である。
図7】第1の実施の形態による優先度情報の一例を示す図である。
図8】第1の実施の形態によるメトリクス情報の一例を示す図である。
図9】第1の実施の形態によるメトリクス送信情報の一例を示す図である。
図10】第1の実施の形態によるメトリクス一時保存情報の一例を示す図である。
図11】第1の実施の形態によるマネージャに係るシーケンスの一例を示す図である。
図12】第1の実施の形態によるマネージャに係るシーケンスの一例を示す図である。
図13】第1の実施の形態による優先度評価部が実行する処理の一例を示す図である。
図14】第1の実施の形態による操作履歴取得処理(同名)の一例を示す図である。
図15】第1の実施の形態による操作履歴取得処理(同種別および同系統)の一例を示す図である。
図16】第1の実施の形態による優先度設定処理の一例を示す図である。
図17】第1の実施の形態による情報収集部が実行する処理の一例を示す図である。
図18】第1の実施の形態によるメトリクス送信情報生成処理の一例を示す図である。
図19】第1の実施の形態によるエージェントに係るシーケンスの一例を示す図である。
図20】第1の実施の形態によるメトリクス送信情報処理部が実行する処理の一例を示す図である。
【発明を実施するための形態】
【0012】
(I)第1の実施の形態
以下、本発明の一実施の形態を詳述する。ただし、本発明は、実施の形態に限定されるものではない。
【0013】
本実施の形態の監視システムは、マネージャとエージェントとを含んで構成されるシステムである。マネージャおよびエージェントの各々は、所定のホスト(物理マシンまたは仮想マシン)に設けられている。監視システムでは、エージェントが監視対象のデータを収集し、エージェントにより収集された監視対象のデータをマネージャが管理する。なお、監視対象は、エージェントが設けられているホスト(エージェントホスト)の物理的なリソース(CPU(Central Processing Unit)、メモリ等)であってもよいし、エージェントホストの仮想的なリソース(仮想CPU、仮想メモリ等)であってもよい。
【0014】
エージェントホストの監視対象において障害が発生した際、監視システムでは、マネージャは、ユーザが参照したメトリクスの操作履歴を記録する。ユーザは、監視システムにアクセスしてシステム監視を行う人物である。例えば、ユーザは、システム管理者、アプリ開発者等である。メトリクスは、監視対象のデータの一例であり、例えば、監視対象の性能を示す性能データ、監視対象の状態を示す状態データである。性能データは、監視対象の性能を示す1つの数値データを含むデータであってもよいし、監視対象の性能を示す時系列でまとまった数値データを含むデータであってもよい。監視対象の状態を示すデータは、監視対象の状態を示す1つの数値データを含むデータであってもよいし、監視対象の状態を示す時系列でまとまった数値データを含むデータであってもよい。例えば、メトリクスは、監視対象がアプリケーションである場合、ログイン数、リクエストデータ量等であり、監視対象がメモリである場合、メモリ使用率、空きメモリ容量等であり、監視対象がネットワークである場合、送信データ量、受信データ量等である。
【0015】
また、ユーザが障害の対応をする際、監視システムでは、マネージャは、当該ユーザが過去の障害の際に参照したメトリクスの操作履歴をメトリクスの分類ごとに計数し、エージェントが取得するメトリクスの優先度を当該メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従ってメトリクスを取得する。
【0016】
メトリクスの分類は、コンポーネントの種別およびメトリクスの系統の組合せであってもよいし、メトリクス名であってもよい。コンポーネントの種別は、CPU、メモリといった監視対象の種別である。メトリクスの系統は、パフォーマンス、キャパシティといった監視対象の性能または状態である。メトリクス名は、例えば、コンポーネントの種別がメモリである場合、メモリ全体の使用率、スワップメモリ使用率、使用済みメモリ量、メモリページ(イン、アウト、フォールト)等である。
【0017】
ここで、時間経過とともに障害の影響がシステム全体に広がっていき、関心のあるメトリクスが時間的に変化していく場合、関心のあるメトリクスを直ぐに確認できない問題がある。
【0018】
この点、本監視システムでは、障害が発生してからの経過時間に基づいてメトリクスの優先度を決定する。かかる構成によれば、経過時間をもとに関心のあるメトリクスを事前に取得することができるので、ユーザは、関心のあるメトリクスを直ぐに確認することができる。
【0019】
また、メトリクスを一律(例えば、コンポーネントの種別ごと、メトリクスの系統ごと)に取得すると、効果的なデータ量の削減が実行できないことがある。
【0020】
この点、本監視システムでは、例えば、メトリクスをコンポーネントの種別とメトリクスの系統との組合せにより細分化し、細分化したメトリクスを取得することができる。かかる構成によれば、例えば、障害調査のために取得するメトリクスを監視対象の種別とメトリクスの系統との組合せに細分化することができるので、取得するデータ量を効果的に削減することができる。
【0021】
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数または順序を限定するものではない。また、構成要素の識別のための番号は、文脈毎に用いられ、1つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
【0022】
次に、本発明の実施の形態を図面に基づいて説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施することが可能である。特に限定しない限り、各構成要素は、単数でも複数でも構わない。
【0023】
なお、以下の説明では、図面において同一要素については、同じ番号を付し、説明を適宜省略する。また、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分(枝番を除く部分)を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、メトリクス送信テーブルを特に区別しないで説明する場合には、「メトリクス送信テーブル900」と記載し、個々のメトリクス送信テーブルを区別して説明する場合には、「メトリクス送信テーブル900-1」、「メトリクス送信テーブル900-2」のように記載することがある。
【0024】
図1において、100は、全体として第1の実施の形態による監視システムを示す。
【0025】
監視システム100は、マネージャホスト110と、1以上のエージェントホスト120を備える1以上のシステム130とを含んで構成される。マネージャホスト110は、物理マシンまたは仮想マシンであり、マネージャ111を備える。エージェントホスト120は、物理マシンまたは仮想マシンであり、エージェント121を備える。なお、本実施の形態では、マネージャホスト110およびエージェントホスト120の各々が物理マシンであるケースを例に挙げて説明する。
【0026】
監視システム100では、エージェント121が監視対象のデータを収集してメトリクスを取得し、エージェント121により取得されたメトリクスをマネージャ111が管理する。監視システム100では、例えば、マネージャ111は、ユーザ140により指定されたメトリクスを確認可能な確認画面150を出力する。
【0027】
ユーザ140は、システム管理者、インフラ管理者、アプリ開発者等である。確認画面150は、ユーザ140のユーザ端末141に表示される。ユーザ端末141は、パーソナルコンピュータ、タブレット端末、スマートフォン等である。確認画面150には、メトリクスを表示する表示エリア151と、表示エリア151に表示するメトリクスを選択するための選択エリア152と、が設けられている。確認画面150では、選択エリア152で選択されたメトリクスがグラフとして表示エリア151に表示される。
【0028】
ここで、選択エリア152には、優先して取得しているメトリクスを識別可能な情報(本例では、「★」)が示される。例えば、マネージャ111がメトリクスAを優先して取得している場合、メトリクスAの取得間隔がメトリクスCの取得間隔よりも短くなり、グラフに表示されるメトリクスAのプロット数は、メトリクスCよりも多くなる。付言するならば、優先して取得しないメトリクス(ユーザ140の関心が低いメトリクス)については、優先して取得するメトリクス(ユーザ140の関心が高いメトリクス)よりもデータが間引かれている。
【0029】
次に、マネージャホスト110の機能構成について図2を用いて説明し、エージェントホスト120の機能構成について図3を用いて説明し、マネージャホスト110およびエージェントホスト120のハードウェア構成について図4を用いて説明する。
【0030】
図2は、マネージャホスト110の機能構成の一例を示す図である。
【0031】
マネージャホスト110は、操作履歴201と、障害情報202と、優先度情報203と、システム構成情報204と、メトリクス情報205とを管理する。
【0032】
より具体的には、マネージャホスト110は、操作履歴記録機能210と、ログイン処理機能220と、優先度管理機能230と、エージェント管理機能240と、出力処理機能250とを備える。操作履歴記録機能210は、例えば、操作履歴記録部211により実現される。操作履歴記録部211は、障害が発生した際に確認画面150においてユーザがメトリクスを選択(参照)した操作に係る情報を操作履歴201として記録する。操作履歴201については、図5を用いて説明する。
【0033】
ログイン処理機能220は、例えば、ログイン処理部221により実現される。ログイン処理部221は、ユーザ140のログインに係る処理を行う。例えば、ログイン処理部221は、ユーザ140が監視システム100にログインしたとき、ユーザ140が確認したいメトリクスを選択したとき等に、ログイン情報(ユーザID、ログイン時刻等)を優先度管理機能230に通知する。
【0034】
優先度管理機能230は、例えば、優先度評価部231と優先度記録部232とにより実現される。優先度評価部231は、操作履歴201と障害情報202とシステム構成情報204とに基づいて、マネージャ111がメトリクスを優先して取得する度合い(順位)を示すメトリクス優先度を決定する。優先度記録部232は、優先度評価部231により決定されたメトリクス優先度を示す情報を優先度情報203として記録する。なお、障害情報202については、図6を用いて説明する。優先度情報203については、図7を用いて説明する。システム構成情報204は、システム130の構成を把握可能な情報であり、エージェントホスト120の接続関係を示す情報である。なお、システム構成情報204は、公知の技術により取得されて登録されている、または、ユーザ140により登録されている。
【0035】
エージェント管理機能240は、例えば、優先度取得部241と情報収集部242と情報保存部243とにより実現される。優先度取得部241は、優先度情報203を取得する。情報収集部242は、エージェント121にメトリクスを要求して取得(収集)する。より具体的には、情報収集部242は、優先度情報203とシステム構成情報204とに基づいて、メトリクスを送信する間隔を示すメトリクス送信情報をエージェント121(エージェントホスト120)ごとに生成し、生成したメトリクス送信情報をエージェント121に送信する。エージェント121は、メトリクス送信情報に従ってメトリクスを情報収集部242に送信する。情報保存部243は、情報収集部242により収集されたメトリクスをメトリクス情報205として保存する。メトリクス情報205については、図8を用いて説明する。
【0036】
出力処理機能250は、例えば、出力処理部251により実現される。出力処理部251は、ユーザ140がシステム130を監視するために使用するGUI260(GUI:Graphical User Interface)を提供する。例えば、出力処理部251は、メトリクス情報205からメトリクスを読み出し、読み出したメトリクスを含む確認画面150を出力する。
【0037】
図3は、エージェントホスト120の機能構成の一例を示す図である。
【0038】
エージェントホスト120は、メトリクス送信情報301と、メトリクス一時保存情報302とを管理する。より具体的には、エージェントホスト120は、メトリクス送信情報処理機能310と、メトリクス収集機能320と、メトリクス一時保存機能330と、メトリクス送信機能340とを備える。
【0039】
メトリクス送信情報処理機能310は、例えば、メトリクス送信情報受信部311とメトリクス送信情報処理部312とにより実現される。メトリクス送信情報受信部311は、マネージャ111から送信されたメトリクス送信情報を受信し、受信したメトリクス送信情報をメトリクス送信情報301として記録する。メトリクス送信情報301については、図9を用いて説明する。メトリクス送信情報処理部312は、メトリクス収集機能320により収集されたメトリクスをメトリクス一時保存機能330に通知し、メトリクス収集機能320により収集されたメトリクスから、メトリクス送信情報301に基づいてメトリクスを抽出(選定)し、抽出したメトリクスをメトリクス送信機能340に通知する。
【0040】
メトリクス収集機能320は、例えば、メトリクス収集部321により実現される。メトリクス収集部321は、監視対象のデータ(監視対象データ303)を収集し、収集した監視対象データ303をメトリクスとしてメトリクス送信情報処理部312に通知する。メトリクス一時保存機能330は、例えば、メトリクス一時保存部331により実現される。メトリクス一時保存部331は、メトリクス送信情報処理部312により通知されたメトリクスをメトリクス一時保存情報302として一時的に保存する。メトリクス一時保存情報302については、図10を用いて説明する。メトリクス送信機能340は、例えば、メトリクス送信部341により実現される。メトリクス送信部341は、メトリクス送信情報処理部312により通知されたメトリクスをマネージャ111に送信する。
【0041】
図4は、マネージャホスト110およびエージェントホスト120のハードウェア構成の一例を示す図である。
【0042】
マネージャホスト110とエージェントホスト120とは、ネットワーク400を介して通信可能に接続されている。
【0043】
マネージャホスト110は、構成要素として、プロセッサ411と、主記憶装置412と、補助記憶装置413と、入力装置414と、出力装置415と、通信装置416と、を備える。
【0044】
プロセッサ411は、演算処理を行う装置である。プロセッサ411は、例えば、CPU、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、AI(Artificial Intelligence)チップ等である。
【0045】
主記憶装置412は、プログラム、データ等の情報を記憶する装置である。主記憶装置412は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)等である。ROMは、SRAM(Static Random Access Memory)、NVRAM(Non Volatile RAM)、マスクROM(Mask Read Only Memory)、PROM(Programmable ROM)等である。RAMは、DRAM(Dynamic Random Access Memory)等である。
【0046】
補助記憶装置413は、プログラム、データ等の情報を記憶する装置である。例えば、補助記憶装置413は、障害情報202と、優先度情報203と、システム構成情報204と、メトリクス情報205とを記憶する。補助記憶装置413は、ハードディスクドライブ(Hard Disk Drive)、フラッシュメモリ(Flash Memory)、SSD(Solid State Drive)、光学式記憶装置等である。光学式記憶装置は、CD(Compact Disc)、DVD(Digital Versatile Disc)等である。補助記憶装置413に格納されているプログラム、データ等は、主記憶装置412に随時読み込まれる。
【0047】
入力装置414は、ユーザから情報を受け付けるユーザインターフェースである。入力装置414は、例えば、キーボード、マウス、カードリーダ、タッチパネル等である。
【0048】
出力装置415は、各種の情報を出力(表示出力、音声出力、印字出力等)するユーザインターフェースである。出力装置415は、例えば、各種情報を可視化する表示装置、音声出力装置(スピーカ)、印字装置等である。表示装置は、LCD(Liquid Crystal Display)、グラフィックカード等である。
【0049】
通信装置416は、通信媒体を介して他の装置と通信する通信インターフェースである。通信装置416は、例えば、NIC(Network Interface Card)、無線通信モジュール、USB(Universal Serial Bus)モジュール、シリアル通信モジュール等である。通信装置416は、通信可能に接続する他の装置から情報を受信する入力装置として機能することもできる。また、通信装置416は、通信可能に接続する他の装置に情報を送信する出力装置として機能することもできる。
【0050】
マネージャホスト110の機能(操作履歴記録機能210、ログイン処理機能220、優先度管理機能230、エージェント管理機能240、出力処理機能250等)は、例えば、プロセッサ411が補助記憶装置413に格納されたプログラムを主記憶装置412に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。なお、マネージャホスト110の1つの機能は、複数の機能に分けられていてもよいし、複数の機能は、1つの機能にまとめられていてもよい。また、マネージャホスト110の機能の一部は、別の機能として設けられてもよいし、他の機能に含められていてもよい。また、マネージャホスト110の機能の一部は、マネージャホスト110と通信可能な他のコンピュータにより実現されてもよい。また、マネージャホスト110は、上記の機能に加えて、例えば、オペレーティングシステム、デバイスドライバ、ファイルシステム、DBMS(DataBase Management System)等の機能を更に備えていてもよい。
【0051】
エージェントホスト120は、構成要素として、プロセッサ421と、主記憶装置422と、補助記憶装置423と、入力装置424と、出力装置425と、通信装置426と、を備える。エージェントホスト120の構成要素は、マネージャホスト110の構成要素と同様であるので、主に異なる構成について説明する。
【0052】
例えば、補助記憶装置423は、メトリクス送信情報301と、メトリクス一時保存情報302とを記憶する。
【0053】
また、エージェントホスト120の機能(メトリクス送信情報処理機能310、メトリクス収集機能320、メトリクス一時保存機能330、メトリクス送信機能340等)は、例えば、プロセッサ421が補助記憶装置423に格納されたプログラムを主記憶装置422に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。なお、エージェントホスト120の1つの機能は、複数の機能に分けられていてもよいし、複数の機能は、1つの機能にまとめられていてもよい。また、エージェントホスト120の機能の一部は、別の機能として設けられてもよいし、他の機能に含められていてもよい。また、エージェントホスト120の機能の一部は、エージェントホスト120と通信可能な他のコンピュータにより実現されてもよい。また、エージェントホスト120は、上記の機能に加えて、例えば、オペレーティングシステム、デバイスドライバ、ファイルシステム、DBMS等の機能を更に備えていてもよい。
【0054】
図5は、操作履歴201の一例(操作履歴テーブル500)を示す図である。
【0055】
操作履歴テーブル500は、ユーザ140毎に設けられ、ユーザ140によるメトリクスの操作に係る情報を記憶する。メトリクスの操作に係る情報は、例えば、エージェントホスト120により取得されたメトリクスが障害調査のためにマネージャホスト110によりユーザ140のユーザ端末141に送信されたことを示す情報である。より具体的には、操作履歴テーブル500は、日時501と、ホスト名502と、メトリクス名503と、コンポーネント種別504と、メトリクス系統505との情報が対応付けられたレコードを記憶する。
【0056】
日時501は、確認画面150等を介してユーザ140によりメトリクスが操作された日時を示す情報を記憶する。ホスト名502は、当該メトリクスが取得されたコンポーネントを備えるエージェントホスト120の名称(ホスト名)を示す情報を記憶する。メトリクス名503は、当該メトリクスの名称(メトリクス名)を示す情報を記憶する。コンポーネント種別504は、当該コンポーネントの種別を示す情報を記憶する。メトリクス系統505は、当該メトリクスの系統を示す情報を記憶する。
【0057】
図6は、障害情報202の一例(障害テーブル600)を示す図である。
【0058】
障害テーブル600は、システム130毎に設けられ、エージェントホスト120において発生したイベント(例えば、障害)に係る情報を記憶する。より具体的には、障害テーブル600は、日時601と、イベント内容602と、ホスト名603と、メトリクス名604と、メトリクス状態605と、コンポーネント種別606と、メトリクス系統607との情報が対応付けられたレコードを記憶する。
【0059】
日時601は、イベントが発生した日時を示す情報を記憶する。イベント内容602は、当該イベントの内容を示す情報を記憶する。ホスト名603は、当該イベントが発生したエージェントホスト120の名称を示す情報を記憶する。メトリクス名604は、当該イベントを示すメトリクスの名称(当該イベントに関係するメトリクスの名称)を示す情報を記憶する。メトリクス状態605は、当該メトリクスの状態を示す情報を記憶する。コンポーネント種別606は、当該メトリクスが取得されたコンポーネントの種別を示す情報を記憶する。メトリクス系統607は、当該メトリクスの系統を示す情報を記憶する。
【0060】
図7は、優先度情報203の一例(優先度テーブル700)を示す図である。
【0061】
優先度テーブル700は、ユーザ140毎に設けられ、優先度評価部231により決定されたメトリクス優先度に係る情報を記憶する。より具体的には、優先度テーブル700は、優先度701と、hop数702と、メトリクス名703と、コンポーネント種別704と、メトリクス系統705と、表示回数706との情報が対応付けられたレコードを記憶する。
【0062】
優先度701は、メトリクスが優先して取得される順位を示すメトリクス優先度を示す情報を記憶する。hop数702は、当該メトリクスが取得されるコンポーネントを備えるエージェントホスト120と、障害が発生しているエージェントホスト120との間に構成されている構成要素の数(hop数)を示す情報を記憶する。メトリクス名703は、当該メトリクスの名称を示す情報を記憶する。コンポーネント種別704は、当該コンポーネントの種別を示す情報を記憶する。メトリクス系統705は、当該メトリクスの系統を示す情報を記憶する。表示回数706は、当該メトリクスが表示(操作)された回数を示す情報を記憶する。
【0063】
例えば、システム130「α」のシステム構成がシステム構成710である場合、ホストE711において障害が発生したとき、ホストE711のhop数は、「-1」である。また、例えば、ホストE711とホストG712とにおける最短の通信経路に構成要素は存在しないので、ホストG712のhop数は、「0」である。また、例えば、ホストE711とホストF713とにおける最短の通信経路に構成要素が1つ存在(ホストC714またはホストG712が存在)するので、ホストF713のhop数は、「1」である。
【0064】
図8は、メトリクス情報205の一例(メトリクステーブル800)を示す図である。
【0065】
メトリクステーブル800は、マネージャ111が取得したメトリクスを記憶する。より具体的には、メトリクステーブル800は、メトリクス名801と、コンポーネント種別802と、メトリクス系統803と、ホスト名804と、収集時刻805と、メトリクス値806との情報が対応付けられたレコードを記憶する。
【0066】
メトリクス名801は、マネージャ111により取得されたメトリクスの名称を示す情報を記憶する。コンポーネント種別802は、当該メトリクスが取得されたコンポーネントの種別を示す情報を記憶する。メトリクス系統803は、当該メトリクスの系統を示す情報を記憶する。ホスト名804は、当該メトリクスが取得されたコンポーネントを備えるエージェントホスト120の名称を示す情報を記憶する。収集時刻805は、当該メトリクスが取得された時刻を示す情報を記憶する。メトリクス値806は、当該メトリクスの値を示す情報を記憶する。
【0067】
図9は、メトリクス送信情報301の一例(メトリクス送信テーブル900)を示す図である。
【0068】
メトリクス送信テーブル900は、メトリクスの送信に係る情報を記憶する。より具体的には、メトリクス送信テーブル900は、優先度ランク901と、hop数902と、メトリクス名903と、コンポーネント種別904と、メトリクス系統905と、表示回数906との情報が対応付けられたレコードを記憶する。
【0069】
優先度ランク901は、メトリクス優先度のランク(優先度ランク)を示す情報を記憶する。監視システム100では、優先度ランクに対応してメトリクスを送信する送信間隔が設定される。例えば、優先度ランク「A」は、メトリクスの送信間隔が15秒であり、優先度ランク「B」は、メトリクスの送信間隔が1分であり、優先度ランク「C」は、メトリクスの送信間隔が15分であり、優先度ランク「D」は、メトリクスの送信間隔が30分であることを示す。なお、優先度ランクは、後述のメトリクス送信情報生成処理においてメトリクス優先度に基づいて決定される。hop数902は、当該メトリクスが取得されるコンポーネントを備えるエージェントホスト120と、障害が発生しているエージェントホスト120との間に構成されている構成要素の数(hop数)を示す情報を記憶する。メトリクス名903は、当該メトリクスの名称を示す情報を記憶する。コンポーネント種別904は、当該メトリクスが取得されるコンポーネントの種別を示す情報を記憶する。メトリクス系統905は、当該メトリクスの系統を示す情報を記憶する。表示回数906は、当該メトリクスが表示(操作)された回数を示す情報を記憶する。
【0070】
メトリクス送信テーブル900-1は、hop数が「-1」のエージェントホスト120(障害が発生したエージェントホスト120)に登録されたメトリクス送信情報301の例を示す。また、メトリクス送信テーブル900-2は、hop数が「0」のエージェントホスト120に登録されたメトリクス送信情報の例を示す。
【0071】
図10は、メトリクス一時保存情報302の一例(メトリクス一時保存テーブル1000)を示す図である。
【0072】
メトリクス一時保存テーブル1000は、エージェントホスト120により収集されたメトリクスに係る情報を記憶する。より具体的には、メトリクス一時保存テーブル1000は、メトリクス名1001と、コンポーネント種別1002と、メトリクス系統1003と、ホスト名1004と、収集時刻1005と、メトリクス値1006との情報が対応付けられたレコードを記憶する。
【0073】
メトリクス名1001は、エージェントホスト120により収集されたメトリクスの名称を示す情報を記憶する。コンポーネント種別1002は、当該メトリクスが収集されたコンポーネントの種別を示す情報を記憶する。メトリクス系統1003は、当該メトリクスの系統を示す情報を記憶する。ホスト名1004は、当該メトリクスが収集されたエージェントホスト120の名称を示す情報を記憶する。収集時刻1005は、当該メトリクスが収集された時刻を示す情報を記憶する。メトリクス値1006は、当該メトリクスの値を示す情報を記憶する。
【0074】
図11および図12は、マネージャ111が実行する一連の処理を示すシーケンスの一例を示す図である。
【0075】
S1101では、ユーザ140は、GUI260を介して、所定の操作(ログインに係る操作、または、優先度再計算ボタンを押下する操作)を行う。本実施の形態では、ユーザ140は、GUI260を介して、監視システム100にログインすることで、過去の経験に基づくメトリクスが事前に取得され、前回のログアウト以降に発生している最も古い障害について障害調査を行うことができる。また、本実施の形態では、マネージャ111は、ユーザ140により障害調査が行われる障害を指定可能なGUI260(例えば、画面)をユーザ140のユーザ端末141に提供する。ユーザ140は、ログイン後、GUI260を介して、所望の障害を選択して優先度再計算ボタンを押下することで、過去の経験に基づくメトリクスが事前に取得され、所望の障害について障害調査を行うことができる。
【0076】
S1102では、ログイン処理部221は、ユーザ140により所定の操作が行われたときに、ログイン時刻を含むログイン情報を優先度評価部231に与える。付言するならば、所定の操作が優先度再計算ボタンを押下する操作である場合、所定の操作は、システム130にログインが行われた後に行われる操作であるため、ログイン処理部221は、当該ログイン時のログイン時刻を含むログイン情報を優先度評価部231に与える。
【0077】
S1103では、優先度評価部231は、ログイン情報を受け取ると、受け取ったことを示す情報(処理完了の戻り値)をログイン処理部221に通知する。
【0078】
S1104では、優先度評価部231は、障害情報202から調査対象の障害の障害情報(調査障害の障害情報)を取得する。所定の操作がログインに係る操作である場合、調査障害は、前回のログアウト以降に発生した障害の障害情報のうちで最も古い障害である。また、所定の操作が優先度再計算ボタンを押下する操作である場合、調査障害は、ユーザ140により選択された障害である。
【0079】
S1105では、優先度評価部231は、S1104において取得した調査障害の障害情報の時刻(障害発生時刻)とS1102において受け取ったログイン時刻とから、調査障害が発生してからログインが行われるまでの時間を示す障害経過時間を算出する。
【0080】
S1106では、優先度評価部231は、調査障害のメトリクスの分類(メトリクス名、または、コンポーネント種別とメトリクス系統との組合せ)が一致するメトリクスの分類の障害(過去障害)を障害情報202から検索し、過去障害の障害情報を取得する。
【0081】
S1107では、優先度評価部231は、操作履歴201の中から、障害経過時間分の過去障害の操作履歴を取得する。例えば、障害経過時間が「30分」であり、過去障害が「2022年12月1日10時00分にホストAのメトリクスAが示した障害」であった場合、優先度評価部231は、操作履歴テーブル500から、日時501が2022年12月1日10時00分から2022年12月1日10時30分までの22件のレコードを取得する。
【0082】
S1108では、優先度評価部231は、システム構成情報204から、過去障害が発生したシステム130のシステム構成情報を取得する。
【0083】
S1109では、優先度評価部231は、S1107において取得した過去障害の操作履歴と、S1108において取得したシステム構成情報204とに基づいて、メトリクス優先度を決定する。
【0084】
S1110では、優先度記録部232は、優先度評価部231により決定されたメトリクス優先度を優先度情報203として記録する。
【0085】
S1200では、エージェントホスト120は、監視対象から監視対象データ303(メトリクス)を繰り返し取得している。
【0086】
S1201では、優先度取得部241は、優先度情報203から、ユーザ140の優先度情報を取得する。
【0087】
S1202では、情報収集部242は、システム構成情報204から、調査障害が発生したシステム130のシステム構成情報を取得する。
【0088】
S1203では、情報収集部242は、S1201において取得した優先度情報と、S1202において取得したシステム構成情報とに基づいて、メトリクス送信情報を生成(成形)する。
【0089】
S1204では、情報収集部242は、S1203において生成したメトリクス送信情報をエージェントホスト120に送信する。
【0090】
S1205では、エージェントホスト120は、メトリクス送信情報を受信し、受信したメトリクス送信情報に従ってメトリクスをマネージャ111に送信(返却)する。
【0091】
S1206では、情報収集部242は、メトリクスを受信し、受信したメトリクスを情報保存部243に通知し、情報保存部243は、受け取ったメトリクスをメトリクス情報205として保存する。
【0092】
S1207では、出力処理部251は、ユーザ140によりメトリクスが選択されたことを示す情報に基づいて、メトリクス情報205から、選択されたメトリクスを取得する。
【0093】
S1208では、出力処理部251は、S1207において取得したメトリクスをユーザ140が確認可能な確認画面150として出力する。
【0094】
図13は、優先度評価部231が実行する処理(S1103~S1109に係る処理)の一例を示す図である。
【0095】
S1301では、優先度評価部231は、ログイン処理部221からログイン情報を受け取ったか否か(ログインに係る操作であるか否か)を判定する。優先度評価部231は、ログイン情報を受け取ったと判定した場合、S1304に処理を移し、ログイン情報を受け取っていないと判定した場合、S1302に処理を移す。
【0096】
S1302では、優先度評価部231は、ログイン情報をログイン処理部221にリクエストする。例えば、優先度評価部231は、所定の操作が優先度再計算ボタンを押下する操作である場合、当該操作は、システム130にログインが行われた後に行われる操作であるため、優先度評価部231は、当該ログイン時のログイン時刻を含むログイン情報をログイン処理部221にリクエストする。
【0097】
S1303では、優先度評価部231は、ログイン処理部221からログイン情報を取得する。
【0098】
S1304では、優先度評価部231は、エラーイベントまたは警告イベントが存在するか否か(障害発生状況であるか否か)と、エラーイベントまたは警告イベントが選択されている否か(障害選択状況であるか否か)とを判定する。優先度評価部231は、障害発生状況または障害選択状況が発生していると判定した場合、S1306に処理を移し、障害発生状況も障害選択状況も発生していないと判定した場合、S1305に処理を移す。
【0099】
S1305では、優先度評価部231は、デフォルトの優先度をメトリクス優先度として設定する。
【0100】
S1306では、優先度評価部231は、障害情報202から調査障害の障害情報を取得する。例えば、優先度評価部231は、所定の操作がログインに係る操作である場合、前回のログアウト以降に発生した障害の障害情報のうちで最も古い障害の障害情報を取得し、所定の操作が優先度再計算ボタンを押下する操作である場合、ユーザ140により選択された障害の障害情報を取得する。
【0101】
S1307では、優先度評価部231は、調査障害の障害情報の時刻(障害発生時刻)とログイン情報のログイン時刻とから、障害経過時間(障害経過時間=ログイン時刻-障害発生時刻)を算出する。
【0102】
S1308では、優先度評価部231は、調査障害の発現元である監視対象のメトリクス(発現元メトリクス)のメトリクス優先度を「1」に設定する。
【0103】
S1309では、優先度評価部231は、障害経過時間内において発現元より後に発生したエラーまたは警告となったメトリクス(後障害メトリクス)のメトリクス優先度を障害の発生順に「2」、「3」、・・・と設定する。
【0104】
S1310では、優先度評価部231は、調査障害の障害情報から、発現元メトリクスのメトリクス名、発現元メトリクスが取得されるコンポーネントのコンポーネント種別、および発現元メトリクスのメトリクス系統を取得する。
【0105】
S1311では、優先度評価部231は、操作履歴201の中に、発現元メトリクスのメトリクス名と同名のメトリクスの操作履歴が存在するか否かを判定する。優先度評価部231は、存在すると判定した場合、S1312に処理を移し、存在しないと判定した場合、S1313に処理を移す。
【0106】
S1312では、優先度評価部231は、操作履歴取得処理(同名)を実行し、S1315に処理を移す。操作履歴取得処理(同名)では、発現元メトリクスのメトリクス名と同名の過去障害が発生してからの操作履歴が障害経過時間分だけ取得される。なお、操作履歴取得処理(同名)については、図14を用いて説明する。
【0107】
S1313では、優先度評価部231は、操作履歴201の中に、発現元メトリクスが取得されたコンポーネントのコンポーネント種別および発現元メトリクスのメトリクス系統と同種別および同系統のメトリクスの操作履歴が存在するか否かを判定する。優先度評価部231は、存在すると判定した場合、S1314に処理を移し、存在しないと判定した場合、S1305に処理を移す。
【0108】
S1314では、優先度評価部231は、操作履歴取得処理(同種別および同系統)を実行し、S1315に処理を移す。操作履歴取得処理(同種別および同系統)では、発現元メトリクスが取得されたコンポーネントのコンポーネント種別および発現元メトリクスのメトリクス系統と同種別および同系統の過去障害が発生してからの操作履歴が障害経過時間分だけ取得される。なお、操作履歴取得処理(同種別および同系統)については、図15を用いて説明する。
【0109】
S1315では、優先度評価部231は、優先度設定処理を行う。優先度設定処理では、メトリクス優先度が算出されて設定される。優先度設定処理については、図16を用いて説明する。
【0110】
図14は、操作履歴取得処理(同名)の一例を示す図である。
【0111】
S1401では、優先度評価部231は、障害情報202を参照し、発現元メトリクスと同名のメトリクスの過去障害が複数あるか否かを判定する。優先度評価部231は、複数あると判定した場合、S1402に処理を移し、複数ないと判定した場合(発現元メトリクスと同名のメトリクスの過去障害が1つであると判定した場合)、S1405に処理を移す。
【0112】
S1402では、優先度評価部231は、過去障害の数分、S1403の処理を実行する。
【0113】
S1403では、優先度評価部231は、障害情報202から過去障害に係る障害情報を特定し、特定した障害情報をもとに、障害継続時間(障害継続時間=(メトリクスが正常値に戻った時刻)-(メトリクスがエラーまたは警告になった時刻))を算出する。
【0114】
S1404では、優先度評価部231は、操作履歴201の中から、障害継続時間が最も短い過去障害が発生してからの操作履歴を障害経過時間分だけ取得し、操作履歴取得処理(同名)を終了する。
【0115】
S1405では、優先度評価部231は、操作履歴201の中から、発現元メトリクスと同名のメトリクスの過去障害が発生してからの操作履歴を障害経過時間分だけ取得し、操作履歴取得処理(同名)を終了する。
【0116】
図15は、操作履歴取得処理(同種別および同系統)の一例を示す図である。
【0117】
S1501では、優先度評価部231は、障害情報202を参照し、発現元メトリクスと同種別および同系統のメトリクスの過去障害が複数あるか否かを判定する。優先度評価部231は、複数あると判定した場合、S1502に処理を移し、複数ないと判定した場合(発現元メトリクスと同種別および同系統のメトリクスの過去障害が1つであると判定した場合)、S1505に処理を移す。
【0118】
S1502では、優先度評価部231は、過去障害の数分、S1503の処理を実行する。
【0119】
S1503では、優先度評価部231は、障害情報202から過去障害に係る障害情報を特定し、特定した障害情報をもとに、障害継続時間(障害継続時間=(メトリクスが正常値に戻った時刻)-(メトリクスがエラーまたは警告になった時刻))を算出する。
【0120】
S1504では、優先度評価部231は、操作履歴201の中から、障害継続時間が最も短い過去障害が発生してからの操作履歴を障害経過時間分だけ取得し、操作履歴取得処理(同種別および同系統)を終了する。
【0121】
S1505では、優先度評価部231は、操作履歴201の中から、発現元メトリクスと同種別および同系統のメトリクスの過去障害が発生してからの操作履歴を障害経過時間分だけ取得し、操作履歴取得処理(同種別および同系統)を終了する。
【0122】
図16は、優先度設定処理の一例を示す図である。
【0123】
S1601では、優先度評価部231は、S1308およびS1309において発現元メトリクスのメトリクス優先度と後障害メトリクスのメトリクス優先度とを設定しているので、操作履歴取得処理(同名)または操作履歴取得処理(同種別および同系統)において取得した操作履歴から、発現元メトリクスの操作履歴と後障害メトリクスの操作履歴とを除外する。
【0124】
S1602では、優先度評価部231は、除外後の各操作履歴に含まれるホスト名のエージェントホスト120を備えるシステム130(過去障害が発生したシステム130)のシステム構成情報をシステム構成情報204から取得する。
【0125】
S1603では、優先度評価部231は、除外後の操作履歴の数(操作数)だけ、S1604およびS1605の処理を実行する。
【0126】
S1604では、優先度評価部231は、S1602において取得したシステム構成情報と、過去障害が発生した発現元のエージェントホスト120とをもとに、処理対象の操作履歴に係るエージェントホスト120のhop数(ユーザにより操作されたメトリクスが取得されたコンポーネントを含むエージェントホスト120のhop数)を算出する。
【0127】
S1605では、優先度評価部231は、S1604において算出したhop数について、操作されたメトリクスの操作回数を「1」加算(操作回数=+1)する。付言するならば、優先度評価部231は、hop数およびメトリクスの分類(メトリクス名、または、コンポーネント種別およびメトリクス系統の組合せ)ごとに操作回数を管理している。
【0128】
S1606では、優先度評価部231は、メトリクス優先度を設定済みのメトリクス(除外した発現元メトリクスおよび後障害メトリクス)以降に、メトリクスの操作回数の降順に、各メトリクスを並べ、メトリクス優先度を決定する。なお、メトリクスの操作回数が同じである場合は、操作履歴の昇順(古い順)にメトリクスを並べて、メトリクス優先度を決定してもよいし、同じメトリクス優先度を決定してもよい。
【0129】
図17は、情報収集部242が実行する処理(S1201~S1206に係る処理)の一例を示す図である。
【0130】
S1701では、情報収集部242は、調査障害が発生したシステム130に含まれる全てのエージェントホスト120(全エージェントホスト120)についての優先度情報203を優先度取得部241から受け取る。
【0131】
S1702では、情報収集部242は、エージェントホスト120の数だけ、S1703の処理を実行する。
【0132】
S1703では、情報収集部242は、メトリクス送信情報生成処理を実行する。メトリクス送信情報生成処理では、処理対象のエージェントホスト120において取得可能なメトリクスについて優先度情報203に基づいて優先度ランクが設定されたメトリクス送信情報が生成される。メトリクス送信情報生成処理については、図18を用いて説明する。
【0133】
S1704では、情報収集部242は、エージェントホスト120の数だけ、S1705およびS1706の処理を実行する。
【0134】
S1705では、情報収集部242は、S1703において生成されたメトリクス送信情報を処理対象のエージェントホスト120に配布する。
【0135】
S1706では、情報収集部242は、処理対象のエージェントホスト120から、メトリクスを受け取る。
【0136】
S1707では、情報収集部242は、全エージェントホスト120から受け取ったメトリクスを情報保存部243に与える。
【0137】
図18は、メトリクス送信情報生成処理の一例を示す図である。
【0138】
S1801では、情報収集部242は、処理対象のエージェントホスト120を備えるシステム130(調査障害が発生したシステム130)のシステム構成情報をシステム構成情報204から取得する。
【0139】
S1802では、情報収集部242は、S1801において取得したシステム構成情報と、調査障害が発生した発現元のエージェントホスト120とをもとに、処理対象のエージェントホスト120のhop数を算出する。
【0140】
S1803では、情報収集部242は、メトリクス情報205から、処理対象のエージェントホストにおいて取得可能なメトリクスの一覧を取得する。
【0141】
S1804では、情報収集部242は、取得可能なメトリクスの数だけ、S1805~S1811の処理を実行する。
【0142】
S1805では、情報収集部242は、処理対象のメトリクスの分類(当該メトリクス)が優先度情報203に含まれているか否かを判定する。情報収集部242は、含まれていると判定した場合、S1807に処理を移し、含まれていない場合、S1806に処理を移す。
【0143】
S1806では、情報収集部242は、当該メトリクスの優先度ランクを「D」に設定(決定)する。
【0144】
S1807では、情報収集部242は、優先度情報203における当該メトリクスのメトリクス優先度が、第1の閾値(例えば、上位25%)以内であるか否かを判定する。情報収集部242は、第1の閾値以内であると判定した場合、S1808に処理を移し、第1の閾値以内でない(上位25%より下位である)と判定した場合、S1809に処理を移す。
【0145】
S1808では、情報収集部242は、当該メトリクスの優先度ランクを「A」に設定する。
【0146】
S1809では、情報収集部242は、優先度情報203における当該メトリクスのメトリクス優先度が、第2の閾値(例えば、上位26%)以下、かつ、第3の閾値(例えば、上位50%)以内であるか否か(例えば、上位50%より下位であるか否か)を判定する。情報収集部242は、第2の閾値以下、かつ、第3の閾値以内であると判定した場合、S1810に処理を移し、第3の閾値より下位であると判定した場合、S1811に処理を移す。
【0147】
S1810では、情報収集部242は、当該メトリクスの優先度ランクを「B」に設定する。
【0148】
S1811では、情報収集部242は、当該メトリクスの優先度ランクを「C」に設定する。
【0149】
S1812では、情報収集部242は、エージェント121に配布するメトリクス送信情報を生成する。例えば、情報収集部242は、当該メトリクスのメトリクス情報または当該メトリクスの優先度情報をもとに、S1806、S1808、S1810、またはS1808において設定した優先度ランクを含むメトリクス送信情報を生成する。
【0150】
図19は、エージェント121が実行する一連の処理を示すシーケンスの一例を示す図である。
【0151】
S1900では、メトリクス収集部321は、メトリクス(監視対象データ303)を取得し、取得したメトリクスをメトリクス送信情報処理部312に通知する。
【0152】
S1901では、マネージャホスト110は、メトリクス送信情報をエージェントホスト120に送信する。
【0153】
S1902では、メトリクス送信情報受信部311は、メトリクス送信情報を受信し、受信したメトリクス送信情報をメトリクス送信情報301として登録する。メトリクス送信情報受信部311は、登録完了の戻り値を受け取ると、メトリクス送信情報の送信完了の戻り値をマネージャホスト110に送信する。
【0154】
S1903では、メトリクス送信情報処理部312は、メトリクス送信情報301を取得する。
【0155】
S1904では、メトリクス送信情報処理部312は、メトリクス収集部321により通知された全てのメトリクスをmetric_map(Map変数)に格納する。
【0156】
S1905では、メトリクス送信情報処理部312は、metric_mapをメトリクス一時保存部331に与える。
【0157】
S1906では、メトリクス一時保存部331は、metric_mapをメトリクス一時保存情報302として登録し、登録完了の戻り値を受け取ると、登録完了の戻り値をメトリクス送信情報処理部312に通知する。
【0158】
S1907では、メトリクス送信情報処理部312は、metric_mapの各要素に対してキー「send_flag」の値を設定する。
【0159】
S1908では、メトリクス送信情報処理部312は、metric_mapのキー「send_flag」の値が「true」である要素をsend_metric_map(Map変数)に格納する。
【0160】
S1909では、メトリクス送信情報処理部312は、send_metric_mapをメトリクス送信部341に与える。
【0161】
S1910では、メトリクス送信部341は、send_metric_mapに格納されているメトリクスをマネージャホスト110に送信する。
【0162】
S1911では、マネージャホスト110は、メトリクスの受信完了の戻り値をメトリクス送信部341に送信する。
【0163】
図20は、メトリクス送信情報処理部312が実行する処理(S1903~S1909に係る処理)の一例を示す図である。
【0164】
S2001では、メトリクス送信情報処理部312は、メトリクス送信情報301から、メトリクス送信情報を取得する。
【0165】
S2002では、メトリクス送信情報処理部312は、メトリクス収集部321からメトリクスを取得する。
【0166】
S2003では、メトリクス送信情報処理部312は、取得した全てのメトリクスをmetric_map(Map型変数)に格納する。
【0167】
S2004では、メトリクス送信情報処理部312は、metric_mapをメトリクス一時保存部331に与える。
【0168】
S2005では、メトリクス送信情報処理部312は、metric_mapの数だけ、S2006~S2008の処理を実行する。
【0169】
S2006では、メトリクス送信情報処理部312は、前回のメトリクスの送信から経過した時間が送信間隔以上であるか否か(送信時間であるか否か)を判定する。メトリクス送信情報処理部312は、送信時間であると判定した場合、S2007に処理を移し、送信時間でないと判定した場合、S2008に処理を移す。例えば、送信間隔は、送信間隔テーブル2020に示すように、優先度ランクに対応して設定されている。
【0170】
S2007では、メトリクス送信情報処理部312は、処理対象のmetric_map(当該メトリクス)のキー「send_flag」の値に「true」を設定する。
【0171】
S2008では、メトリクス送信情報処理部312は、処理対象のmetric_map(当該メトリクス)のキー「send_flag」の値に「false」を設定する。
【0172】
S2009では、メトリクス送信情報処理部312は、metric_mapの数だけ、S2010およびS2011の処理を実行する。
【0173】
S2010では、メトリクス送信情報処理部312は、キー「send_flag」が「true」であるか否かを判定する。メトリクス送信情報処理部312は、「true」であると判定した場合、S2011に処理を移し、「true」でないと判定した場合、処理対象を次のmetric_mapに移し、S2010の判定を行う。
【0174】
S2011では、メトリクス送信情報処理部312は、当該メトリクスをsend_metric_map(Map変数)に格納する。
【0175】
S2012では、メトリクス送信情報処理部312は、send_metric_mapをメトリクス送信部341に与える。
【0176】
例えば、エージェントホスト120「A」がメトリクス送信情報2030を取得した場合、優先度ランクおよび送信間隔がテーブル2020に示す内容であるとき、エージェントホスト120「A」は、メトリクスAを15秒間隔、メトリクスBを15分間隔、他のメトリクスを30分間隔でマネージャホスト110に送信する。
【0177】
本実施の形態によれば、ユーザごとに取得するメトリクスを時間経過に伴い動的に変化させることで、データ量を削減することができる。
【0178】
(II)付記
上述の実施の形態には、例えば、以下のような内容が含まれる。
【0179】
上述の実施の形態においては、本発明を監視システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
【0180】
また、上述の実施の形態においては、複数のシステムに適用する場合について述べたが、本発明はこれに限らない。例えば、単一のシステムにするようにしてもよい。この場合、hop数に係る処理を行ってもよいし、hop数に係る処理を行わなくてもよい。
【0181】
また、上述の実施の形態においては、メトリクス優先度に応じて優先度ランクを設定する場合について述べたが、本発明はこれに限らない。例えば、優先度ランクを設けることなく、メトリクス優先度に応じて送信間隔が規定されていてもよい。
【0182】
また、上述の実施の形態においては、メトリクスの分類として、メトリクス名と、コンポーネント種別およびメトリクスの系統の組合せとを用いる場合について述べたが、本発明はこれに限らない。例えば、メトリクスの分類として、メトリクス名であってもよいし、コンポーネント種別およびメトリクスの系統の組合せであってもよいし、コンポーネント種別であってもよいし、メトリクスの系統であってもよい。
【0183】
また、上述の実施の形態においては、ユーザごとにメトリクス優先度を決定する場合について述べたが、本発明はこれに限らない。例えば、第1のユーザ(例えば、熟練者)のメトリクス優先度を第2のユーザ(例えば、初心者)に適用するようにしてもよい。
【0184】
また、上述の実施の形態においては、エージェントホストが複数である場合について述べたが、本発明はこれに限らない。例えば、エージェントホストが1つであってもよい。
【0185】
また、上述の実施の形態においては、メトリクスを優先して取得する場合について述べた。メトリクスを優先して取得するとは、優先度が高いほどメトリクスの取得間隔を短くする構成に限るものではない。例えば、優先度が所定の値より大きい場合にメトリクスを取得する構成であってもよいし、優先度が所定の値より大きい場合に優先度が高いほどメトリクスの取得間隔を短くするであってもよいし、その他の構成であってもよい。
【0186】
また、上述の実施の形態において、プログラムの一部またはすべては、プログラムソースから、監視システム100を実現するコンピュータのような装置にインストールされてもよい。プログラムソースは、例えば、ネットワークで接続されたプログラム配布サーバまたはコンピュータが読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。また、上述の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
【0187】
また、上述の実施の形態において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部または一部が1つのテーブルであってもよい。
【0188】
また、上述の実施の形態において、説明の便宜上、監視システムに係る情報を、テーブルを用いて説明したが、データ構造はテーブルに限定されるものではない。監視システムに係る情報は、XML(Extensible Markup Language)、YAML(YAML Ain't a Markup Language)、ハッシュテーブル、木構造等、テーブル以外のデータ構造によって表現されてもよい。
【0189】
また、上述の実施の形態において、図示および説明した画面は、一例であり、受け付ける情報が同じであるならば、どのようなデザインであってもよい。
【0190】
また、上述の実施の形態において、図示および説明した画面は、一例であり、提示する情報が同じであるならば、どのようなデザインであってもよい。
【0191】
また、上述の実施の形態において、情報の出力は、ディスプレイへの表示に限るものではない。情報の出力は、スピーカによる音声出力であってもよいし、ファイルへの出力であってもよいし、印刷装置による紙媒体等への印刷であってもよいし、プロジェクタによるスクリーン等への投影であってもよいし、その他の態様であってもよい。
【0192】
また、上記の説明において、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【0193】
上述した実施の形態は、例えば、以下の特徴的な構成を有する。
【0194】
(1)
監視対象(エージェントホスト120のコンポーネント、プロセッサ421、主記憶装置422、補助記憶装置423、入力装置424、出力装置425、通信装置426等)のメトリクス(監視対象の性能を示す時系列でまとまった数値データ、監視対象の状態を示す時系列でまとまった数値データ等)を取得するエージェントホスト(例えば、エージェントホスト120)と、上記エージェントホストにより取得されたメトリクスを管理するマネージャホスト(例えば、マネージャホスト110)と、上記エージェントホストにより取得されたメトリクスが障害調査のために上記マネージャホストによりユーザ端末(例えば、ユーザ端末141)に送信されたことを示す操作履歴(例えば、操作履歴201、操作履歴テーブル500)を記憶する記憶部(補助記憶装置423、マネージャホスト110と通信可能な記憶装置等)と、を備え、所定のユーザ(例えば、ユーザ140)により所定の障害(前回のログアウト以降に発生している最も古い障害、ユーザ140により指定された障害等)について障害調査が行われる場合、上記マネージャホストは、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記所定の障害を示したメトリクスの分類(コンポーネントの種別およびメトリクスの系統の組合せ、メトリクス名等)が一致するメトリクスの分類の障害が発生してからの所定の期間(障害経過時間、事前に設定された期間等)分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、上記エージェントホストが取得するメトリクスの優先度(メトリクス優先度、優先度ランク等)を上記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って上記エージェントホストにメトリクスを要求(例えば、メトリクス送信情報を送信)し、上記エージェントホストは、上記マネージャホストによる要求に応じてメトリクスを上記マネージャホストに送信し、上記マネージャホストは、上記エージェントホストから送信されたメトリクスを上記所定のユーザのユーザ端末に送信する。
【0195】
上記構成によれば、例えば、過去の経験が反映された操作履歴に基づくメトリクスが優先して取得され、かつ、データ量が削減されるので、障害の対応を早めることができる。
【0196】
(2)
上記マネージャホストは、上記所定の期間として、上記所定の障害が発生してから上記所定のユーザがログインするまでの経過時間(例えば、障害経過時間)を算出し(例えば、S1307参照)、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの上記経過時間分の操作履歴を抽出する。
【0197】
上記構成によれば、例えば、経過時間分の操作履歴に基づいてメトリクスの優先度が決定されるので、障害調査のために取得するメトリクスを制限しつつ、初動対応に必要なメトリクスをユーザが直ぐに確認することができる。
【0198】
(3)
上記マネージャホストは、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記所定の障害を示すメトリクスが取得された監視対象の種別(例えば、コンポーネント種別)および上記メトリクスの系統(例えば、メトリクス系統)が一致する監視対象の種別およびメトリクスの系統の障害が発生してからの所定の期間分の操作履歴を抽出し(例えば、図15参照)、抽出した操作履歴を監視対象の種別およびメトリクスの系統ごとに計数し、上記エージェントホストが取得するメトリクスの優先度を上記メトリクスが取得される監視対象の種別および上記メトリクスの系統が一致する監視対象の種別およびメトリクスの系統の操作履歴の数に基づいて決定し、決定した優先度に従って上記エージェントホストにメトリクスを要求する。
【0199】
上記構成によれば、例えば、障害調査のために取得するメトリクスを監視対象の種別とメトリクスの系統との組合せに細分化することができるので、取得するデータ量をさらに削減することができる。
【0200】
(4)
上記マネージャホストは、第1のシステムに含まれる複数のエージェントホストの各々により取得されたメトリクスと、上記第1のシステムとは異なる第2のシステムに含まれる複数のエージェントホストの各々により取得されたメトリクスと、を管理し(例えば、図1参照)、上記第1のシステムの第1のエージェントホストが取得するメトリクスが第1の障害を示し、上記第1の障害について所定のユーザにより障害調査が行われる場合、上記マネージャホストは、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記第1の障害のメトリクスの分類と一致するメトリクスの分類の第2の障害が発生してからの所定の期間分の操作履歴を抽出し(例えば、S1312、S1314参照)、上記第2の障害が発生した第2のエージェントホストが含まれるシステムが上記第2のシステムであるとき、上記第2のエージェントホストと上記第2のシステムの他のエージェントホストと間に構成されている構成要素の数であるhop数を上記第2のシステムの構成情報をもとに算出し(例えば、S1604参照)、上記所定の期間分の操作履歴をメトリクスの分類およびhop数ごとに計数し(例えば、S1605参照)、上記所定の期間分の操作履歴に係るメトリクスの優先度を、上記メトリクスの分類および上記メトリクスを取得するエージェントホストのhop数が一致するメトリクスの分類およびhop数の操作履歴の数に応じて決定し(例えば、S1606参照)、上記第1のエージェントホストと、上記第1のシステムの他のエージェントホストとの間に構成されている構成要素の数であるhop数を上記第1のシステムの構成情報をもとに算出し(例えば、S1802参照)、上記第1のシステムに含まれる複数のエージェントホストの各々に送信するメトリクスの優先度(優先度ランク、送信間隔等)を、上記メトリクスの分類および上記メトリクスを取得するエージェントホストのhop数が一致するメトリクスの優先度に応じて決定する。
【0201】
上記構成によれば、例えば、障害調査が行われる障害が発生しているシステムと、優先度を決定するための操作履歴の抽出元の障害が発生したシステムとが異なる場合であったとしても、障害調査のために取得するメトリクスの優先度を決定することができる。
【0202】
(5)
上記記憶部には、障害を示したメトリクスの分類を示す情報と、上記障害が発生した日時の情報と、上記障害が復旧した日時の情報とを含む障害情報(障害情報202、障害テーブル600等)が記憶され、上記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が複数ある場合、上記マネージャホストは、上記記憶部に記憶されている障害情報をもとに、上記複数の障害の各々について、障害が継続した時間を示す障害継続時間を算出し(S1403、S1503等を参照)、上記複数の障害の中から、算出した障害継続時間が最も短い一の障害を特定し、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記一の障害が発生してからの所定の期間分の操作履歴を抽出する(S1404、S1504等を参照)。
【0203】
上記構成によれば、例えば、障害継続時間が最も短い障害に係る操作履歴に基づいてメトリクスの優先度が決定されるので、障害の対応をより早めることができる。
【0204】
(6)
上記マネージャホストは、決定した優先度が高いほどメトリクスを送信する間隔を短くするように設定し(S1804~S1811等を参照)、設定した間隔でメトリクスを送信するように上記エージェントホストに要求する。
【0205】
上記構成によれば、例えば、優先度が低いメトリクスについては、取得される間隔が長くなるので、データ量を適切に削減することができる。
【0206】
(7)
上記マネージャホストは、ユーザにより障害調査が行われる障害を指定可能な画面(例えば、GUI260)を上記ユーザのユーザ端末に提供し、上記画面を介して所定のユーザにより所定の障害が指定された場合、上記マネージャホストは、上記記憶部により記憶されている上記所定のユーザの操作履歴の中から、上記所定のユーザにより指定された上記所定の障害を示したメトリクスの分類が一致するメトリクスの分類の障害が発生してからの所定の期間分の操作履歴を抽出し、抽出した操作履歴をメトリクスの分類ごとに計数し、上記エージェントホストが取得するメトリクスの優先度を上記メトリクスの分類が一致するメトリクスの分類の操作履歴の数に基づいて決定し、決定した優先度に従って上記エージェントホストにメトリクスを要求する。
【0207】
上記構成によれば、例えば、ユーザは、所望の障害について障害調査を行うことができる。
【0208】
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
【0209】
「A、B、およびCのうちの少なくとも1つ」という形式におけるリストに含まれる項目は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)または(A、B、およびC)を意味することができると理解されたい。同様に、「A、B、またはCのうちの少なくとも1つ」の形式においてリストされた項目は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)または(A、B、およびC)を意味することができる。
【符号の説明】
【0210】
100……監視システム、110……マネージャホスト、120……エージェントホスト。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20