本実施形態において、コンピュータシステムにおける装置を監視するサーバが、監視の内容を示す稼働データと、稼働データが運用管理者によって確認された履歴とを用いて、複数の異なる監視業務評価値を算出する。そして、算出された監視業務評価値によって、運用管理者に、いずれの監視業務が不十分であるかを認識させる。
以下、図面を用いて実施形態を説明する。
図1は、本発明の実施形態のコンピュータシステムを示すブロック図である。
実施形態のコンピュータシステムは、監視サーバ3、データベース4、管理者端末20及び監視対象機器を有する。また、実施形態のコンピュータシステムは、管理ネットワーク1、通信回線2、及び、通信回線11などのネットワークを有する。
本実施形態の監視対象機器は、コンピュータシステムを用いるユーザにサービスを提供するための複数の機器である。監視対象機器には、複数の物理マシン5(5−1〜5−8)、複数のスイッチ6(6−1〜6−6)、複数のルータ7(7−1、7−2)、複数のファイバ・チャネル・スイッチ(FC−SW)8(8−1、8−2)、及び、ストレージ9(9−1、9−2)などが含まれる。
また、物理マシン5は、複数の仮想マシンを実装してもよい。各物理マシン5が実装する仮想マシンは、Webアプリケーション、Webコンテナ及びOSを有する。
スイッチ6は、ルータ7と物理マシン5を仲介するネットワーク機器である。ルータ7は、運用管理者らが管理するコンピュータシステムとWAN10を接続するネットワーク機器である。FC−SW8は、物理マシン5及びストレージ9の間のトラフィックを仲介するネットワーク機器である。ストレージ9は、物理マシンの使用するデータを格納する機器である。
監視対象機器は、物理的な通信回線2を介して管理ネットワーク1に接続される。また、監視対象機器は、物理的な通信回線11を介して、ユーザにサービスを提供するためのWide Area Network(WAN)10と相互に接続される。
管理ネットワーク1及び通信回線2を含むネットワークは、監視サーバ3、データベース4及び管理者端末20と、監視対象機器とを接続するためのネットワークである。本実施形態のコンピュータシステムの運用管理者は、管理ネットワーク1及び通信回線2を介して、監視対象機器を監視し、また、監視対象機器の設定を変更する。
なお、運用管理者は、通信回線11を含むネットワークを介して、監視対象機器を監視し、また、監視対象機器の設定を変更してもよい。例えば、監視対象機器を監視するために送受信されるトラフィックのデータ量が少ない場合、運用管理者が監視対象機器を監視するためのトラフィックが、監視対象機器とWAN10とのトラフィックに影響を与えることは少ない。このため、管理ネットワーク1を用いることによって通信回線11の負荷を軽減する必要がなく、運用管理者は、通信回線11を介して、監視対象機器を監視することができる。
管理者端末20は、本実施形態のコンピュータシステムの運用管理者が使用する端末である。管理者端末20は、監視サーバ3が有する各プログラムと通信するためのソフトウェア(以下、監視クライアント)を有し、監視クライアントを実行する。
本実施形態の監視クライアントは、Webブラウザであるが、管理者端末20が有する監視クライアントは、専用の通信プロトコルを使用するGUI(Graphical User Interface)、又は、HTTPによって通信するWebブラウザなどでもよい。
監視サーバ3は、監視対象機器から、監視対象機器が提供するサービスの稼働状況を示すデータ(以下、稼働データ)を収集するサーバである。そして、収集された稼働データを、データベース4に格納するサーバである。
また、監視サーバ3は、稼働データを管理者端末20に送信し、管理者端末20の監視クライアントに出力させる。そして、運用管理者は、監視クライアントから出力される稼働データを参照することによって、監視対象機器の監視項目を監視する。
本実施形態の稼働データとは、OS(Operating System)に関するデータ、OS上で複数のアプリケーションから共通して使用されるミドルウェア(データベース、Webコンテナなど)に関するデータ、及びアプリケーション固有のデータなどである。監視対象機器が有するOS、又はミドルウェア等は、監視対象機器の状態を示す稼働データを生成する。
また、監視対象機器において異常な事象が発生した場合、監視対象機器が有するOS又はミドルウェア等は、監視対象機器が異常であることを示す稼働データを生成する。稼働データの形式は、数値、比率、又は、ログを示す文字列などである。稼働データには、監視対象機器の状態を示す複数のデータが格納される。
監視サーバ3は、稼働データに監視対象機器が異常を示すデータが含まれるか否かを判定する検査を行うことによって、監視対象機器において発生した異常、又は、障害の内容を特定することができる。
監視サーバ3は、稼働データを運用管理者に提供する機能、及び、稼働データに格納された異常の内容を運用管理者に連絡する機能を持つ。更に、本実施形態の監視サーバ3は、運用管理者による監視の十分さを定量化した値(以下、監視業務評価値)を、運用管理者に提供する機能を持つ。
図2は、本発明の実施形態の監視サーバ3の物理的な構成を示すブロック図である。
監視サーバ3は、インターフェイス(I/F)31、プロセッサ32、メモリ33、及びデータパス34を有する。図2に示す監視サーバ3は、一つの計算機であるが、複数の仮想化された計算機等によって実装されてもよい。
I/F31は、ネットワークインターフェース等である。監視サーバ3は、I/F31を介して、管理ネットワーク1からパケットを受信し、管理ネットワーク1へパケットを送信する。
プロセッサ32は、一つのプロセッサを有しても、複数のプロセッサを有してもよい。プロセッサ32は、例えば、CPUである。プロセッサ32は、データパス34を介して、メモリ33に保持されるプログラムを読み出す。そして、読み出されたプログラムを実行する。
メモリ33は、一時記憶領域である。メモリ33は、稼働データ収集プログラム331、稼働データ表示プログラム332、アラート送信プログラム333、及び、監視業務評価プログラム334を保持する。また、後述する処理によって生成される監視業務評価値M1(2400)(以下、評価値2400と記載)、監視業務評価値M2(2300)(以下、評価値2300と記載)、監視業務評価値M3(2100)(以下、評価値2100と記載)を保持する。
稼働データ収集プログラム331は、監視対象機器から稼働データを収集する機能を有する。稼働データ収集プログラム331は、稼働データを収集するため、例えば、監視対象機器においてSimple Network Management Protocol(SNMP)などのエージェントを実行させ、そのエージェントと稼働データ収集プログラム331との間で通信することによって、稼働データを収集する方法を用いる。稼働データ収集プログラム331は、収集された稼働データをデータベース4に格納する。
稼働データ表示プログラム332は、管理者端末20から送信される要求に従って、データベース4に格納された稼働データを、管理者端末20に表示する機能を有する。
例えば、管理者端末20が有するWebブラウザを介して、運用管理者が、複数の稼働データを表示する要求を稼働データ表示プログラム332へ送信した場合、稼働データ表示プログラム332は、管理者端末20から送信された要求に従って、データベース4から複数の稼働データを抽出する。そして、稼働データ表示プログラム332は、抽出された複数の稼働データを含むWebページを生成する。そして、稼働データ表示プログラム332は、生成されたWebページを管理者端末20のWebブラウザに送信する。
さらに、稼働データ表示プログラム332は、運用管理者にとっての利便性を高めるため、1画面に表示する稼働データの種類を、運用管理者の要求に従ってカスタマイズするための機能を有する。稼働データ表示プログラム332は、このカスタマイズされた画面表示に関する設定を、データベース4に格納する。
また、本発明の稼働データ表示プログラム332は、後述する監視業務評価値の計算のため、各運用管理者のアクセスログをデータベース4に格納する機能を有する。
アラート送信プログラム333は、リアルタイム又は定期的に、データベース4に格納された稼働データを検査する機能を有する。そして、アラート送信プログラム333は、稼働データを検査した結果、稼働データに監視対象機器の異常を示すデータがあると判定される場合、異常の内容を運用管理者に伝えるため、アラートメッセージを管理ネットワーク1に送信する。
アラート送信プログラム333によって送信されるアラートメッセージは、運用管理者へのメール、又は、他の管理システムへのメッセージ(例えば、SNMPメッセージ)である。アラートメッセージは、管理ネットワーク1を介して、管理者端末20、又は、運用管理者が使用する機器に送信される。
運用管理者は、アラート送信プログラム333に、前述の検査をさせるため、検査する対象の稼働データ、異常か否かを判定するための条件式、及び、異常を判定した場合の処理を、あらかじめデータベース4に格納する。以下では、これらの稼働データを検査するための条件を、アラート送信条件と記載する。
本実施形態のアラート送信プログラム333は、後述する監視業務評価値を算出するため、各アラート送信条件によって処理される結果を示す検査ログを、データベース4に格納する。
監視業務評価プログラム334は、管理者端末20から送信される要求に従って、本実施形態のコンピュータシステムの監視業務評価値を算出し、算出された監視業務評価値を、管理者端末20に表示させる機能を有する。例えば、管理者端末20が有するWebブラウザを介して、運用管理者が、監視業務評価値を監視業務評価プログラム334に要求した場合、監視業務評価プログラム334は、監視業務評価値を算出する。そして、算出された監視業務評価値を含むWebページを生成し、生成されたWebページを管理者端末20のWebブラウザに送信する。
監視業務評価プログラム334は、監視業務評価値に必要なデータを、データベース4から読み出す。
なお、プロセッサ32は、前述の各プログラムを処理することによって、所定の機能を実現する機能部として動作する。例えば、プロセッサ32は、稼働データ収集プログラム331を処理することによって稼働データ収集部として機能し、稼働データ表示プログラム332を処理することによって稼働データ表示部として機能する。他のプログラムについても同様である。さらに、プロセッサ32は、各プログラムによって実行される複数の処理のそれぞれを実現する機能部としても動作する。本実施形態の監視サーバ3は、これらの機能部を含む装置又はシステムである。
また、メモリ33に保持される各プログラムは、プログラム配布サーバ、又は、計算機読み出し可能な非一時的記憶媒体によって監視サーバ3にインストールされてもよい。また、監視サーバ3は不揮発性記憶デバイスを有し、前述の各プログラムを不揮発性記憶デバイスに保持してもよい。そして、プロセッサ32は、各プログラムを実行する際に、各プログラムをメモリ33に読み出してもよい。
図3は、本発明の実施形態のデータベース4に格納されるデータを示すブロック図である。
データベース4は、監視業務評価値を算出するために必要なデータ、及び、稼働データを格納するデータベースである。データベース4は、稼働データ1000、稼働データ表示設定1100、運用管理者情報1200、アクセスログ1300、アラート送信条件1400、検査ログ1500、担当者情報1600、アラート送信履歴1700、及び、観点の重要性1800を保持する。
後述する各データの説明において、データベース4に格納される前述のデータは、すべてテーブルに格納される。しかし、本実施形態のデータは、CSV等による方法によってテキストファイルに格納されてもよく、データを読み出す各プログラムが、各データを特定できれば、いかなる方法によってデータベース4に格納されてもよい。
なお、前述の監視サーバ3に保持されるプログラム、及び、データベース4に保持されるデータ等は、不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、又は、ICカード、SDカード、DVD等の監視サーバ3によって読み取り可能な非一時的データ記憶媒体に格納されてもよい。
図4は、本発明の実施形態の稼働データ1000を示す説明図である。
稼働データ1000は、稼働データ収集プログラム331によって、リアルタイム又は定期的に各監視対象機器から収集された稼働データである。
なお、各監視対象機器において生成される稼働データは、各監視対象機器が有する、CPU(プロセッサを含む)、メモリ、及び、ネットワークI/F等の物理装置、並びに、OS、及び、アプリケーション等のソフトウェアにおいて発生するイベントを示す。本実施形態において、各イベントの種類を、監視項目と記載する。
稼働データ1000は、列1001〜列1005を含む。列1001は、本実施形態のコンピュータシステムにおいて、稼働データを一意に識別するための稼働データIDを示す。
列1002は、稼働データが生成された監視対象機器を一意に識別するための監視対象機器IDを示す。監視対象機器IDは、ホスト名、又は、IPアドレスなどでもよい。本実施形態の列1002には、監視対象機器IDとしてホスト名が格納され、物理マシン5、スイッチ6、及び、ルータ7等の各監視対象機器を識別する。
列1003は、稼働データの種別、すなわち、監視項目を一意に識別するための監視項目IDを示す。
列1004は、稼働データに格納される値が測定された測定時刻を示す。すなわち、列1004は、稼働データが生成された時刻を示す。列1005は、稼働データの値を示す。
図4に示す稼働データ1000は、例えば、行1011及び行1016を含む。行1011及び行1016は、監視対象機器host1(監視対象機器IDが「host1」である監視対象機器、以下同じ)において、「OSのCPU使用率」についての監視項目が測定された結果を示す。行1011は、2011年1月17日0時において測定された結果を示し、行1016は、2011年1月17日1時において測定された結果を示す。
図5は、本発明の実施形態の稼働データ表示設定1100を示す説明図である。
稼働データ表示設定1100は、稼働データ表示プログラム332によって管理者端末20等に表示される稼働データの表示方法を示す。稼働データ表示設定1100は、監視サーバ3にあらかじめ格納されるか、又は、運用管理者が画面表示をカスタマイズする際に生成される。
なお、本実施形態において稼働データ表示設定1100の各行に含まれる複数の情報を、稼働データ表示設定と記載する。
稼働データ表示設定1100に含まれる各行は、画面に表示される稼働データ、及び、稼働データの表示方法を示す。稼働データ表示設定1100は、列1101〜列1107を含む。
列1101は、稼働データ表示プログラム332によって表示される各画面を一意に識別するための画面IDを示す。列1101が同じ画面IDを示す複数の行は、一つの画面に同時に表示される稼働データを示す。列1101に含まれる画面IDは、各画面に対応するURL、又は、各画面に対応するURLに含まれるパラメータなどと一意に関連付けられる。
列1102は、各画面に表示される稼働データが、生成された監視対象機器を一意に識別するための監視対象機器IDを示す。列1102に格納される値は、列1002に格納される値に対応する。
列1103は、各画面に表示される稼働データの監視項目を一意に識別するための監視項目IDを示す。列1103に格納される値は、列1003に格納される値に対応する。
例えば、行1111及び行1112は、画面1(画面IDが1である画面、以下同じ)が、監視対象機器host1及び監視対象機器host2(監視対象機器IDがhost2である監視対象機器、以下同じ)において生成された稼働データのうち、監視項目IDが「OSのCPU使用率」である稼働データを表示することを示す。
列1104は、各画面に表示される稼働データの要約方法を示す。本実施形態の要約方法には、例えば、一定期間に生成された稼働データに含まれる値(稼働データ1000の列1005に対応)の、最大値、最小値、又は、平均値などを画面に表示する方法がある。
列1105は、各画面に表示される閾値表示を示す。具体的には、各画面に表示される閾値の有無と、閾値表示が有った場合の閾値とを示す。
本実施形態の閾値表示の方法には、例えば、稼働データが棒グラフによって表示される場合、棒グラフに表示される稼働データの値と、閾値を示す線とを同じ画面に表示する方法がある。また、稼働データが行及び列を含むマトリクスによって表示される場合、閾値を越える値が含まれるセルの背景色を他のセルの背景色と変えるなどによって、強調して表示する方法がある。
列1106は、各画面において表示されるベースラインの有無と、ベースラインとして表示される稼働データの内容とを示す。本実施形態のベースラインとは、表示される稼働データが正常値か否かを運用管理者が判断するため、表示される稼働データと比較される、基準となる値のことである。ベースラインは、過去の稼働データに含まれる値の平均値等によって示される値である。
稼働データ表示プログラム332がベースラインを画面上に表示することによって、表示された稼働データが正常値から外れた値を含むか否かを、運用管理者が判断しやすくなる。ベースラインは、例えば、昨日の稼働データの値、一週間前の稼働データの値、又は、過去の所定の時間帯における稼働データの値の平均値などである。
列1107は、各行が示す稼働データ表示設定が有効か無効かを示す。アクセスログから監視業務評価値を算出する後述の処理において、監視業務評価プログラム334は、過去の画面表示に使われた稼働データ表示設定も用いるため、本実施形態の稼働データ表示設定1100は、既に使われない表示方法も保持する。
このため、運用管理者が、一つの稼働データ表示設定を使わない、すなわち、一つの稼働データ表示設定を無効にしたい場合、稼働データ表示プログラム332は、無効にしたい稼働データ表示設定に対応する行の列1107を「無効」に更新する。また、稼働データ表示設定を変更する場合、変更前の行の列1107を「無効」に更新し、新たな行を生成する。
例えば、運用管理者が、一つの画面に表示したい監視対象機器を、監視対象機器host1のみから、監視対象機器host1及び監視対象機器host2に増やす場合、稼働データ表示プログラム332は、行1117の列1107を「無効」に更新し、行1111及び行1112の新たな2行を追加する。
図6は、本発明の実施形態の運用管理者情報1200を示す説明図である。
運用管理者情報1200は、監視サーバ3が有する各プログラムを使用可能な運用管理者、及び、本実施形態のコンピュータシステムの監視業務を行う運用管理者に関する情報を含む。運用管理者情報1200は、運用管理者によってあらかじめ生成される。
本実施形態の運用管理者は、監視業務を行う運用者と、運用者よりも上位の管理者とを含むユーザである。運用管理者情報1200は、列1201及び列1202を含む。
列1201は、監視業務を行う運用管理者を一意に識別するための運用管理者IDを示す。運用管理者IDは、運用管理者が稼働データ表示プログラム332を介して稼働データを表示する際のアクセス制御、及び、運用管理者が稼働データを表示した履歴を示すアクセスログ1300の生成等の、後述する各処理において用いられる。列1202は、パスワードを示す。列1202に格納されるパスワードは、運用管理者が稼働データを表示する際のアクセス制御に用いられる。
図7は、本発明の実施形態のアクセスログ1300を示す説明図である。
アクセスログ1300は、運用管理者が、稼働データ表示プログラム332を介して稼働データを表示したことを示す履歴を保持する。アクセスログ1300は、運用管理者が稼働データ表示プログラム332を起動するたびに、稼働データ表示プログラム332によって生成される。アクセスログ1300は、列1301〜列1305を含む。
なお、本実施形態において、アクセスログ1300の各行に含まれる複数の情報を、アクセスログと記載する。
列1301は、運用管理者が稼働データ表示プログラム332を起動した時刻を示すアクセス時刻を示す。列1302は、稼働データ表示プログラム332を起動した運用管理者の運用管理者IDを示す。列1302に格納される値は、運用管理者情報1200の列1201に格納される値に対応する。
列1303は、表示された画面の画面IDを示す。列1303に格納される値は、稼働データ表示設定1100の列1101に格納される値に対応する。列1304は、稼働データ表示プログラム332によって表示された稼働データが、監視対象機器において生成された期間を示す。本実施形態の稼働データ表示プログラム332は、表示する稼働データが生成された期間を、柔軟に変更することができる。
例えば、行1311は、運用管理者IDが「operator1」である運用管理者が、2011年1月18日9時に、2011年1月17日に生成された1日分の稼働データを画面に表示したことを示す。また、行1312は、行1311が示す画面1と同じ画面1に、2011年1月18日に生成された1日分の稼働データを画面に表示したことを示す。
さらに、行1313は、運用管理者IDが「operator1」である運用管理者が、行1311及び行1312が示す画面1と同じ画面1に、2011年1月17日の6時台の1時間分の稼働データを表示したことを示す。行1314は、運用管理者IDが「operator1」である運用管理者が、行1311〜行1313が示す画面1とは別の画面に、2011年1月に生成された1ヶ月分の稼働データを表示したことを示す。
列1305は、運用管理者が、要約された稼働データを表示する場合の要約の単位を示す。例えば、行1311は、2011年1月17日に生成された1日分の稼働データのうち、1時間毎の最大値のみが表示されることによって、要約された稼働データが表示されたことを示す。すなわち、行1311は、24個の値が表示されたことを示す。
本実施形態におけるアクセスログ1300は、稼働データ表示プログラム332が起動される毎に表示された稼働データを記録するため、表示された画面IDを保持する。後述する処理において、監視業務評価プログラム334は、アクセスログ1300の画面IDに基づいて、稼働データ表示設定1100の行を特定し、さらに特定された稼働データ表示設定1100の行の列1102及び列1103に基づいて、稼働データ1000の行を特定する。
なお、アクセスログ1300が画面IDを保持することによって、本実施形態の稼働データ表示プログラム332は、アクセスログ1300が個々の稼働データIDを保持するよりも、アクセスログ1300に格納されるデータ量を低減できる。しかし、データベース4に格納できるデータ容量が十分にある場合、稼働データ表示プログラム332は、個々の稼働データIDを、アクセスログ1300の列1101に格納してもよい。
アクセスログ1300が稼働データIDを保持する場合、後述する監視業務評価プログラム334は、アクセスログ1300の行に基づいて、稼働データ1000の行を直接特定できる。
なお、例えば、稼働データ表示プログラム332が管理者端末20のディスプレイに収まらない大きさの画面を表示する場合、運用管理者は、画面表示をスクロールさせないと、すべての稼働データを確認できない。このような場合、アクセスログ1300に格納される画面ID(列1301に対応)は、運用管理者が実際に確認した稼働データと正確に一致しない可能性がある。
このため、稼働データ表示プログラム332は、実際に管理者端末20の画面上に表示された稼働データに関する情報(稼働データIDを含む)を取得し、アクセスログ1300に取得された稼働データIDを追加してもよい。
稼働データを取得する方法は、例えば、稼働データ表示プログラム332がWebページを生成する場合、稼働データ表示プログラム332が、Webページから稼働データを取得するためのJavaScript(登録商標)のプログラムをあらかじめ保持し、画面を表示する際に生成されたプログラムを実行することによって、稼働データを取得する方法がある。これによって、後述する監視業務評価値に、監視の実態をより正確に反映することができる。
図8は、本発明の実施形態のアラート送信条件1400を示す説明図である。
アラート送信条件1400は、アラートを送信する際の稼働データの値の条件を示す。
アラート送信条件1400は、アラート送信プログラム333が検査する稼働データ、稼働データが異常を示すか否かを判定するために用いる条件式、及び、アラート送信プログラム333によって稼働データが異常であると判定された場合の処理を示す。アラート送信条件1400は、運用管理者によってあらかじめ生成され、データベース4に格納される。
アラート送信条件1400は、列1401〜列1407を含む。また、本実施形態のアラート送信条件1400は、行1411〜行1415を含み、これによって、複数の稼働データの値の条件を含む。
なお、アラート送信条件1400の各行が示す複数の情報を、アラート送信条件と記載する。
列1401は、アラート送信条件を一意に識別するための条件IDを示す。列1401が示す条件IDは、後述する検査ログ1500の記録に用いられる。列1402は、検査される稼働データが生成された監視対象機器の監視対象機器IDを示す。列1402に格納される値は、稼働データ1000の列1002に格納される値、及び、稼働データ表示設定1100の列1102に格納される値に対応する。
列1403は、検査される稼働データの監視項目を一意に識別するための監視項目IDを示す。列1403に格納される値は、稼働データ表示設定1100の列1103に格納される値に対応する。
列1404は、列1402と列1403とによって特定される稼働データが異常を示すか否かを判定するための条件式を示す。列1405は、稼働データを検査する時間の間隔である検査間隔を示す。
例えば、行1411は、列1405が「リアルタイム」を示すため、異常発生を直ちに検知する必要がある監視項目についての条件式を含む。行1411が示すアラート送信条件が使われる場合、アラート送信プログラム333は、稼働データ収集プログラム331が稼働データをデータベース4に格納するとほぼ同時に、稼働データを検査する必要がある。
一方、行1413は、列1405が「毎日3:00」を示すため、長期的な稼働データの傾向を監視される必要がある監視項目についての条件式を含む。行1413が示すアラート送信条件が使われる場合、アラート送信プログラム333は、稼働データをリアルタイムに検査する必要がないため、一日一回など、定期的な検査間隔によって稼働データを検査する。
列1406は、稼働データが条件式を満たした場合、アラート送信プログラム333が行う処理を示す。列1407は、各行が示すアラート送信条件が有効か無効かを示す。
検査ログ1500に基づいて後述する監視業務評価値を算出する際、過去の検査に使われたアラート送信条件が必要なため、アラート送信条件1400は、既に使われないアラート送信条件を保持する必要がある。このため、アラート送信プログラム333は、アラート送信条件が使われない場合、使われないアラート送信条件を含む行の列1407の状態を「無効」に更新する。
また、運用管理者がアラート送信条件の内容を変更する場合、アラート送信プログラム333は、変更前のアラート送信条件の行の列1407の状態を「無効」に更新し、新たなアラート送信条件の行を生成する。
以下の説明において、行1415の列1407が「無効」に更新され、行1411のアラート送信条件が新たに生成されたものとする。
図9は、本発明の実施形態の検査ログ1500を示す説明図である。
検査ログ1500は、アラート送信プログラム333が、アラート送信条件によって、稼働データを検査した期間を含む。検査ログ1500は、アラート送信プログラム333が稼働データの検査を行うたびに、アラート送信プログラム333によって生成される。検査ログ1500は、列1501及び列1502を含む。
列1501は、アラート送信条件を示す条件IDである。列1501に格納される値は、アラート送信条件1400の列1401に格納される値に対応する。
列1502は、列1501が示すアラート送信条件によって、稼働データが検査された期間を示す。すなわち、列1501が示すアラート送信条件が使われていた期間を示す。
例えば、行1511のデータは、条件IDが「condition1」であるアラート送信条件によって、2010年12月20日10:30:00に生成された稼働データから最新の稼働データ(図9に示す検査ログ1500において、2011年1月19日の午後6時に生成された稼働データ)まで、検査されたことを示す。なお、条件IDが「condition1」である場合、アラート送信プログラム333は、監視対象機器host1において生成された稼働データのうち、監視項目が「OSのCPU使用率」である稼働データを検査する。
また、行1515のデータは、条件IDが「condition5」のアラート送信条件が、2010年12月20日の10:20:00まで使われていたことを示す。
前述の検査ログ1500は、アラート送信条件が使われた検査期間を保持する。これは、各アラート送信条件に基づいて検査された稼働データと稼働データが検査された履歴とが、データベース4と稼働データ1000とに格納されるためである。すなわち、検査ログ1500が条件IDと検査期間とを保持することによって、個々の稼働データ又は稼働データIDを保持するよりも、検査ログ1500のデータ量が低減される。しかし、データベース4に格納できるデータ容量が十分にある場合、検査ログ1500は、列1502に各稼働データIDを保持してもよく、条件IDが示すアラート送信条件が使われた稼働データを、直接示してもよい。
図10は、本発明の実施形態の担当者情報1600を示す説明図である。
担当者情報1600は、各運用管理者が監視を担当する監視対象機器及び監視項目を示す。担当者情報1600は、運用管理者によってあらかじめ生成される。担当者情報1600は、列1601〜列1603を含む。
列1601は、運用管理者を示す運用管理者IDを示す。列1601に格納される値は、運用管理者情報1200の列1201に格納される値、及び、アクセスログ1300の列1302に格納される値に対応する。
列1602は、運用管理者が監視を担当する監視対象機器を示す監視対象機器IDを示す。列1602は、稼働データ1000の列1002、稼働データ表示設定1100の列1102、及び、アラート送信条件1400の列1402に対応する。
列1603は、運用管理者が監視を担当する監視項目を示す監視対象機器IDを示す。列1603は、稼働データ1000の列1003、稼働データ表示設定1100の列1103、及び、アラート送信条件1400の列1403に対応する。
列1602及び列1603は、任意の監視対象機器又は監視項目を示すID(例えば、図10に示す「すべて」)を含んでもよい。例えば、行1611及び行1612は、運用管理者IDが「operator1」である運用管理者が、監視対象機器host1及び監視対象機器host2のすべての監視項目を担当していることを示す。一方、行1613は、運用管理者IDが「operator2」である運用管理者が、すべての監視対象機器の「Webアプリケーションの応答時間」の監視項目を担当していることを示す。
図11は、本発明の実施形態のアラート送信履歴1700を示す説明図である。
アラート送信履歴1700は、アラート送信プログラム333が過去に管理者端末20等に送信したアラートに関する履歴を示す。アラート送信履歴1700は、アラート送信プログラム333がアラートを送信するたびに、アラート送信プログラム333によって生成される。
アラート送信履歴1700は、列1701〜列1705を含む。また、本実施形態のアラート送信履歴1700は、行1711〜行1714を含む。なお、アラート送信履歴1700の各行に含まれる情報を、以下においてアラート送信履歴と記載する。
列1701は、送信されたアラートを一意に識別するためのアラートIDを示す。列1702は、アラートが送信されたアラート送信時刻を示す。
列1703は、アラートを送信するか否かの判定に使われたアラート送信条件の条件IDを含む。アラート送信履歴1700の列1703に格納される値は、アラート送信条件1400の列1401に格納される値、及び、検査ログ1500の列1501に格納される値に対応する。
列1704は、運用管理者がそのアラートを確認したか否かを示す確認状況フラグを含む。本実施形態の列1704には、運用管理者がアラートを確認した場合「完了」が格納され、運用管理者がアラートを未確認である場合「未完了」が格納される。
列1705は、アラートの内容を示す文字列を含む。内容を示す文字列は、例えば、アラートを運用管理者に通知するメールの中に含まれる。
アラート送信プログラム333が、管理者端末20等の監視クライアントにおける、運用管理者によるアラートの確認状況を取得し、データベース4に格納されるアラート送信履歴1700を更新する方法には、例えば、次のような方法がある。
アラート送信プログラム333は、各アラートの内容を示す文字列、そのアラートが発生するきっかけになった稼働データを、Webページとして表示する機能を有する。そして、運用管理者へ送信されるアラートの内容の中に、そのアラートのアラートIDを含むURLを格納する。そして、運用管理者が、表示されたアラートの内容を参照し、その内容に含まれるURLにアクセスした場合、アラート送信プログラム333は、URLに含まれるアラートIDに対応する列1701を含むアラート送信履歴1700の行の列1704を「完了」に更新する。
図12は、本発明の実施形態の観点の重要性1800を示す説明図である。
観点の重要性1800は、各稼働データをどのような観点によって監視すべきかを示すデータを含む。観点の重要性1800は、運用管理者によってあらかじめ生成される。
本実施形態の監視の観点とは、「閾値監視」、又は、「傾向監視」等の稼働データの表示方法である。運用管理者は、各監視項目の稼働データを閲覧する際に、運用管理者が稼働データの値の意味を理解し易いように、表示される稼働データを追加したり、表示内容を変更したりする。
運用管理者は、運用管理者が意図する監視の観点によって稼働データを表示するため、表示する稼働データを監視クライアントに指示する。これによって、監視クライアントは、運用管理者からの指示に従った稼働データを監視サーバ3に要求し、監視サーバ3は、監視クライアントからの要求に従って、稼働データを監視クライアントに送信する。これによって運用管理者は、正確に監視対象機器の状態を監視することができる。
例えば、運用管理者がOSのCPU使用率が、所定の閾値よりも上回っているかを確認したい場合、運用管理者は、「閾値監視」の観点によって稼働データを表示し、表示された稼働データを閲覧する。また、運用管理者がOSのCPU使用率が、過去1年間の中で、際立って大きい値を示しているか否かを確認したい場合、運用管理者は、「外れ監視」の観点によって稼働データを表示し、表示された稼働データを閲覧する。
また、例えば、運用管理者がOSCPU使用率が、過去1年間の中で、高くなる傾向にあるか否かを確認したい場合、「傾向監視」の観点によって稼働データを表示し、表示された稼働データを閲覧する。
このように、運用管理者は、特定の監視の観点によって表示された稼働データを閲覧することによって、監視対象機器を正確に監視することができる。
監視の観点、及び、監視の観点の重要性は、コンピュータシステムごと、又は、監視対象機器ごとに異なる。例えば、物理マシン5−1にかかる負荷が高い場合、物理マシン5−1のCPU使用率に対する「閾値監視」の重要性は、物理マシン5−2〜物理マシン5−8よりも高い。
また、本実施形態のコンピュータシステムを運用している間、監視の観点の重要性が変化することもある。例えば、稼働データの量が少なく、「傾向監視」が重要ではないコンピュータシステムに、新しいアプリケーションを導入した場合、監視の観点の重要性が変化する。すなわち、コンピュータシステムに新しいアプリケーションを導入した後、稼働データの量が増えた場合、「傾向監視」の重要性が、アプリケーションを導入する前より、増大する。
観点の重要性1800は、列1801〜列1804を含む。また、図12の観点の重要性1800は、行1811〜行1817を含む。
列1801は、監視対象機器を示す監視対象機器IDを示す。列1801に格納される値は、稼働データ1000の列1002、稼働データ表示設定1100の列1102、アラート送信条件1400の列1402、及び、担当者情報1600の列1602に格納される値に対応する。観点の重要性1800の一つの行が示す定義を、すべての監視対象機器に適用する場合、行1817のように、すべての監視対象機器を示す「すべて」が、列1801に格納されてもよい。
列1802は、監視項目を示す監視項目IDを示す。列1802に格納される値は、稼働データ表示設定1100の列1103、アラート送信条件1400の列1403、及び、担当者情報1600の列1603に格納される値に対応する。
列1803は、監視の観点を示す。本実施形態の監視の観点には、例えば、「閾値監視」、「外れ監視」(ベースライン監視)、「傾向監視」、「エラー文字列監視」、又は、「相関関係監視」などを示す値が格納される。
列1804は、各行が示す観点の重要性を示す数値を示す。本実施形態における列1804は、数値が大きいほど、観点の監視が重要であることを示す。例えば、行1811〜行1813は、監視対象機器host1の「OSのCPU使用率」の監視項目において、「閾値監視」及び「外れ監視」が、「傾向監視」よりも重要であることを示す。
一方、行1814〜行1816は、監視対象機器host1の「OSの使用可能メモリ」の監視項目において、「傾向監視」が最も重要であることを示す。
なお、物理マシン5は、自らの機器において、OS及び仮想マシンを動作させることができるサーバ機器である。本実施形態のコンピュータシステムは、物理マシン5において仮想マシンを動作させる場合にも適用できる。物理マシン5において仮想マシンを動作させる場合、仮想マシンに監視対象機器IDを割り当ててもよい。
図13は、本発明の実施形態の監視業務評価プログラム334が監視業務評価値を算出するためのフローチャートである。
本実施形態において、監視業務評価プログラム334は、3段階の手順によって監視業務評価値を算出する。以下、最初の段階において算出される監視業務評価値を、監視業務評価値M3と記載し、2番目の段階で算出する監視業務評価値を、監視業務評価値M2と記載し、最後の段階において算出される監視業務評価値をM1と記載する。
図13は、監視業務評価プログラム334が、監視業務評価値M3、監視業務評価値M2、及び、監視業務評価値M1を算出する手順を示す。
運用管理者が監視業務を評価したい場合、その運用管理者は、管理者端末20が有する監視クライアントを介して、監視業務評価プログラム334に、範囲T1及び範囲T2を送信する(S101)。
具体的には、運用管理者は、S101において、管理者端末20等の監視クライアントを介して監視業務評価プログラム334を起動する。起動の際、運用管理者は、自らの運用管理者IDとパスワードとを監視サーバ3に送信する。監視業務評価プログラム334は、送信された運用管理者ID及びパスワードと、運用管理者情報1200とを参照し、これによって、運用管理者を認証するか否かを判定する。運用管理者が認証された場合、監視業務評価プログラム334は、S102以降の処理を実行する。
範囲T1及び範囲T2は、監視業務評価値を算出するための時間の範囲を指定する引数である。範囲T1は、監視業務評価値を算出するために用いる稼働データの測定時刻、すなわち、稼働データが生成された時刻の範囲である。また、範囲T1は、アラート送信プログラム333による検査が行われた時刻の範囲を示す。
範囲T2は、運用管理者が稼働データを表示し、そして、確認した時刻の範囲である。以下の処理において、運用管理者が範囲T2において行った稼働データの表示及び確認について、監視業務評価値が算出される。また、運用管理者による稼働データの表示及び確認を、稼働データへのアクセスと記載する。
なお、管理者が、S101において監視クライアントを介して範囲T1及び範囲T2を監視業務評価プログラム334に送信し、S102以降の処理によって、運用管理者の監視業務を評価するための監視業務評価値を算出してもよい。
範囲T1及び範囲T2は、同じ時間の範囲でもよく、範囲T1より範囲T2が長い時間であってもよい。稼働データへのアクセス及び検査は、稼働データが生成されてから1日後又は1週間後に行われることがある。このため、監視業務評価プログラム334は、範囲T1よりも長い範囲T2を指定されることによって、監視業務を正確に反映した監視業務評価値を算出できる。
例えば、2010年10月1日0:00から2010年10月31日23:59までの期間Xの間の監視業務を評価する場合、運用管理者は、範囲T1を、前述の期間Xに指定し、範囲T2を、2010年10月1日0:00から2010年11月7日23:59に指定する。このように、運用管理者が範囲T2を指定することによって、監視業務評価プログラム334は、2010年10月31日の稼働データに、1週間以内に運用管理者がアクセス又は検査した履歴も、監視業務評価値を算出するために用いることができる。
以降の処理において範囲T1と範囲T2とは、異なる引数として用いられるが、範囲T1と範囲T2とは、前述のとおり同じ範囲でもよいため、いずれかの引数のみが用いられてもよい。
S101において、範囲T1及び範囲T2を監視クライアントから受信した監視業務評価プログラム334は、確認主体が運用管理者である監視業務評価値M3を算出する(S102)。確認主体については、後述する。
S102の後、監視業務評価プログラム334は、確認主体がアラート送信条件の監視業務評価値M3を算出する(S103)。S103の後、監視業務評価プログラム334は、S102及びS103において算出された監視業務評価値M3に基づいて、監視業務評価値M2を算出する(S104)。
S104の後、監視業務評価プログラム334は、S104において算出された監視業務評価値M2に基づいて、監視業務評価値M1を算出する(S105)。S105の後、監視業務評価プログラム334は、算出された監視業務評価値M1、監視業務評価値M2、及び、監視業務評価値M3を監視クライアントに送信し、運用管理者に監視業務評価値を表示する(S106)。
次に、図13のS102〜S106の計算方法の詳細を説明する。
図14は、本発明の実施形態の監視業務評価プログラム334が運用管理者ごとの監視業務評価値M3を算出する処理を示すフローチャートである。
図14に示す処理は、図13のS102に相当する処理である。図14は、監視業務評価プログラム334が、確認主体が運用管理者である監視業務評価値M3を算出する処理を示す。
監視業務評価プログラム334は、測定時刻(列1004に対応)が範囲T1に含まれる稼働データを、データベース4の稼働データ1000からすべて取得する(S201)。具体的には、監視業務評価プログラム334は、範囲T1に含まれる値を列1004に含む各行を、稼働データ1000から抽出することによって、少なくとも一つの稼働データを取得する。
S201の後、監視業務評価プログラム334は、すべての運用管理者IDを、データベース4の運用管理者情報1200から取得する(S202)。
以下のS204〜S216の処理は、S202において取得された運用管理者IDごとに、監視業務評価値M3を算出する手順である。S202において取得されたすべての運用管理者IDの監視業務評価値M3を算出する場合、監視業務評価プログラム334は、S204〜S216の処理を繰り返す。
監視業務評価プログラム334は、S202において取得された運用管理者IDから、未検証の運用管理者ID、すなわち、S204〜S216の処理が実行されていない運用管理者IDを、一つ選択する(S203)。S203において選択された運用管理者IDを、以下においてOIDと記載する。
S203の後、監視業務評価プログラム334は、S201において取得された各稼働データに、監視の観点ごとにカウンタ変数が格納される列2005を生成する(S204)。S204において生成される列2005が示すカウンタ変数の初期値は、0である。具体的には、監視業務評価プログラム334は、S204において、評価値2000のように列2005を生成する。
図15は、本発明の実施形態のカウンタ変数を含む評価値2000を示す説明図である。
図15に示す評価値2000は、S204において生成されたカウンタ変数を含む。また、S204において、評価値2000は運用管理者ごとに生成される。評価値2000は、監視業務評価値M3を算出するための情報である。
図15に示す評価値2000は、監視サーバ3のメモリ33に保持される。評価値2000は、列2001〜列2005を含む。
列2001は、稼働データIDを示す。列2001に格納される値は、稼働データ1000の列1001に対応する。列2002は、監視対象機器IDを示す。列2002に格納される値は、稼働データ1000の列1002に格納される値と対応する。
列2003は、監視項目IDを示す。列2003に格納される値は、稼働データ1000の列1003等に格納される監視項目IDの値に対応する。列2004は、監視の観点を示す。列2004に格納される値は、観点の重要性1800の列1803に格納される値に対応する。
列2005は、カウンタ変数を示す。S204における列2005には、すべて0が格納される。カウンタ変数は、運用管理者IDがOIDである運用管理者が、列2001が示す稼働データを、列2004が示す監視の観点によって表示した回数を示す。
運用管理者が表示した稼働データの監視の観点を、明確に推定できない場合、本実施形態の監視業務評価プログラム334は、後述のように、1未満の値をカウンタ変数に加算する。このため、カウンタ変数は常に整数とは限らない。
S204において、監視業務評価プログラム334は、S201において取得された稼働データの列1001、列1002及び列1003に格納される値を、評価値2000の列2001、列2002及び列2003に格納する。そして、観点の重要性1800の列1803を参照し、列2001、列2002及び列2003の一意な組み合わせを含む行を、監視の観点ごとに追加する。そして、列2005に0を格納する。
S204の後、監視業務評価プログラム334は、運用管理者ID(列1302に対応)がOIDであり、かつ、アクセス時刻(列1301に対応)が範囲T2に含まれるアクセスログを、データベース4のアクセスログ1300からすべて取得する(S205)。
以下のS207〜S214の処理は、S205において取得された各アクセスログに基づいて、監視の観点の推定と、カウンタ変数に加算する値の算出とを行う処理である。
まず、監視業務評価プログラム334は、S205において取得されたアクセスログの中に未検証のアクセスログ、すなわち、S207〜S214が実行されていないアクセスログがあるか否かを判定する(S206)。未検証のアクセスログがない場合、監視業務評価プログラム334は、S215に移行する。
未検証のアクセスログがある場合、監視業務評価プログラム334は、未検証のアクセスログを一つ選択する(S207)。S207において選択されたアクセスログを、以下においてALOGと記載する。
S207の後、監視業務評価プログラム334は、ALOGに含まれる表示期間(列1304に対応)と、範囲T1とに重複する時間があるか否かを判定する(S208)。ALOGに含まれる表示期間と範囲T1とに重複する時間がない場合、ALOGは、OIDが示す運用管理者によってアクセスされた稼働データが、範囲T1に生成されていないことを示す。すなわち、ALOGが示すアクセスは、S201において運用管理者等によって指定された監視業務評価値を算出する範囲には含まれない。
このため、OIDが示す運用管理者がアクセスした稼働データが範囲T1に含まれていない場合、監視業務評価プログラム334は、ALOGのカウンタ変数を算出する必要がないため、S206に戻り、S207において新たなアクセスログを、ALOGとして選択する。
ALOGに含まれる表示期間(列1304に対応)と範囲T1とに重複する時間がある場合、監視業務評価プログラム334は、ALOGに含まれる画面ID(列1303に対応)と、同じ画面IDを列1101に含む、すべての稼働データ表示設定を、データベース4000の稼働データ表示設定1100から取得する(S209)。これによって、監視業務評価プログラム334は、ALOGが示すアクセスにおいて、表示された画面の内容を特定できる。
S209の後、監視業務評価プログラム334は、S209において取得された稼働データ表示設定から、未検証の稼働データ表示設定、すなわち、S211〜S214が実行されていない稼働データ表示設定を一つ選択する(S210)。S210において選択された稼働データ表示設定を、以下においてVCONFと記載する。
S210の後、監視業務評価プログラム334は、ALOG及びVCONFに基づいて、ALOGが示すアクセスにおいて、運用管理者が表示した稼働データの監視の観点を推定する。また、推定された監視の観点毎に、カウンタ変数に加算すべき値を算出する(S211)。S211の詳細は後述する。
S211の後、監視業務評価プログラム334は、S201において取得された稼働データの中から、VCONFの監視対象機器ID(列1102に対応)及び監視項目ID(列1103に対応)を列1002及び列1003に含み、かつ、測定時刻(列1004に対応)がALOGの表示期間(列1304に対応)に含まれる、すべての稼働データを選択する(S212)。
S212によって、監視業務評価プログラム334は、各ALOGが示すアクセスにおいて、VCONFが示す稼働データ表示設定によって表示された稼働データを、すべて選択できる。そして、評価値2000の各行のうち、列2005を更新する稼働データを選択できる。
S212の後、監視業務評価プログラム334は、S212において選択された稼働データに対応する評価値2000の行の、S211において推定された監視の観点に対応するカウンタ変数(列2005に対応)に、S211において算出された値を加算する(S213)。
具体的には、監視業務評価プログラム334は、S212において選択された稼働データの稼働データID(列1001に対応)、監視対象機器ID(列1002に対応)、及び、監視項目ID(列1003)を、評価値2000の列2001、列2002、及び、列2003に含み、S211において推定された監視の観点を列2004に含む評価値2000の行を抽出する。そして、抽出された行の列2005に、S211において算出された値を加算する。
前述のS211〜S213の処理を、具体例を用いて説明する。例えば、S207においてアクセスログ1300の行1311のアクセスログがALOGとして選択され、稼働データ表示設定1100の行1111の稼働データ表示設定がVCONFとして選択された場合を示す。また、範囲T1には、2011年1月1日00:00:00〜2011年1月31日23:59:59が指定され、範囲T2には、2011年1月1日00:00:00〜2011年2月7日23:59:59が指定された場合を示す。
また、以下に示す具体例において、監視業務評価プログラム334は、S211において、ALOG及びVCONFに基づいて、ALOGが示すアクセスにおいて、表示された監視の観点を推定し、各監視の観点のカウンタ変数に加算される値を算出する。さらに、S211において、ALOGに対応する監視の観点が「閾値監視」である場合、カウンタ変数への加算値は0.5と算出され、監視の観点が「外れ監視」である場合、カウンタ変数への加算値は0.1と算出され、監視の観点が「傾向監視」である場合、カウンタ変数への加算値は0.0と算出された場合を示す。
前述のような条件において、監視業務評価プログラム334は、S212において、ALOG及びVCONFに基づいて、監視対象機器IDが「host1」であり、監視項目IDが「OSのCPU使用率」であり、かつ測定時刻が2011年1月17日に含まれる稼働データをすべて選択する。具体的には、監視業務評価プログラム334は、図4に示す稼働データ1000から、行1011及び行1016の稼働データを選択する。
そして、S213において、監視業務評価プログラム334は、行1011の稼働データに対応する評価値2000の行2011〜行2013の列2005に、S211において算出されたカウンタ変数を加算する。すなわち、監視業務評価プログラム334は、行2011の列2004が「閾値監視」を示すため、行2011の列2005に0.5を加算し、行2012の列2004が「外れ監視」を示すため、行2012の列2005に0.1を加算し、行2013の列2004が「傾向監視」を示すため、行2013の列2005に0.0を加算する。
監視業務評価プログラム334は、S209において取得された稼働データ表示設定に、未検証の稼働データ表示設定、すなわちS210〜S213の処理が行われていない稼働データ表示設定があるか否かを判定する(S214)。そして、未検証の稼働データ表示設定がある場合、S210に戻る。これによって、前述のS210〜S213を、S209において取得した稼働データ表示設定すべてに実行する。
S214において、未検証の稼働データ表示設定がないと判定された場合、監視業務評価プログラム334は、S206に戻る。S209〜S214の処理によって、運用管理者の一回のアクセスによって表示された、すべての稼働データのカウンタ変数を算出することができる。
S206において、未検証のアクセスログがない場合、すなわち、S205において取得されたすべてのアクセスログが、S206〜S214の処理を実行された場合、監視業務評価プログラム334は、S215に移行する。S203〜S214の処理によって、監視業務評価プログラム334は、運用管理者IDがOIDである運用管理者が、範囲T2において行ったすべてのアクセスに関するカウンタ変数を算出できる。
S206の後、監視業務評価プログラム334は、算出されたカウンタ変数に基づいて、運用管理者IDがOIDの運用管理者の、監視の観点ごとの監視業務評価値M3を算出する(S215)。
監視業務評価値M3の算出方法には、監視業務評価プログラム334が、評価値2000のうち、同じ監視対象機器ID、監視項目ID、及び、監視の観点を含む行を抽出し、抽出された行の列2005の統計量を算出することによって、監視業務評価値M3を算出する方法がある。統計量は、例えば、列2005に含まれるカウンタ変数の平均値でもよい。また、カウンタ変数の外れ値を無視したい場合、統計量は、列2005に含まれるカウンタ変数の中央値でもよい。
図16は、本発明の実施形態の監視業務評価値M3を含む評価値2100を示す説明図である。
評価値2100は、監視業務評価値M3を含む。監視業務評価値M3は、監視対象機器、監視項目、監視の観点、及び、確認主体が示す監視業務ごとに算出される。確認主体には、運用管理者又はアラート送信条件を示す値が格納される。
すなわち、評価値2100は、各運用管理者が、最も多く行った監視業務を示す。また、評価値2100は、どの監視対象機器のどの監視項目が、どのような監視の観点によって監視されたかを示す。また、評価値2100は、いずれのアラート送信条件によるアラートが、最も多く送信されたかを示す。
運用管理者は、評価値2100を参照することによって、最も多く監視された監視対象機器、監視項目、及び、監視の観点の組合せを、運用管理者ごとに認識することができる。また、最も多く送信されたアラートが、いずれの監視対象機器及び監視項目において生成されたかを認識することができる。
図16に示す評価値2100は、監視サーバ3のメモリ33に保持される。評価値2100は、列2101〜列2105を含む。
列2101は、監視対象機器IDを示す。列2101に格納される値は、評価値2000の列2002に格納される値と対応する。列2102は、監視項目IDを示す。列2102に格納される値は、評価値2000の列2003に格納される値に対応する。
列2103は、監視の観点を示す。列2103に格納される値は、評価値2000の列2004に格納される値に対応する。列2104は、確認主体を示す。列2104に格納される値は、アクセスログ1300の列1302、又は、アラート送信条件1400の列1401に格納される値に対応する。列2105は、監視業務評価値M3を示す。
列2104に運用管理者IDを示す値が含まれる行は、運用管理者によって監視された少なくとも一つの稼働データに関する監視業務評価値M3を含む。列2104にアラート送信条件を示す値が含まれる行は、アラート送信プログラム333によって検査された結果、アラートが送信された少なくとも一つの稼働データに関する監視業務評価値M3を含む。
前述のS215における処理を、具体例を用いて説明する。例えば、監視対象機器IDが「host1」であり、監視項目IDが「OSのCPU使用率」であり、監視の観点が「閾値監視」である行の監視業務評価値M3を算出する場合、監視業務評価プログラム334は、評価値2000の行2011及び行2026を抽出する。
監視業務評価プログラム334は、抽出された行2011及び行2026の列2005に格納されるカウンタ変数(0.5及び1.1)に基づいて、監視業務評価値M3を算出する。本実施形態において、監視業務評価プログラム334は、カウンタ変数の平均値を算出し、この結果、監視業務評価値M3(0.8)を算出する。
そして、S215において、監視業務評価プログラム334は、列2101が「host1」であり、列2102が「OSのCPU使用率」であり、列2103が「閾値監視」である行2111を抽出し、行2111の列2105に、算出された監視業務評価値M3(0.8)を格納する。また、行2111の列2104に、確認主体として、OIDを格納する。
なお、S215において、評価値2100に、評価値2000の行に対応する行がない場合、監視業務評価プログラム334は、新たな行を評価値2100に追加する。
S215の後、監視業務評価プログラム334は、S202において取得された運用管理者IDの中に、未検証の運用管理者ID、すなわち、S203〜S215の処理を実行していない運用管理者IDがあるか否かを判定する(S216)。未検証の運用管理者IDがある場合、監視業務評価プログラム334は、S203に戻る。
未検証の運用管理者IDがない場合、監視業務評価プログラム334は、図14に示す処理を終了する。これによって、監視業務評価プログラム334は、確認主体が運用管理者である監視業務評価値M3であり、かつ、範囲T1及び範囲T2における監視業務評価値M3を、算出することができる。
図14に示す処理によって、評価値2100の列2105に、運用管理者IDが格納される行がすべて生成される。具体的には、図16に示す行2111〜行2116及び行2120が生成される。また、図14が終了すると、図13に示すS102が終了する。
図17は、本発明の実施形態の監視業務評価プログラム334が各アクセスの監視の観点を推定する処理を示すフローチャートである。
図17に示す処理は、図14に示すS211に相当する。監視業務評価プログラム334は、図17に示す処理によって、監視の各観点のカウンタ変数に加算する値(加算値)を算出する。
また、後述する引数V1〜V23は、監視業務評価プログラム334にあらかじめ保持されるパラメータである。以下に示す処理において、引数V1〜V23には0〜1の値が定められているが、最大値及び最小値が定められていればいかなる値でもよい。
S301〜S307の処理は、ALOGが「閾値監視」を意図したアクセスか否かを判定するための処理である。
監視業務評価プログラム334は、VCONFの閾値表示の有無を判定する(S301)。具体的には、監視業務評価プログラム334は、VCONFの列1105が示す閾値表示に、「あり」が含まれるか否かを判定する。これは、VCONFの閾値表示が「あり」である場合、ALOGが示すアクセスによって表示された画面に、閾値が明示的に表示されており、そのアクセスによって表示された監視の観点に、「閾値監視」が含まれていた可能性が高いためである。
このため、S301においてVCONFの列1105が示す閾値表示が「あり」である場合、監視業務評価プログラム334は、ALOGが示すアクセスによって、「閾値監視」による表示がされた可能性が高いと推定する。そして、S302に移行する。
一方で、S301においてVCONFの列1105が示す閾値表示が「あり」ではない場合、監視業務評価プログラム334は、ALOGが示すアクセスによって、「閾値監視」による表示がされた可能性が低いと推定する。そして、S305に移行する。
S301の後、監視業務評価プログラム334は、S302及びS305において、ALOGの表示期間(列1304に対応)が、所定の期間以内であるか否かを判定する。これは、一般的に、ALOGの表示期間が、1ヶ月又は1年のように長い場合、「閾値監視」を監視の観点として稼働データを表示する可能性は低いためである。
図17のS302及びS305における所定の期間は、1週間である。これは、「閾値監視」を監視の観点として稼働データを表示する場合、運用管理者は1週間分の稼働データを表示するという仮定が、図17の処理においてあらかじめ定められているためである。しかし、本実施形態のS302及びS305における所定の期間は、定められる仮定に従って、いずれの期間でもよい。
そして、S302において、ALOGの表示期間が1週間以下である場合、ALOGが示すアクセスにおいて、「閾値監視」を監視の観点として稼働データが表示された可能性が最も高い。このため、監視業務評価プログラム334は、S303に移行する。
また、S302において、ALOGの表示期間が1週間を超える場合、ALOGが示すアクセスにおいて、「閾値監視」を監視の観点として稼働データが表示された可能性は、ALOGの表示期間が1週間以内である場合の可能性よりも低い。このため、監視業務評価プログラム334は、S304に移行する。
また、S305において、ALOGの表示期間が1週間以下である場合、ALOGが示すアクセスにおいて、「閾値監視」を監視の観点として稼働データが表示された可能性は、VCONFの閾値表示が「あり」である場合の可能性よりも低い。このため、監視業務評価プログラム334は、S306に移行する。
また、S305において、ALOGの表示期間が1週間を超える場合、ALOGが示すアクセスにおいて、「閾値監視」を監視の観点として稼働データが表示された可能性は、最も低い。このため、監視業務評価プログラム334は、S307に移行する。
監視業務評価プログラム334は、監視の観点が「閾値監視」である場合の加算値に、S303において引数V1を定め、S304において引数V2を定める。また、監視の観点が「閾値監視」である場合の加算値に、S305において引数V3を定め、S303において引数V4を定める。
図17において、引数V1には、1.0があらかじめ定められ、引数V2には、0.7があらかじめ定められ、引数V3には、0.5があらかじめ定められ、引数V4には、0.1があらかじめ定められている。引数V1の値は、引数V1〜V4の各値の中で最も大きい。引数V2の値は、引数V1の値よりも小さく、かつ、引数V3の値よりも大きい。引数V3の値は、引数V2の値よりも小さく、かつ、引数V4の値よりも大きい。引数V4の値は、引数V1〜引数V4の各値の中で最も小さい。
例えば、S207において、ALOGにはアクセスログ1300の行1311のアクセスログが選択され、かつ、S210において、VCONFには稼働データ表示設定1100の行1111の稼働データ表示設定が選択された場合、行1111の列1105は「なし」であり、かつ、行1311の列1304は、2011年1月17日の1日間である。このため、監視業務評価プログラム334は、ALOGが示すアクセスにおける、監視の観点「閾値監視」に対する加算値に、引数V3を定める。
図17に示すS302及びS305の処理は、ALOGの表示期間による判定処理であるが、監視の観点の推定方法は、本実施形態に限定されない。すなわち、監視業務評価プログラム334は、アクセスログ1300、稼働データ表示設定1100、又は、稼働データ1000を、S302及びS305において判定することによって、監視の観点を推定してもよい。
以下に、その他の第1の推定方法を示す。例えば、1週間に1回測定される監視項目が、稼働データに含まれる場合、運用管理者は、1ヶ月又は1年分の稼働データを1画面に表示し、かつ、「閾値監視」の監視の観点によって表示することがある。これは、前述のような、1週間に1回測定されるような監視項目を含む稼働データを、表示期間を1日又は1週間として表示した場合、多くても一つの稼働データしか1画面に表示されず、確認の効率が悪いためである。
そのため、監視業務評価プログラム334は、ALOGが示すアクセスによって1画面に表示された稼働データの数をアクセスログ1300から取得する。そして、取得された稼働データの数を、所定の基準値と比較することによって、監視の観点を推定してもよい。また、前述のS302及びS305の処理に、1画面に表示された稼働データの数による判定を追加することによって、監視業務評価プログラム334は、正確に監視の観点を推定することができる。
また、その他の第2の推定方法を示す。例えば、第2の推定方法において、「閾値監視」の監視の観点による表示は、稼働データの生成から1週間以内に行われることが多いと仮定される。この仮定において、監視業務評価プログラム334は、ALOGに含まれるアクセス時刻(列1301に対応)と表示期間(列1304に対応)との差時間、すなわち、稼働データが生成されてから運用管理者にアクセスされるまでの時間を算出する。
そして、監視業務評価プログラム334は、算出された差時間と所定の基準値との比較結果を、監視の観点の推定に用いる。これによって、監視業務評価プログラム334は、より正確に、監視の観点を推定することができる。
S309〜S314は、ALOGが示すアクセスによって「外れ値監視」の監視の観点による表示がされたか否かを判定する処理である。
S303、S304、S306、又は、S307の後、監視業務評価プログラム334は、VCONFの列1106が示すベースライン表示の有無を判定する(S309)。VCONFの列1106が「あり」を示す場合、すなわちALOGが示すアクセスによって表示された画面に、ベースラインが明示的に表示されていた場合、監視業務評価プログラム334は、ALOGが示すアクセスの監視の観点に「ベースライン監視」が含まれていた可能性が高いと推定する。
このため、監視業務評価プログラム334は、VCONFの列1106が「あり」を示す場合、監視の観点「外れ値監視」に対する加算値を、引数V11とする(S310)。図17の引数V11は、1.0である。引数V11の値は、引数V12及び引数V13の各値より大きい。
一方で、画面上にベースラインが明示されない場合においても、監視の観点に「外れ値監視」が含まれる場合がある。例えば、運用管理者が同じ画面において、異なる表示期間(列1304に対応)の稼働データを表示した場合は、同じ表示期間の稼働データのみを表示した場合よりも、運用管理者が外れ値の有無を監視している可能性が高い。S311〜S314における処理は、このような前提に基づく。
S309において、VCONFの列1106が「なし」を示すと判定された場合、監視業務評価プログラム334は、ALOGと同じ運用管理者によるアクセスであり、ALOGが示すアクセスより一つ以前(一つ過去)のアクセスを示すアクセスログ(以下、ALOG2)をアクセスログ1300から取得する(S311)。
なお、ALOG2をアクセスログ1300から取得できない場合、ALOGが示すアクセスの監視の観点が「外れ値監視」である可能性は低いため、監視業務評価プログラム334は、S314に移行してもよい。
S311の後、監視業務評価プログラム334は、ALOGとALOG2との画面ID(列1303に対応)が一致し、かつALOGとALOG2との表示期間(列1304に対応)が異なるか否かを判定する(S312)。
ALOGとALOG2の画面IDが一致し、かつ、ALOGとALOG2との表示期間が異なる場合、運用管理者が「外れ値監視」の監視の観点によって稼働データを表示した可能性が高い。このため、監視業務評価プログラム334は、監視の観点が「外れ値監視」である場合の加算値に引数V12を定める(S313)。
ALOGとALOG2との画面IDが一致しないか、又は、ALOGとALOG2との表示期間が同じである場合、運用管理者が「外れ値監視」の監視の観点によって稼働データを表示した可能性が低い。このため、監視業務評価プログラム334は、監視の観点が「外れ値監視」である場合の加算値に引数V13を定める(S314)。
図17の引数V12は、0.3であり、引数V13は、0.1である。引数V12の値は、引数V13の値より大きい。
例えば、S207において、ALOGにはアクセスログ1300の行1311が選択され、かつ、S210において、VCONFには稼働データ表示設定1100の行1111が選択された場合、行1111の列1106が「なし」を示し、かつ、行1311の一つ以前のアクセスログがアクセスログ1300にない。このため、監視業務評価プログラム334は、S314において、ALOGの監視の観点が「外れ値監視」である場合の加算値に引数V13を定める。
また、例えば、S207においてALOGにアクセスログ1300の行1312が選択され、かつ、S210においてVCONFに稼働データ表示設定1100の行1111が選択された場合、ALOGの運用管理者と同じであり、ALOGが示すアクセスの一つ以前のアクセスを示すALOG2は、行1311である。そして、ALOGとALOG2との画面IDが一致し、かつALOGとALOG2との表示期間が異なる。このため、監視業務評価プログラム334は、S313において、ALOGの監視の観点が「外れ値監視」である場合の加算値に引数V12を定める。
S315〜S319は、ALOGが示すアクセスによって、「傾向監視」の監視の観点による表示がされたか否かを判定する処理である。S315〜S319は、稼働データの表示期間が長いほど、「傾向監視」の監視の観点によって稼働データを表示した可能性が高いという仮定に基づく。
S310、S313、又は、S314の後、監視業務評価プログラム334は、ALOGの列1304が示す表示期間が1年以上か否かを判定する(S315)。ALOGの列1304が示す表示期間が1年以上である場合、監視の観点が「傾向監視」である可能性が高い。このため、監視業務評価プログラム334は、監視の観点が「傾向監視」である場合の加算値に引数V21を定める(S316)。
図17の引数V21は、1.0である。引数V21の値は、引数V22、及び引数V23の各値より大きい。
S315において、ALOGの表示期間(列1304に対応)が1年を下回る場合、監視業務評価プログラム334は、さらに、ALOGの表示期間に従って、監視の観点が「傾向監視」であるか否かを判定する。具体的には、監視業務評価プログラム334は、ALOGの列1304が示す表示期間が1ヶ月以上か否かを判定する(S317)。
ALOGの列1304が示す表示期間が1ヶ月以上の場合、監視業務評価プログラム334は、監視の観点が「傾向監視」である場合の加算値に引数V22を定める。また、ALOGの列1304が示す表示期間が1ヶ月を下回る場合、監視業務評価プログラム334は、加算値に引数V23を定める。
図17の引数V22は、0.5であり、引数V23は、0.0である。引数V22の値は、引数V23よりも大きい。
例えば、S207においてALOGにアクセスログ1300の行1311が選択され、S210においてVCONFに稼働データ表示設定1100の行1111が選択された場合、ALOGの表示期間(列1304に対応)は、2011年1月17日の1日間である。このため、監視業務評価プログラム334は、S319において、ALOGの監視の観点が「傾向監視」である場合の加算値に引数V23を定める。
そして、ALOGが行1311であり、VCONFが行1111である場合、S301〜S319の処理によって、ALOGの監視の観点が「閾値監視」である場合の加算値には、引数V3が定められ、監視の観点が「外れ値監視」である場合の加算値には、引数V13が定められ、監視の観点が「傾向監視」である場合の加算値には引数V23が定められる。
運用管理者は、稼働データへの1回のアクセスにおいて、複数の監視の観点によって稼働データを含む可能性があり、図17の処理によれば、監視業務評価プログラム334は、複数の監視の観点の加算値を算出することができる。
また、監視業務において運用者が表示した可能性の高い監視の観点に、高い加算値を定めることによって、運用者が行った監視業務の頻度を定量的に算出することができる。そして、算出された頻度に従って、いずれの監視業務が十分に行われたか否かを示す監視業務評価値を算出することができる。
また、アクセスログ1300には、アラートが送信された結果、運用管理者が稼働データにアクセスした履歴が含まれる。このため、監視業務評価プログラム334は、機械的な検査によって発生したアラートによって、運用管理者による監視がどの程度十分にされているか否かを示す監視の十分さを、定量的に算出することができる。
そして、監視業務評価プログラム334は、運用管理者による監視の漏れを防ぐための指標を、運用管理者に提示できる。すなわち、図14及び図17の処理によって、監視業務評価プログラム334は、目視による監視と機械的な検査による監視との十分さを運用管理者に提示することができる。
なお、前述の図14及び図17において、監視業務評価プログラム334は、アクセスログ1300に格納される各アクセスログが示すアクセスの監視の観点を推定する。しかし、本実施形態の監視業務評価プログラム334は、複数のアクセスログが示すアクセスの監視の観点を推定してもよい。
以下に、監視業務評価プログラム334が、複数のアクセスログが示すアクセスの監視の観点を推定する方法を示す。
運用管理者は、監視対象機器において障害が発生した際の原因究明作業、又は、監視対象機器の定期的な(例えば、月1回の)保全作業において、監視対象機器を監視するための監視クライアントに、半日などの一定期間に頻繁にアクセスする場合がある。このようなアクセスに、前述の図14及び図17の処理を通常のアクセスと同様に行う場合、算出される監視業務評価値M3に大きなばらつきが発生する可能性がある。すなわち、運用管理者が一定期間に頻繁にアクセスした場合、監視業務評価プログラム334は、正確に監視業務評価値M3を算出することができない。
このため監視業務評価プログラム334は、一定期間に頻繁に発生するアクセスログの、監視の観点を「障害の原因究明」とし、他の監視の観点の加算値を0にする処理を、図14の処理に追加してもよい。これによって、前述したばらつきの発生を避けることができる。
具体的には、監視業務評価プログラム334は、定期的又は運用管理者の指示に従って、アクセスログ1300に格納される複数のアクセスログの列1301から、運用管理者によるアクセス順序のパターンを学習しておく。監視業務評価プログラム334は、確率分布を算出することによって、アクセス順序のパターンを学習してもよい。
そして、通常のアクセス順序と大幅に異なるパターンを示す複数のアクセスログが発生した場合、監視業務評価プログラム334は、通常のパターンと異なる複数のアクセスログを抽出する。そして、抽出されたアクセスログの監視の観点を、「障害の原因究明」とする。そして、監視の観点が「障害の原因究明」である場合の加算値を1と定め、監視の観点が他の観点である場合の加算値に0を定める。
監視業務評価プログラム334は、このような複数のアクセスログに同じ観点を推定する処理を、図14のS203に追加し、監視の観点が「障害の原因究明」であるアクセスログ以外に、S204以降の処理を行ってもよい。
前述の複数のアクセスログに同じ監視の観点を推定することによって、監視業務評価プログラム334は、より正確に監視業務評価値M3を算出できる。
さらに、前述の通り、引数V1〜引数V23の値は、運用管理者等によってあらかじめ定められる。これらの引数は、運用管理者がどのように稼働データを確認するかを示す仮定に基づいて、定められる。例えば、引数V1と引数V3との差が小さく定められている場合、引数V1と引数V3との値は、閾値表示がされていない場合も、運用管理者は閾値を意識しながら稼働データを確認している、という仮定に基づいて定められたことを示す。
従って、引数V1〜引数V23の値を適切に定めるため、本実施形態のコンピュータシステムの管理者は、運用管理者がどのように稼働データを確認するかを示す仮定を検証する必要がある。この検証方法は、例えば、運用管理者へのアンケート又はインタビューによって、監視業務がどのように行われるかを検証する方法である。
運用管理者がどのように監視業務を行うか、すなわち、どのように稼働データを確認するかを示す仮定を検証する方法には、監視クライアントによって運用管理者による監視業務の特徴を取得する方法がある。例えば、監視サーバ3は、稼働データを表示する管理者端末20の画面に、その画面を表示した理由を入力するためのボタン、又は、プルダウンメニューを表示させる。そして、監視サーバ3は、運用管理者に監視の観点を入力させる。
さらに、監視サーバ3は、運用管理者によって入力された監視の観点と、入力された時間と、運用管理者が表示していた稼働データとによって、運用管理者がどのように稼働データを確認するかを示す統計情報を生成する。そして、監視サーバ3は、生成された統計情報に従って、引数V1〜引数V23の値を定める。
以上のように、引数の値を定めるため、仮定の検証が必要であるが、一度定められた引数は、複数のコンピュータシステムにおいても使用可能である。引数を他のコンピュータシステムに格納することは、本実施形態の有用性を損なうほど、コンピュータシステムの物理的資源に負担をかけるものではない。
前述の図14及び図17に示す処理によって、図13のS102の処理が終了する。
図18は、本発明の実施形態の監視業務評価プログラム334がアラート送信条件ごとの監視業務評価値M3を算出する処理を示すフローチャートである。
S102の後、S103が実行される。図18は、S103の処理に相当する。図18は、監視業務評価プログラム334が、確認主体がアラート送信条件である監視業務評価値M3を算出する処理を示す。
監視業務評価プログラム334は、S101において受信した範囲T1に基づいて、測定時刻(列1004に対応)が範囲T1に含まれる稼働データを、データベース4の稼働データ1000からすべて取得する(S401)。
S401の後、監視業務評価プログラム334は、すべてのアラート送信条件を、データベース4のアラート送信条件1400から取得する(S402)。
以下のS403〜S414の処理は、S402において取得されたアラート送信条件ごとに、監視業務評価値M3を算出する手順である。S402において取得されたすべてのアラート送信条件の監視業務評価値M3を算出する場合、監視業務評価プログラム334は、S403〜S414の処理を繰り返す。
監視業務評価プログラム334は、S402において取得されたアラート送信条件から、未検証のアラート送信条件、すなわち、S404〜S414の処理が実行されていないアラート送信条件を、一つ選択する(S403)。S403において選択されたアラート送信条件を、以下においてCONDと記載する。
S403の後、監視業務評価プログラム334は、S401において取得された各稼働データに、監視の観点ごとのカウンタ変数が格納される列2005を生成する(S404)。S404において生成される列2005が示すカウンタ変数の初期値は、0である。
具体的には、S404において監視業務評価プログラム334は、S204と同じく、S201において取得された稼働データに基づいて、アラート送信条件ごとの評価値2000を生成する。そして、生成された評価値2000の列2005に0を格納する。
S404の後、監視業務評価プログラム334は、CONDが示す監視の観点を推定し、また、推定された観点毎にカウンタ変数の加算値を算出する(S405)。
一般的に、アラート送信条件に含まれる条件式(列1404に対応)は、監視の観点を直接示す場合が多い。例えば、アラート送信条件1400の行1411の列1404及び列1406は、「直近30分の平均値が90%以上」である場合に、SNMPメッセージが送信されることを示す。すなわち、行1411は、過去30分間に生成された稼働データに含まれるCPU使用率の、過去30分間における平均値が、閾値である90%を越えた場合、アラートが送信されることを示す。このため、行1411の監視の観点は、「閾値監視」である。
また、行1412は、列1404が「最新値が過去一週間の値から大きく外れている」を示すため、行1412に対応する監視の観点は、「外れ値監視」である。また、行1413は、列1404が「過去1ヶ月の傾向に従うと、2か月以内に30を超える」を示すため、行1413に対応する監視の観点は、「傾向監視」である。また、行1414は、列1404が「アクティブセッション数の差が20以上」を示すため、行1414に対応する監視の観点は、「相関関係監視」である。
このため、監視業務評価プログラム334は、S405において、アラート送信条件1400の列1404に格納される値に従って、CONDが示す監視の観点を推定する。また、監視の観点ごとの加算値は、あらかじめ定められる。本実施形態において、S405において定められるすべての監視の観点の加算値は、1.0である。
S405の後、監視業務評価プログラム334は、CONDに含まれる条件ID(列1401に対応)と同じ条件ID(列1501に対応)を含み、検査期間(列1502に対応)が範囲T2と重複する検査ログを、データベース4の検査ログ1500からすべて取得する(S406)。これは、監視業務評価値を算出するための期間に使われた、CONDが示すアラート送信条件を取得するためである。
以下のS407〜S412において、監視業務評価プログラム334は、各検査ログに対応する、カウンタ変数への加算値を算出する。
まず、監視業務評価プログラム334は、S406において取得された検査ログの中に未検証の検査ログ、すなわち、S207〜S214の処理が実行されていない検査ログがあるか否かを判定する(S407)。未検証の検査ログがない場合、監視業務評価プログラム334は、S413に移行する。
未検証の検査ログがある場合、監視業務評価プログラム334は、未検証の検査ログを一つ選択する(S408)。S408において選択された検査ログを、以下においてILOGと記載する。
S408の後、ILOGの検査期間(列1502に対応)と、範囲T1とに重複する期間があるか否かを判定する(S409)。ILOGの検査期間と範囲T1とに重複する期間がない場合、ILOGは、監視業務評価値を算出するための期間に使われていないため、S407に戻り、未検証の新たな検査ログを選択する。
なお、範囲T1と範囲T2とが異なる場合、S409における処理によって、監視業務評価値を算出するための稼働データが生成された期間に使われたアラート送信条件を抽出することができる。
ILOGの検査期間と範囲T1とに重複する期間がある場合、監視業務評価プログラム334は、ILOGの検査期間と範囲T1とが重複する期間を算出する(S410)。S410において算出された期間を、以下において、期間T3と記載する。期間T3を算出することによって、監視業務評価プログラム334は、ILOGの列1501が示すアラート送信条件が使われた期間に、生成された稼働データを選択することができる。
S410の後、監視業務評価プログラム334は、S401において取得された稼働データの中から、CONDの列1402が示す監視対象機器ID及び列1403が示す監視項目IDを、列1002及び列1003に含み、かつ、列1004が示す測定時刻が、期間T3に含まれる稼働データをすべて選択する(S411)。
これによって、監視業務評価プログラム334は、監視業務評価値を算出するための期間T3に生成され、かつ、CONDが示すアラート送信条件が使われた稼働データを、すべて選択することができる。
S411の後、監視業務評価プログラム334は、S411において選択された稼働データに対応し、かつ、S405において推定された監視の観点に対応する評価値2000の行を特定する。そして、特定された行の列2005に、S405において算出された加算値を加算する(S412)。
前述のS403〜S412の処理を、具体例を用いて説明する。例えば、S403において、CONDに行1411のアラート送信条件が選択され、S408において、ILOGに行1511の検査ログが選択された場合を説明する。また、範囲T1には、2011年1月1日00:00:00〜2011年1月31日23:59:59が指定された場合を説明する。
前述の具体例において、監視業務評価プログラム334は、S405において、監視の観点を推定する。監視業務評価プログラム334は、S405において、CONDが示す監視の観点は「閾値監視」であり、加算値は1であると算出する。
そして、監視業務評価プログラム334は、S410において、ILOGの検査期間とT1とが重複する期間T3を算出する。この場合、期間T3は、2011年1月1日00:00:00〜2011年1月19日18:00:00と算出される。
そして、S411において、監視業務評価プログラム334は、行1411の列1402及び列1403を参照し、監視対象機器ID(列1002に対応)が「host1」であり、監視項目ID(列1003に対応)が「OSのCPU使用率」である稼働データを抽出する。さらに、抽出された稼働データから、測定時刻(列1004に対応)が期間T3に含まれる稼働データを、すべて選択する。この結果、監視業務評価プログラム334は、行1011及び行1016の稼働データを選択する。
そして、S412において、監視業務評価プログラム334は、行1011及び行1016に対応し、監視の観点が「閾値監視」を示す評価値2000の行を特定する。すなわち、行2011及び行2026を特定する。そして、行2011及び行2026の列2005に、1を加算する。
S412の後、監視業務評価プログラム334は、S407に戻る。S407において、未検証の検査ログがないと判定された場合、S406において取得された検査ログにS408〜S412の処理をすべて実行したため、監視業務評価プログラム334は、S413に移行する。
S412の後、監視業務評価プログラム334は、評価値2000の列2005が示すカウンタ変数に基づいて、CONDの監視の観点ごとの監視業務評価値M3を算出する(S413)。
S413における算出方法には、同じ監視対象機器ID、監視項目ID、及び、監視の観点の組を含む行を抽出し、抽出された行の列2005が含むカウンタ変数の統計量を算出する。すなわち、S413における監視業務評価値M3の算出方法は、S215と同様であるが、監視業務評価プログラム334は、列2104に、確認主体として、アラート送信条件1400の列1401に対応する値を格納する。
S413の後、S402において取得されたアラート送信条件のうち、未検証のアラート送信条件、すなわち、S403〜S413の処理が実行されていないアラート送信条件があるか否かを判定する(S414)。未検証のアラート送信条件がある場合、監視業務評価プログラム334は、S403に戻る。そして、未検証のアラート送信条件がない場合、監視業務評価プログラム334は、図18に示す処理を終了し、図13のS103が終了する。
前述の図18の処理によって、図16に示す行2117〜行2119が生成される。すなわち、評価値2100の列2104が示す確認主体に、アラート送信条件の条件ID(列1401及び列1501に対応)が格納される行が生成される。
また、図18の処理において、監視業務評価プログラム334は、アラート送信条件ごとに監視業務評価値M3を算出することによって、アラート送信条件によって稼働データが十分に検査がされているかを示す定量的な指標を、運用管理者に提示することができる。
図19は、本発明の実施形態の監視業務評価プログラム334が監視業務評価値M3に基づいて監視業務評価値M2を算出する処理を示すフローチャートである。
図19に示す処理は、図13に示すS104に対応し、監視業務評価M2を算出するための処理である。監視業務評価M2は、監視対象機器、監視項目、及び、監視の観点によって示される監視業務のうち、いずれの監視業務が十分に監視されているかを示す指標である。すなわち、観点による監視の十分さを示す指標である。
図19の処理において使われる引数W1〜引数W13は、監視業務評価プログラム334があらかじめ保持するパラメータである。図19の処理における引数W1〜引数W13は、0以上の値である。また、図19の処理において使われる引数Rも、監視業務評価プログラム334があらかじめ保持するパラメータである。図19の処理における引数Rは、0〜1の値である。
監視業務評価プログラム334は、図14に示す処理によって算出された監視業務評価値M3から、監視対象機器ID、監視項目ID及び監視の観点の一意な組合せを抽出し、抽出された組合せによって、後述する評価値2200の列2201、列2202、列2203を含む行を生成する(S501)。そして、S501において生成された行毎に、カウンタ変数を格納する列を追加する(S502)。S502においてカウンタ変数の値は、0である。
図20は、本発明の実施形態の監視業務評価値M2のカウンタ変数を含む評価値2200を示す説明図である。
評価値2200には、監視業務評価値M2を算出するためのカウンタ変数が含まれる。評価値2200は、列2201〜列2204を含む。
列2201は、監視対象機器IDを示す。列2201に格納される値は、評価値2100の列2101に格納される値に対応する。列2202は、監視項目IDを示す。列2202に格納される値は、評価値2100の列2102に格納される値に対応する。
列2203は、監視の観点を示す。列2203に格納される値は、評価値2100の列2103に格納される値に対応する。列2204は、監視業務評価値M2を算出するためのカウンタ変数を示す。
列2204が示すカウンタ変数は、列2201が示す監視対象機器において生成され、列2202が示す監視項目を含む稼働データが、列2203が示す監視の観点によって、アクセス又は検査された頻度を示す。
以下のS503〜S515の処理によって、監視業務評価プログラム334は、各監視業務評価値M3のそれぞれの重みを算出し、監視業務評価値M2を算出するためのカウンタ変数に、算出された重みを加算する。
S502の後、監視業務評価プログラム334は、図14に示す処理に従って生成された評価値2100から、未検証の行、すなわち、S503〜S515が実行されていない行を1行選択する(S503)。S503において選択された行を、以下において、評価値M3−1と記載する。
S503の後、監視業務評価プログラム334は、評価値M3−1の確認主体(列2104に対応)が運用管理者を示すかアラート送信条件を示すかを判定する(S504)。
評価値M3−1の確認主体(列2104に対応)がアラート送信条件を示す場合、評価値M3−1は、アラート送信条件による稼働データの検査を示し、運用管理者によってアラートが示す稼働データが確認されたか否かを示さない。このため、監視業務評価プログラム334は、評価値M3−1が示すアラートの送信によって、運用者による監視がどの程度十分に行われたか否か、すなわち、評価値M3−1が示すアラートの送信が運用管理者による監視にどの程度役立っているかを示す指標を算出するため、S508〜S513の処理を実行する。
評価値M3−1の列2104が運用管理者を示す場合、監視業務評価プログラム334は、列2104が示す運用管理者が、列2101及び列2102が示す監視業務を行う担当に、あらかじめ定められていたか否かを判定する(S505)。
S505の判定によって、監視業務評価プログラム334は、担当者以外の運用管理者によって補助的に行われた監視業務に定められる評価値と異なる値を、担当者である運用管理者によって行われた監視業務に定める。これは、担当者である運用管理者によって行われた監視業務は、担当者以外の運用管理者によって行われた監視業務よりも、より効果的で、十分な監視が行われるという仮定に基づく。このため、担当者である運用管理者によって行われた監視業務には、高い評価値が定められる。
S505において、監視業務評価プログラム334は、データベース4の担当者情報1600の列1601〜列1603を参照し、評価値M3−1の運用管理者(列2104に対応)が、評価値M3−1の列2102及び列2103が示す監視対象機器及び監視項目の担当者であるか否かを判定する。
そして、評価値M3−1の運用管理者が、評価値M3−1の列2102及び列2103が示す監視対象機器及び監視項目の担当者である場合、監視業務評価プログラム334は、評価値M3−1の監視業務評価値M3(列2105の値に対応)に引数W1を乗じる。そして、評価値M3−1の列2101、列2102及び列2103に対応する値を含む、評価値2200の行の列2204に、乗じられた結果を加算する(S506)。
評価値M3−1の列2104が示す運用管理者が、評価値M3−1の列2102及び列2103が示す監視対象機器及び監視項目の担当者ではない場合、監視業務評価プログラム334は、評価値M3−1の監視業務評価値M3(列2105の値に対応)に引数W2を乗じる。そして、評価値M3−1の列2101、列2102及び列2103に対応する値を含む、評価値2200の行の列2204に、乗じられた結果を加算する(S507)。
前述のS505〜S507は、あらかじめ定められた担当者による監視業務の方がより効果的な監視業務であるという仮定に基づいており、引数W1は、引数W2よりも大きい値である。図20に示す引数W1は、1.0であり、引数W2は、0.5である。但し、前述の仮定とは異なる仮定に基づく場合、引数W1が引数W2よりも大きい値でなくてもよい。
S504において、評価値M3−1の列2104が示す確認主体が、アラート送信条件である場合、監視業務評価プログラム334は、S508に移行する。そして、監視業務評価プログラム334は、列2104が示すアラート送信条件によって送信されたアラートが、実際の監視業務に役立っている度合いに従って、監視業務評価値M3の重みを定める。
監視業務評価プログラム334は、評価値M3−1の列2104に対応する条件IDを列1703に含み、列1702が示すアラート送信時間が範囲T2の期間に含まれるアラート送信履歴を、アラート送信履歴1700から取得する(S508)。
S508の後、監視業務評価プログラム334は、S508において取得されたアラート送信履歴が0件であるか否かを判定する(S509)。
そして、S508において取得されたアラート送信履歴が0件である場合、評価値M3−1が示すアラート送信条件によってアラートは送信されず、評価値M3−1が示すアラート送信条件は、運用者による監視に役立っているか否かは不明である。このため、監視業務評価プログラム334は、評価値M3−1の監視業務評価値M3に引数W11を乗じる。そして、乗じられた結果を、評価値M3−1に対応する評価値2200の列2204に加算する(S510)。
図19に示す引数W11は、0.8である。引数W11は、標準的な監視業務評価値の数値を算出するための数値である。
S508において取得されたアラート送信履歴が1件以上あると、S509において判定された場合、監視業務評価プログラム334は、アラート送信履歴の列1704が示す確認状況に基づいて、S508において取得されたアラート送信履歴の確認完了率を算出する。そして、算出された確認完了率が引数R以上であるか否かを判定する(S511)。
算出された確認完了率が高いほど、評価値M3−1が示すアラート送信条件によって送信されたアラートが運用管理者によってより確認されていることを示す。また、算出された確認完了率が高い場合、評価値M3−1が示すアラート送信条件は、実際の監視業務に役立っている。
S511において、監視業務評価プログラム334は、S508において取得されたすべてのアラート送信履歴の行数に対する、列1704に「完了」が格納されている行の割り合いを算出することによって、確認完了率を算出する。
確認完了率が引数R以上である場合、監視業務評価プログラム334は、評価値M3−1が示すアラート送信条件が役立っているため、評価値M3−1の監視業務評価値M3に引数W12を乗じる。そして、評価値M3−1の列2101、列2102及び列2103に対応する値を含む、評価値2200の行の列2204に、乗じられた結果を加算する(S512)。
S511において、確認完了率が引数R未満であると判定された場合、評価値M3−1が示すアラート送信条件は役立っていないため、監視業務評価プログラム334は、評価値M3−1の監視業務評価値M3に引数W13を乗じる。そして、評価値M3−1の列2101、列2102及び列2103に対応する値を含む、評価値2200の行の列2204に、乗じられた結果を加算する(S513)。
確認完了率が高い程、アラート送信履歴によるアラートが監視業務に役立っているため、引数W12は、引数W13よりも大きい値である。図19に示す引数W12は、1.0であり、引数W13は、0.2である。
前述のS510において、アラート送信履歴が0件の場合に、監視業務評価値M3に乗じる値は、定数(引数W11)であるが、本実施形態のコンピュータシステムの運用状況に従って、引数W11を動的に変化させてもよい。
例えば、既に送信されているアラートの確認完了率が高いコンピュータシステムは、今後新たに送信されるアラートの確認完了率が高くなると考えられる。このため、範囲T2に送信されたすべてのアラートの確認完了率を算出し、アラート送信履歴が0件の場合の引数W11の値を定めてもよい。
具体的には、例えば、範囲T2に送信されたすべてのアラートの確認完了率が引数R以上である場合、引数W11を引数W12と同じ値にし、すべてのアラートの確認完了率が引数Rを下回る場合、引数W11を引数W13と同じ値にしてもよい。
監視業務評価プログラム334は、未検証の評価値2100の行、すなわち、前述のS503〜S513の処理が行われていない評価値2100の行があるか否かを判定する(S514)。未検証の評価値2100の行がある場合、監視業務評価プログラム334は、S503に戻る。これによって、評価値2100のすべての行に、S501〜S513の処理を実行する。
未検証の評価値2100の行がない場合、監視業務評価プログラム334は、生成された評価値2200を、評価値2300に格納する(S515)。S515の後、監視業務評価プログラム334は、図19の処理を終了する。図19の処理が終了すると、図13のS104が終了する。
図19に示す処理によって、監視業務評価プログラム334は、評価値2200を生成し、列2204が示すカウンタ変数を算出する。そして、図21に示す監視業務評価値M2を算出する。これによって、監視業務評価プログラム334は、各監視対象機器の監視項目が、いずれの監視の観点によって最もよく監視されたかを示す指標を、運用管理者に提示することができる。
図21は、本発明の実施形態の監視業務評価値M2を含む評価値2300を示す説明図である。
監視業務評価値M2は、監視対象機器、監視項目、及び、監視の観点が示す監視業務ごとに算出される。すなわち、監視業務評価値M2は、各監視対象機器の監視項目が、いずれの監視の観点によって最もよく監視されたかを示す。
図21に示す評価値2300は、監視サーバ3のメモリ33に格納される。評価値2300は、列2301〜列2304を含む。
列2301は、監視対象機器IDを示す。列2301に格納される値は、評価値2200の列2201に格納される値に対応する。列2302は、監視項目IDを示す。列2302に格納される値は、評価値2200の列2202に格納される値に対応する。列2303は、監視の観点を示す。列2303に格納される値は、評価値2200の列2203に格納される値に対応する。
列2304は、監視業務評価値M2を示す。列2304に格納される値は、評価値2200のカウンタ変数と同じ値である。
図19に示す処理を、具体例を用いて説明する。図16の監視業務評価値M3に基づいて、監視対象機器IDが「host1」であり、監視項目IDが「OSのCPU使用率」であり、監視の観点が「閾値監視」である監視業務の、監視業務評価値M2を算出する場合を、以下に示す。また、範囲T1には、2011年1月1日00:00:00〜2011年1月31日23:59:59、範囲T2には、2011年1月1日00:00:00〜2011年2月7日23:59:59が指定された場合を以下に示す。また、この場合において、引数Rは0.8である。
なお、図19に示す処理において、評価値2100の各行に、S504〜S514の処理が行われるため、評価値2200の各行が順に生成されるが、以下に示す例においては、監視対象機器IDが「host1」であり、監視項目IDが「OSのCPU使用率」であり、監視の観点が「閾値監視」である監視業務、すなわち、評価値2200の行2211のカウンタ変数が算出される処理のみを示す。
評価値2200の行2211のカウンタ変数が算出される場合、S503において、評価値2100の行2111、行2114、又は、行2117が選択される。
監視業務評価プログラム334は、S504において、行2111の列2104を参照し、行2111の監視業務が運用管理者によるものであると判定する。そして、S505において、行2111の列2104と、担当者情報1600の列1601とを参照し、行1611及び行1612を特定する。
特定された行1611の列1602と列1603とは、運用管理者IDが「operator1」である運用管理者は、監視対象機器host1のすべての監視項目の担当者であることを示す。このため、S505において、監視業務評価プログラム334は、行2111が示す監視業務が担当者によるものであると判定する。
そして、監視業務評価プログラム334は、S506において、行2111の列2105から監視業務評価値M3を取得し、取得された監視業務評価値M3(0.8)と、引数W1(1.0)とを乗算する。そして、乗算された結果である0.8を、行2211の列2204に格納されていた値に加算する。
さらに、監視業務評価プログラム334は、S504において、行2114の列2104を参照し、行2114の監視業務が運用管理者によるものであると判定する。そして、S505において、行2114の列2104と、担当者情報1600の列1601とを参照し、行1613を特定する。
特定された行1613の列1602と列1603とは、運用管理者IDが「operator2」を示す運用管理者は、すべての監視対象機器の監視項目「Webアプリケーションの応答時間」の担当者であることを示す。このため、S505において、監視業務評価プログラム334は、行2114の監視業務が担当者によるものではないと判定する。
そして、監視業務評価プログラム334は、S507において、行2114の列2105から監視業務評価値M3を取得し、取得された監視業務評価値M3(1.4)と、引数W2(0.5)とを乗算する。そして、乗算された結果である0.7を、行2211の列2204に格納されていた値に加算する。
さらに、監視業務評価プログラム334は、S504において、行2117の列2104を参照し、行2114の監視業務がアラート送信条件によるものであると判定する。そして、S508において、行2117の列2104と対応する値を列1703に含み、範囲T2に列1702の値が含まれる、アラート送信履歴1700の行1712、及び、行1714を取得する。
監視業務評価プログラム334は、S508において取得された行が0行ではないと判定する。そして、S511において、監視業務評価プログラム334は、行1712及び行1714の列1704に基づいて、確認完了率を算出する。
算出される確認完了率は、1/2(=0.5)である。前述の通り、引数Rは0.8である。このため、監視業務評価プログラム334は、S511において、確認完了率は引数R以上ではないと判定する。
そして、監視業務評価プログラム334は、S513において、行2117の列2105から監視業務評価値M3を取得し、取得された監視業務評価値M3(1.0)と、引数W13(0.2)とを乗算する。そして、乗算された結果である0.2を、行2211の列2204に格納されていた値に加算する。この時、監視業務評価プログラム334は、行2211の列2204に格納されるカウンタ変数を、0.8+0.7+0.2=1.7と算出する。
前述の処理を、評価値2100の各行に繰り返すことによって、監視業務評価プログラム334は、評価値2200を生成する。そして、生成された評価値2200の各列を、評価値2300の各列に格納する。
前述の図19の処理において、確認主体が運用管理者の場合、監視業務評価プログラム334は、担当者情報1600に基づいて、監視業務評価値M3の重みを定めた。しかし、監視業務評価値M3に対する重みを定める方法は、本実施形態に限定されるものではない。例えば、運用管理者の能力、勤続年数、又は、過去に障害の予兆を発見した回数などに基づいて重みを定めてもよい。
一方、前述の図19の処理において、確認主体がアラート送信条件の場合、監視業務評価プログラム334は、アラート送信履歴1700から算出される確認完了率に基づいて監視業務評価値M3の重みを定めた。しかし、重みを定める方法は本実施形態に限定されるものではない。例えば、各アラートが実際に障害又は障害の予兆の発見に役立ったか否かに基づいて、そのアラートを送信したアラート送信履歴の重みを定めてもよい。
なお、前述の図19の処理において、確認主体がアラート送信条件である場合の監視業務評価値M2を算出したが、監視業務評価値M3において、確認主体にアラート送信条件が含まれていない場合、S508〜S518は実行されなくてもよい。これは、前述のとおり、アラートの送信によって運用管理者が行った稼働データへのアクセスを示すアクセスログも、図14の処理によって、監視業務評価値M3が算出されているためである。このため、確認主体にアラート送信条件が含まれない場合も、監視業務評価プログラム334は、目視による監視と機械的な検査による監視との十分さを運用管理者に提示することができる。
図22は、本発明の実施形態の監視業務評価プログラム334が監視業務評価値M2に基づいて監視業務評価値M1を算出する処理を示すフローチャートである。
図22に示す処理は、図13のS105に対応し、監視業務評価値M2に基づいて、監視業務評価値M1を算出するための処理である。
まず、監視業務評価プログラム334は、S104の処理によって生成された評価値2300から、監視対象機器ID及び監視項目IDの一意な組み合わせを抽出し、後述する評価値2400の列2401及び列2402を生成する(S601)。また、S601において、監視業務評価値M1が格納される列2403を生成する。
図23は、本発明の実施形態の監視業務評価値M1を含む評価値2400を示す説明図である。
監視業務評価値M1は、監視対象機器IDと監視項目IDとが示す監視業務ごとに算出される。すなわち、評価値2300は、各監視対象機器の各監視項目が、どの程度十分に監視されたかを示す。
図23に示す評価値2400は、監視サーバ3のメモリ33に保持される。評価値2400は、列2401〜列2403を含む。
列2301は、監視対象機器IDを示す。列2401に格納される値は、評価値2300の列2301に格納される値に対応する。列2402は、監視項目IDを示す。列2402に格納される値は、評価値2300の列2302に格納される値に対応する。列2403は、監視業務評価値M1を示す。
S601の後、監視業務評価プログラム334は、生成された評価値2400から、未検証の行、すなわち、S603〜S606の処理が実行されていない行を一つ選択する(S602)。S602において選択された行を、以下においてCOMBと記載する。
S602の後、監視業務評価プログラム334は、COMBに含まれる監視対象機器ID(列2401に対応)及び監視項目ID(列2402に対応)と、同じ監視対象機器ID(列2301に対応)及び監視項目ID(列2302に対応)を含む、評価値2300の行をすべて抽出する。そして、抽出された行に含まれる監視業務評価値M2をすべて特定する(S603)。
S603の後、監視業務評価プログラム334は、S603において特定された行に含まれる各監視業務評価値M2(列2304に対応)の重要度を、データベース4の観点の重要性1800から取得する(S604)。
具体的には、監視業務評価プログラム334は、S603において抽出された評価値2300の各行の列2301、列2302、及び、列2303と、同じ列1801、列1802、及び、列1803を含む行を、観点の重要性1800から抽出する。そして、抽出された行の列1804の値を取得する。すなわち、監視業務評価プログラム334は、列1804の値を、S603において特定された各行の、監視業務評価値M2の重要度として取得する。
S604の後、監視業務評価プログラム334は、S604において取得された各監視業務評価値M2の重要度に基づいて、各監視業務評価値M2の重みを定める(S605)。重みを定める方法には、例えば、一つの行が示す監視業務評価値M2の重要度を、S604において取得されたすべての重要度の値の総和によって割った値を、その監視業務評価値M2に対する重みとする方法がある。
S605の後、S603において取得された監視業務評価値M2と、S605において定められた各監視業務評価値M2の重みとに基づいて、監視業務評価プログラム334は、COMBの監視対象機器ID(列2401に対応)と監視項目ID(列2402に対応)とが示す監視業務に対する監視業務評価値M1を算出する(S606)。この算出方法には、例えば、それぞれの監視業務評価値M2にその重みを乗じた値の総和を、監視業務評価値M1とする方法がある。
S606の後、監視業務評価プログラム334は、S601において抽出された評価値2300の行のうち、未検証の行、すなわち、S602〜S606が実行されていない行があるか否かを判定する(S607)。そして、未検証の行がある場合、監視業務評価プログラム334は、S602に戻る。未検証の行がない場合、監視業務評価プログラム334は、図22に示す処理を終了する。
以上の処理によって、監視業務評価プログラム334は、監視業務評価値M2に基づいて監視業務評価値M1を算出し、図23に示す評価値2400を生成する。
前述の図22の処理を、具体例を用いて説明する。
例えば、監視業務評価プログラム334が、図21の監視業務評価値M2から、監視対象ID「host1」および監視項目ID「OSのCPU使用率」の組み合わせに対する監視業務評価値M1を算出する処理を説明する。
監視業務評価プログラム334は、S602において、評価値2400の列2401が「host1」を示し、列2402が「OSのCPU使用率」である行2411を選択する。そして、S603において、監視業務評価プログラム334は、列2301が「host1」であり、列2302が「OSのCPU使用率」である行2311〜行2313を特定する。
そして、S604において、監視業務評価プログラム334は、観点の重要性1800を参照し、行2311に対応する観点の重要性1800の行1811を特定する。そして行1811に含まれる列1804の値(4)を、行2311の監視業務評価値M2の重要度として、取得する。
また、S604において、監視業務評価プログラム334は、行2312に対応する観点の重要性1800の行1812を特定する。そして行1812に含まれる列1804の値(4)を、行2312の監視業務評価値M2の重要度として、取得する。
また、S604において、監視業務評価プログラム334は、行2313に対応する観点の重要性1800の行1813を特定する。そして行1813に含まれる列1804の値(2)を、行2313の監視業務評価値M2の重要度として、取得する。
そして、S605において、監視業務評価プログラム334は、各重要度(4、4、2)を重要度の総和(10)で割った値を、監視業務評価値M2ごとの重みに定める。監視業務評価プログラム334は、行2311、行2312、及び、行2313の監視業務評価値M2の重みに、それぞれ0.4、0.4、及び、0.2を定める。
そして、S606において、監視業務評価プログラム334は、行2311、行2312、及び、行2313の列2304の値に、S604において決定された重みを乗算する。乗算された結果は、行2311には、0.68が算出され、行2312には、0.04が算出され、行2313には、0.1が算出される。そして、乗算された結果の総和(0.82)を算出することによって、監視業務評価値M1を算出する。
前述の処理の結果、列2401が監視対象機器ID「host1」であり、列2402が監視項目ID「OSのCPU使用率」である行2411の列2403には、0.82が格納される。
前述の通り、監視業務評価プログラム334は、監視業務評価値M1を算出することによって、目視による監視と機械的な検査による監視との十分さを運用管理者に提示することができる。そして、これによって、監視の漏れを低減することができる。
具体的には、監視業務評価プログラム334は、稼働データ、稼働データに対する各運用管理者のアクセスログ、及び、各アラート送信条件による検査ログに基づいて、3種類の監視業務評価値M1、M2、及びM3を算出する。そして、運用管理者は、これらの監視業務評価値を確認することによって、コンピュータシステムにおいて、監視が不十分な監視対象機器及び監視項目を迅速に特定できる。
図22に示す処理が終了すると、図13に示すS105が終了する。監視業務評価プログラム334は、前述の通り、S105の後、S106において、算出された監視業務評価値M1、監視業務評価値M2、及び、監視業務評価値M3を監視クライアントに送信する。
図24は、本発明の実施形態の運用管理者に提示される監視業務評価値M1のテーブル2500を示す説明図である。
図24のテーブル2500は、監視業務評価プログラム334によって、評価値2400から生成され、監視クライアントを有する管理者端末20等に表示されるテーブルである。テーブル2500の行は、評価値2400の列2402に対応し、テーブル2500の列は、評価値2400の列2401に対応する。また、各セルに格納される値は、列2403に格納される値に対応する。
運用管理者は、テーブル2500を参照し、監視業務評価値M1の値が低い監視対象機器及び監視項目を抽出することによって、監視が不十分な監視対象機器及び監視項目が示す監視業務を特定することができる。
例えば、図24のテーブル2500は、監視対象機器「host3」の監視項目「データアップロード件数」の監視業務評価値M1が低い。このため、運用管理者は、監視対象機器「host3」の一部の稼働データについて、監視が十分でないことを迅速に特定できる。
また、運用管理者は、監視業務評価値M2、及び、監視業務評価値M3を参照することによって、いずれの監視業務が不十分であるかを、より正確に認識することができる。監視が不十分な監視対象機器及び監視項目を迅速に特定することによって、運用管理者が監視業務を見直すまでの時間が低減され、これによって、障害を見逃す可能性を低減できる。
さらに、監視業務評価値は、アラートが発生していない監視対象機器についても算出されるため、運用管理者は、本実施形態の処理を実行することによって、正常に動作する監視対象機器に対する監視の十分さも定量化できる。
また、異なるコンピュータシステム上の監視サーバ3において、それぞれ監視業務評価値を算出した場合、異なるコンピュータシステムの監視の十分さを比較できる。これによって、異なるコンピュータシステムの運用管理者同士が、各コンピュータシステムにおける監視業務評価値を比較し、監視が不十分な監視対象機器を迅速に特定できる。これによって、お互いの監視ノウハウを共有すべき箇所を迅速に特定できる。そして、異なるコンピュータシステムの運用管理者同士で監視業務のノウハウを共有することによって、結果的に障害を見逃す可能性を低減できる。
更に、一つのコンピュータシステムについて、異なる期間のアクセスログ及び検査ログに基づいて監視業務評価値を算出することによって、運用管理者は、異なる期間の監視の十分さを比較可能になる。例えば、先月のアクセスログ及び検査ログに基づく監視業務評価値と、今月のアクセスログ及び検査ログに基づく監視業務評価値をそれぞれ算出することによって、運用管理者は、1ヶ月を経過した後に監視の十分さがどの程度改善したかを確認できる。
又は、監視業務の見直し前と見直し後とにおける監視業務評価値を算出することによって、運用管理者は、監視業務の見直しによる効果を定量的に評価できる。
本実施形態の監視業務評価プログラム334は、監視業務評価値M2のように、監視対象機器と監視項目とが示す稼働データだけでなく、監視の観点ごとに算出できる。このため、算出された監視業務評価値M2を参照することによって、運用管理者は、どのような監視の観点が不足しているかを迅速に特定できる。これによって、障害を見逃す可能性を低減できる。
また、本実施形態の監視業務評価プログラム334は、監視を行った運用管理者及びアラート送信条件ごとに算出できる。
このように算出された監視業務評価値を用いることによって、運用管理者は、どの運用管理者の活動、又は、アラート送信条件の条件式を見直すべきかを迅速に特定できる。これによって、障害を見逃す可能性を低減できる。
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。