[go: up one dir, main page]

JP2014137635A - 応答時間監視プログラム、方法および応答時間監視装置 - Google Patents

応答時間監視プログラム、方法および応答時間監視装置 Download PDF

Info

Publication number
JP2014137635A
JP2014137635A JP2013004728A JP2013004728A JP2014137635A JP 2014137635 A JP2014137635 A JP 2014137635A JP 2013004728 A JP2013004728 A JP 2013004728A JP 2013004728 A JP2013004728 A JP 2013004728A JP 2014137635 A JP2014137635 A JP 2014137635A
Authority
JP
Japan
Prior art keywords
response time
job type
job
correspondence
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013004728A
Other languages
English (en)
Other versions
JP5974905B2 (ja
Inventor
Yasuhiko Kanemasa
泰彦 金政
Atsushi Kubota
敦 久保田
Masazumi Matsubara
正純 松原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013004728A priority Critical patent/JP5974905B2/ja
Publication of JP2014137635A publication Critical patent/JP2014137635A/ja
Application granted granted Critical
Publication of JP5974905B2 publication Critical patent/JP5974905B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】 応答時間監視装置で、監視対象が実行するジョブに最適な閾値を用いて応答時間を監視することを目的とする。
【解決手段】 応答時間監視装置1は、学習部14が、監視対象コンピュータで一定時間に実行される全ジョブ合計の同時実行数と各ジョブ種でのジョブ種単独の同時実行数と平均応答時間とを計算し、ジョブ種毎に、その平均応答時間と全ジョブ合計の同時実行数との第1の対応関係とジョブ種単独の同時実行数との第2の対応関係とを生成し、該ジョブ種に対応する第1の対応関係および第2の対応関係のうち平均応答時間との相関が高い対応関係を選択する学習部14と、予め設定された時間毎に前記監視対象コンピュータで実行される各ジョブの応答時間を取得し、各ジョブの応答時間を、該ジョブのジョブ種に対応して選択された対応関係を用いて決定した閾値をもとにアラート対象とするかを判断する診断部15を備える。
【選択図】 図4

Description

本発明は、コンピュータの応答時間監視処理に関する。
監視対象であるコンピュータの応答時間を監視し、正常と許容できる範囲(正常範囲)を超えた応答時間となった場合にアラートを発するが、正常範囲の閾値(上限値、下限値)を適切に設定することは難しい。
正常範囲の閾値が低過ぎる場合は、アラートが多発して管理者がアラートに慣れてしまい注意を払わなくなるおそれがある。また、閾値が高過ぎる場合は、問題が生じていてもアラートが発せられない状態となり、管理者が問題に対処するのが遅れてしまうおそれがある。
さらに、コンピュータの短期的な負荷集中によって自然に応答時間が増加したような場合は、管理者が対処を要する問題が発生していないので、アラートを抑制することが望ましい。
例えば、電子メール管理サーバ(コンピュータ)の応答時間が特定の時間帯に増加する場合、人事管理システムや給与管理システムのコンピュータの応答時間が特定の期間に増加する場合など、一時的な処理集中による応答時間の増加に基づくアラートが発せられると、管理者はアラートの原因の調査と、対応策が要求されるため、管理業務の負担になるだけでなく、不要なアラートに対する慣れによって本来のアラートを見落とす可能性が高くなる等の問題が生じる。
そのため、従来では、管理者は、応答時間の増加によるアラートがあると、監視対象のコンピュータに対するアラートの原因調査と発生している問題への対処が必要であるかの判断を手作業で行っていた。詳しくは、監視対象のコンピュータの応答時間についてアラートが検出されると、管理者が他の様々な性能指標をチェックし、コンピュータに何が起こっているのかを総合的に判断し、問題が生じていると判断した場合に必要な対処を行っていた。
また、従来、複数のランクの警報を発するために、監視対象の装置データ間の関係を示す不変量を抽出して、複数のルールの複数の等価しきい値を不変量のネットワークで計算し、監視対象の装置から警報を受信すると、普段の状態とどの程度異なる状況かによりその警報をランク付ける装置が知られている。
さらに、従来、分散システムの能力計画と資源最適化のために、各装置や資源から収集された測定値間の関係を示す不変式を求め、不変式とユーザ負荷を示すフロー強度とにより分散システムを構成する要素の能力を決定する方法が知られている。
特表2011−521380号公報 特表2010−507146号公報
監視対象のコンピュータに発生した問題による応答時間の増加の場合は、速やかにアラートを発生させる必要があるが、上記のように、コンピュータの短期的な負荷集中によって自然に応答時間が増加した場合にはアラートを抑制することが望ましい。
コンピュータの負荷の集中による応答時間の増加する場合として、一般的に、多数のユーザが同時にアクセスする場合があるが、時間経過により自然解消するためアラートが不要である。また、排他ロックを行う処理が実行されている場合には、アクセスするユーザ数が少なくても応答時間が一時的に増加するが、アラートは不要である。
そのため、短期的な負荷集中による自然な応答時間の増加と問題発生による異常な応答時間の増加とを区別してアラートを発生させられるような正常範囲の設定が必要であるが、従来手法では、2つの応答時間の増加を区別できる正常範囲の設定が難しい。
例えば、複数データ間の相関分析にもとづいて異常を判断する場合には、正常範囲の設定に用いる複数データの相関が不明であり、自然な負荷集中であっても相関が乱れただけで異常と判断されてアラートが多発する可能性がある。
さらに、監視対象に実際に問題が発生することなく、応答時間の正常範囲の閾値を適切に設定する必要がある。
本発明の目的は、監視対象のコンピュータの応答時間について、一時的な負荷集中と問題発生とを区別できるように正常範囲を設定し、異常な応答時間の増加のみにアラートを出力できる応答時間監視技術を提供することである。
本発明の一態様として開示され応答時間監視プログラムは、監視対象コンピュータの応答時間を監視するために、コンピュータに、1)監視対象コンピュータで一定時間に実行される全ジョブ合計の同時実行数と、各ジョブ種について、ジョブ種単独の同時実行数と該ジョブ種の平均応答時間とを計算し、2)前記ジョブ種毎に、該ジョブ種の平均応答時間と全ジョブ合計の同時実行数との第1の対応関係と、該ジョブ種の平均応答時間とジョブ種単独の同時実行数との第2の対応関係とを生成し、3)前記ジョブ種毎に、対応する前記第1の対応関係および前記第2の対応関係のうち、該ジョブ種の平均応答時間との相関が高い対応関係を選択し、4)予め設定された時間毎に前記監視対象コンピュータで実行される各ジョブの応答時間を取得し、5)前記各ジョブの応答時間を、該ジョブのジョブ種に対応して選択された対応関係を用いて決定した閾値をもとにアラート対象とするかを判断する、処理を実行させるためのものである。
開示する応答時間監視プログラムによれば、監視対象の応答時間の増加が短期的な負荷集中による自然な応答時間増加であるか、問題の発生による異常な応答時間増加であるかを区別した監視を実現することができる。
図1は、応答時間監視装置の一実施例におけるハードウェア構成例を示す図である。 同時実行数と応答時間の関係の直線近似をもとに応答時間の正常範囲を設定する根拠を説明するための図である。 応答時間監視装置が実施されるシステムの構成例を示す図である。 応答時間監視装置の一実施例における機能ブロック構成例を示す図である。 一実施例においてメッセージ記憶部に記憶されているプロトコルメッセージの例を示す図である。 一実施例におけるHTTPプロトコルのジョブ種の分類ルールを示す図である。 一実施例におけるDBプロトコルのジョブ種の分類ルールを示す図である。 一実施例における一定の時間間隔に分割した各細分化区間および各ジョブの応答時間の例を示す図である。 一実施例における同時実行数と応答時間の計算例を示す図である。 一実施例における同時実行数と応答時間の対応関係のプロット例を示す図である。 一実施例における直線近似および同時実行数の選択を説明するための図である。 一実施例におけるグラフ上での信頼区間による応答時間の正常範囲の設定例を示す図である。 一実施例における応答時間モデルの例を示す図である。 一実施例における学習処理の処理フロー例を示す図(1)である。 一実施例における学習処理の処理フロー例を示す図(2)である。 一実施例における応答時間の診断処理の処理フロー例を示す図である。 一実施例におけるステップS32の診断処理のより詳細な処理フロー例を示す図である。
以下、本発明の一態様として開示する応答時間監視方法を実行する応答時間監視装置について説明する。
図1は、応答時間監視装置1の一実施例におけるハードウェア構成例を示す図である。
応答時間監視装置1は、CPU101、短期記憶部(DRAM)102、長期記憶部(HDD)103、ネットワークインタフェース104、入力装置(キーボード、マウス等)105、出力装置(ディスプレイ、プリンタ等)106が内部ネットワーク等で接続されたコンピュータとして実施することができる。
応答時間監視装置1は、監視対象のコンピュータ、コンピュータシステム等の応答時間監視処理に必要な情報をファイルとして長期記憶部103に記憶し、入力装置105から実行プログラムを起動し、起動された実行プログラムが、短期記憶部102にロードされ、ネットワークインタフェース104で受信した監視対象がパケットデータをもとに処理を実行する。
応答時間監視装置1は、必要に応じて情報を長期記憶部103から短期記憶部102に読み出しながら応答時間監視処理を進め、監視対象の応答時間が正常範囲を超えた場合に、ネットワークインタフェース104から予め設定された管理者の端末装置へアラート情報を送信する。また、応答時間監視装置1は、アラート情報を出力装置106へ出力することもできる。
なお、応答時間監視処理の実行プログラムは、CD−ROM、CD−RW、DVD−R、DVD−RAM、DVD−RW等やフレキシブルディスク等の記録媒体だけでなく、通信回線の先に備えられた他の記憶装置やコンピュータのハードディスク等に記憶されるものであってもよい。
応答時間監視装置1は、監視対象のコンピュータまたはコンピュータシステムの応答時間が正常であると許容できる範囲(正常範囲)を示す閾値(上限値または下限値またはその両方)を監視対象のコンピュータの負荷量に基づいて動的に変更する。
応答時間監視装置1が監視する応答時間は、監視対象のコンピュータまたはコンピュータシステムにリクエストが到達した時点からレスポンスが出力する時点までの経過時間を意味する。
また、監視対象の負荷量として、一定の時間単位毎のジョブの同時実行数を用いる。
コンピュータで同時期に実行されているジョブ数(同時実行数)の増加に応じて応答時間が増加し、ハードウェア資源が飽和すると応答時間はジョブの同時実行数の増加分を超えて増加する。
応答時間監視装置1は、監視対象のコンピュータ上で実行されるジョブ種毎の応答時間と共に、一定時間内に実行されているジョブ種毎(ジョブ種単独)の同時実行数と全てのジョブ(全ジョブ合計)の同時実行数とを計測する。
そして、応答時間監視装置1は、学習フェーズとして、ジョブ種毎に、その応答時間と2つの種類の同時実行数それぞれとの対応関係を求め、全ジョブ合計とジョブ種単独とどちらの種類の同時実行数とより相関するかを評価し、より相関すると評価した同時実行数の種類と応答時間との対応関係の直線近似を求め、近似直線から統計上の信頼区間の上限および下限を応答時間の正常範囲として、その閾値(上限値、下限値)を示す応答時間モデルを求めて保持しておく。
図2は、同時実行数と応答時間の関係の直線近似をもとに応答時間の正常範囲を設定する根拠を説明するための図である。
図2において(a)で示す同時実行数の分布は、個々のジョブが消費する資源(CPU等)の量のばらつきを示している。例えば、同じジョブ種であっても具体的なジョブ内容によって、処理に必要な資源量は異なる。また、同時実行数の増加に伴う応答時間の増加も理論値からのばらつきが生じる。図2において(b)で示す傾きは、競合している資源が単一であって他の資源の待ち時間が発生しない範囲では、ジョブの応答時間の理論値が同時実行数に比例して増加する傾向を示している。
図2において(c)で示す近似直線からの増分は、資源利用間の依存関係によって発生する他の競合資源の待ち時間を示しており、ジョブの同時実行数が多くなると発生しやすくなる。
図2において(d)で示す部分は、ある資源が完全に飽和した場合には、それ以上の同時実行が処理しきれないことにより、ジョブの同時実行数の増加が待ち時間の増加にそのまま繋がり、生じた待ち時間によって応答時間が等比級数的に増加することを示している。したがって、(d)の部分のように、計測された応答時間が近似直線から信頼区間を超える場合は、資源が完全に飽和しているとみなすことができ、監視対象での問題発生による応答時間の増加として管理者へのアラートが必要となる。応答時間監視装置1は、図2の(a)〜(c)に該当する応答時間と(d)の部分に該当する応答時間とを区別して、(d)に該当する応答時間の増加をアラート対象とする。
その後、応答時間監視装置1は、診断フェーズとして、一定時間毎に全ジョブの開始時刻および終了時刻を取得して、ジョブ種毎に、平均応答時間を計算し、学習結果である応答時間モデルで定められた種別の同時実行数と平均応答時間から正常範囲の閾値を決定し、計算した応答時間が閾値を超える場合にそのジョブ種をアラート対象(応答時間が正常範囲を超えたジョブ種)として出力する。
図3は、応答時間監視装置1が実施されるシステムの構成例を示す図である。
応答時間監視装置1の監視対象は、ウェブ(Web)サーバ21、データベース(DB)サーバ22等を含むコンピュータシステム(以下、監視対象システムと呼ぶ)2である。監視対象システム2のWebサーバ21、DBサーバ22はネットワークスイッチ3に接続する。Webサーバ21は、さらにプロキシ(ファイアウォール)4を介してインターネット5に接続し、クライアント6のリクエストに対してレスポンスを返してサービスを提供する。
応答時間監視装置1は、監視対象システム2とプロキシ4との間に設けられたネットワークスイッチ3に接続する。また、応答時間監視装置1は、ネットワークスイッチ3に接続する性能監視サーバ7の内部機能として実施されてもよい。
応答時間監視装置1は、ネットワークスイッチ3が持つポートミラーリング機能を用いて、監視対象システム2のWebサーバ21−DBサーバ22間、Webサーバ21−クライアント6間で送受信されるパケットデータ(IPパケット)を収集する。
図4は、応答時間監視装置1の一実施例における機能ブロック構成例を示す図である。
応答時間監視装置1は、応答時間監視処理を実行するために、パケット収集部11、プロトコル解析部12、ジョブ種分類部13、学習部14、診断部15、結果出力部16を備え、さらに、データ保管場所として、メッセージ記憶部17、分類済みメッセージ記憶部18、応答時間モデル記憶部19を備える。
パケット収集部11は、監視対象システム2のWebサーバ21−DBサーバ22間、Webサーバ21−クライアント6間で所定の時間内に送受信されたパケットデータ(IPパケット)のストリームをネットワークスイッチ3から収集し、各パケットデータに取得時刻を付加する。応答時間監視装置1が性能監視サーバ7の内部機能として実施される場合は、パケット収集部11は、性能監視サーバ7のタイムスタンプ機能によりタイムスタンプ(取得時刻)が付加されたパケットデータを収集する。
プロトコル解析部12は、パケット収集部11が収集したパケットデータのプロトコルを解析し、メッセージの種類(リクエスト(request)、レスポンス(response)等)、パケットデータの送信元および送信先のIPアドレス、ポート番号、セッション番号、コマンド名、CGIのパラメータ等を抽出し、抽出した情報と取得時刻とを含むプロトコルメッセージをメッセージ記憶部17に記憶する。
図5は、メッセージ記憶部17に記憶されているプロトコルメッセージの例を示す図である。
各プロトコルメッセージは、パケットの取得時刻、セッション番号、送信元および送信先のIPアドレスおよびポート番号、コマンド名、メッセージの種類等を含む。例えば、図5に示す番号=1のプロトコルメッセージは、パケットの取得時刻「2009/09/07 12:12:04.787360」、セッション番号「132290-1」、メッセージの送信元のIPアドレス「194.185.39.24」とポート番号「51272」、送信先のIPアドレス「194.23.5.226」とポート番号「10443」、プロトコルの種類「Request HTTP」を含む。
ジョブ種分類部13は、プロトコルメッセージをジョブ毎に分類してリクエストとレスポンスのメッセージを紐付け、ジョブ種分類ルール131に基づいてジョブ種に分類したプロトコルメッセージを分類済みメッセージ記憶部18に記憶する。
図5に示すプロトコルメッセージの例では、番号=1、20のリクエストとレスポンスのプロトコルメッセージが同一ジョブとして紐付けられ、番号9、10のリクエストとレスポンスのプロトコルメッセージが同一ジョブとして紐付けられる。
ジョブ種分類ルール131は、プロトコルメッセージに含まれるジョブ内容からジョブ種を特定するための規則を示す情報である。
Webサーバ21とクライアント6の間ではHTTPメッセージが送受信されている。HTTPメッセージは、「http://www.server.com/job/type.jsp?param1=foo&param2=bar」のような識別子でリクエストされ、Webサーバ21(www.server.comというサーバ)ではリクエストに対して「/job/type.jsp」のようなアドレス表記で指定されるコンテンツをレスポンスとして返却する。
Webサーバ21とDBサーバ22の間ではSQLによる問い合わせとその問い合わせ結果が送受信されている。例えば「SELECT 従業員番号 FROM 従業員テーブル WHERE 従業員ID=00001」という問い合わせに対して、DBサーバ22は、「従業員テーブル」から「従業員ID=00001」という条件にあうデータを検索し、問い合わせ結果をWebサーバ21に返却する。
ジョブ種分類部13は、HTTPプロトコルのジョブ種では、ジョブ種分類ルール131に基づいて、アドレス毎に1種類、またはアドレスと一部のCGIパラメータとの組み合わせ(例えば、/job/type.jsp?param2=ba)からジョブ種を決める。
図6は、HTTPプロトコルのジョブ種の分類ルールを示す図である。
HTTPプロトコルのジョブ種分類ルール131は、コマンド名、アドレス内のローカルアドレスの一部、CGIパラメータの一部を用いて各ジョブ種を特定することを表している。
また、ジョブ種分類部13は、DBプロトコルのジョブ種では、ジョブ種分類ルール131に基づいてSQLを抽象化したもの、例えば「従業員テーブルにアクセスするSELECT文」のようにしたものを1つのジョブ種として決める。
図7は、DBプロトコルのジョブ種の分類ルールを示す図である。
DBプロトコルメッセージのジョブ種分類ルール131は、コマンド名、およびSQL文の内容を抽象化する変換ルールでジョブ種を特定することを表している。
学習部14は、分類済みメッセージ記憶部18に記憶されたジョブ種で分類されたプロトコルメッセージを学習データとして入力し、ジョブ種毎に応答時間の正常範囲を示す閾値を示す応答時間モデル(モデル式)を求める。
診断部15は、予め設定された一定時間毎に、分類済みメッセージ記憶部18に記憶されたジョブ種で分類されたプロトコルメッセージのデータストリームを入力し、応答時間モデル記憶部19に記憶された応答時間モデルを用いて、計測された各ジョブ種の応答時間が正常範囲内であるかを判断する。
結果出力部16は、診断部15が、正常範囲を超えた応答時間と判断したジョブ種をアラートとして出力する。
メッセージ記憶部17は、収集した取得時刻付のプロトコルメッセージを記憶する。
分類済みメッセージ記憶部18は、ジョブ種で分類された取得時刻付のプロトコルメッセージを記憶する。
応答時間モデル記憶部19は、学習部14で得た各ジョブ種の応答時間の正常範囲を示す応答時間モデルを記憶する。
次に、応答時間監視装置1の学習部14の学習処理(学習フェーズ)をより詳しく説明する。
学習部14は、分類済みメッセージ記憶部18に記憶された一定の時間に収集されたプロトコルメッセージを学習データとし、以下の処理を行う。
(1)学習データを予め定めた一定の時間間隔に分割する。さらに、ジョブ毎に紐付けたリクエストのプロトコルメッセージの取得時刻を開始時刻、レスポンスのプロトコルメッセージの取得時刻を終了時刻として各ジョブの応答時間を計算する。
図8は、一定の時間間隔に分割した各細分化区間および各ジョブの応答時間の例を示す図である。
図8において、矩形は1つのジョブを示し、矩形の下の値は当該ジョブの応答時間(ミリ秒[ms])、矩形内のDn(nは1、2、…)は当該ジョブのジョブ種を表している。
(2)学習データを予め定めた時間間隔に分割し、分割した区間(細分化区間:100ms)内で、全ジョブ合計の平均同時実行数、ジョブ種単独の平均同時実行数、各ジョブ種の平均応答時間を、以下の式で計算する。
全ジョブ合計の平均同時実行数=全ジョブの応答時間の合計/細分化区間
ジョブ種単独の平均同時実行数=当該ジョブ種の応答時間/細分化区間
各ジョブ種の平均応答時間=当該ジョブ種の全応答時間/当該ジョブ種の平均同時実行数
なお、2つの細分化区間にまたがるジョブは、応答時間を各細分化区間で案分してそれぞれの応答時間とする。
図9は、同時実行数と応答時間の計算例を示す図である。
学習データの各ジョブの応答時間が図7に示す状態である場合に、それぞれ以下の計算となる。例えば、
全ジョブ合計の平均同時実行数
=(12+11+58+11+15+30+38+9+7+10)/100
=2.01、
ジョブ種D1のジョブ種単独の平均同時実行数
=(11+15+9)/100=0.35、
ジョブ種D1の各ジョブ種の応答時間
=(11+15+9)/3=11.7
となる。
ジョブ種D2の場合は、3番目に実行されたジョブが2つの細分化区間T1、T2で案分されるため、
ジョブ種D2のジョブ種単独の平均同時実行数
=(30+38+10)/100=0.78、
ジョブ種D2の各ジョブ種の平均応答時間
=(30+38+10)/1+1+10/34=34.0
となる。
(3)上記(2)の計算結果から、細分化区間数分の「全ジョブ合計の平均同時実行数、当該ジョブ種の応答時間」の第1の組データと、「当該ジョブ種のジョブ種単独の同時実行数、当該ジョブ種の平均応答時間」の第2の組データとを生成する。
(4)各ジョブ種について、生成した2種の組データそれぞれに対応するグラフを用意し、各細分化区間での平均同時実行数と当該ジョブ種の平均応答時間との対応関係を各グラフ上にプロットする。
図10は、同時実行数と応答時間の対応関係のプロット例を示す図である。
図10の左側に示すグラフは、全ジョブ合計の同時実行数を横軸に応答時間を縦軸とするグラフであり、ジョブ種D1の第1の組データに基づく各細分区間での平均同時実行数と平均応答時間との対応関係をプロットしたものである。
図10の右側に示すグラフは、ジョブ種単独の同時実行数を横軸に応答時間を縦軸にとるグラフであり、ジョブ種D1の第2の組データに基づく各細分化区間での平均同時実行数と平均応答時間との対応関係をプロットしたものである。
図10に示す2種のグラフが各ジョブ種について生成される。
(5)上記(4)で生成した2つのグラフ上で、それぞれ、例えば最小二乗法で近似直線を得て、プロットされた各対応関係と近似直線との乖離の程度を求めて、直線近似の度合いがより高い方のグラフを選択する。最小二乗法は、残差(実測の応答時間−f(x))の二乗和が最小となるf(x)を求める計算方法である。
図11は、直線近似および同時実行数の選択を説明するための図である。
図11に示すグラフによって、左側のグラフの方が直線近似の度合いが高いと判断されたとする。この場合に、左側のグラフが対応する第1の組データの同時実行数の種別が選択され、応答時間モデルとして「全ジョブ合計」の同時実行数が選択される。
ジョブが、例えばCPUのように全ジョブ種共通で使用する資源に相関する場合は、左側のグラフ、すなわち全ジョブ合計の平均同時実行数による対応関係の近似の度合いが高くなる。一方、ジョブが、例えば、トランザクションの排他ロックのようにジョブ種固有で使用する資源に相関する場合は、右側のグラフ、すなわちジョブ種単独の同時実行数による対応関係のほうが近似の度合いが高くなる。
(6)各ジョブ種について、選択したグラフにおいて、近似直線(平均値)からの応答時間の標準偏差を計算し、さらに、その信頼区間を計算し、信頼区間の上限および下限を計算して応答時間の正常範囲の上限/下限とする。
図12は、グラフ上での信頼区間による応答時間の正常範囲の設定例を示す図である。
選択した同時実行数によるグラフをもとに、標準偏差は、直線近似の際に求めた二乗和を、(標本数−1)で割って平方根をとったもので求め、信頼区間(99.99%)は、「近似直線(平均値)±信頼水準の定数(3.89)×標準偏差」で求める。信頼度の定数(3.89)は、99.99%の信頼水準における値であり、標準正規分布表より求めることができる。
応答時間の正常範囲の上限値は「f(x)+3.89×標準偏差」で求め、下限値は「f(x)−3.89×標準偏差」で求める。
(7)各ジョブ種の応答時間の正常範囲の上限/下限を示す応答時間モデルを応答時間モデル記憶部19に記憶する。
図13は、応答時間モデルの例を示す図である。
応答時間モデルとして、ジョブ種毎に、同時実行数の種類および応答時間の正常範囲を求める式を記録する。「同時実行数の種類」は、上記(5)で選択された同時実行数の種類(全ジョブ合計、ジョブ種単独)を示す。正常範囲を求める式f(x)のxは、選択した同時実行数の種類で定義された同時実行数である。ここでは、応答時間の正常範囲を求める式として、正常範囲の上限値を求める式が記録されている。
次に、応答時間監視装置1の診断部15の診断処理(診断フェーズ)をより詳しく説明する。
診断部15は、予め設定された一定時間毎に、分類済みメッセージ記憶部18に記憶された一定の時間に収集されたプロトコルメッセージのデータストリームを入力し、以下の処理を行う。
(1)ジョブ毎に分類したプロトコルメッセージから紐付けたリクエストのプロトコルメッセージの受信時刻を開始時刻、レスポンスのプロトコルメッセージの受信時刻を終了時刻として各ジョブの応答時間を計算する。
(2)全ジョブ合計の平均同時実行数と、ジョブ種毎に、ジョブ種単独の平均同時実行数および各ジョブ種の平均応答時間とを計算する。
(3)各ジョブ種について、応答時間モデル記憶部19に記憶された当該ジョブ種の応答時間モデルを参照し、「同時実行数の種類」に設定された種別(全ジョブ合計またはジョブ種単独)の平均同時実行数で「応答時間の正常範囲を求める式」を用いて当該ジョブ種の応答時間の閾値(上限値、下限値)を求める。
(4)各ジョブ種について、計算した平均応答時間が、上記(3)で求めた閾値(上限値)を超えているかを判断する。
(5)計算した平均応答時間が閾値を超えている場合に、そのジョブ種を、正常ではない応答時間(遅すぎる応答時間)を記録したジョブ種として出力する。
上記(1)〜(5)の診断処理が一定時間毎に実行され、この間に遅い応答時間を記録したジョブ種のリストがアラートとして出力される。
図14および図15は、一実施例における学習処理の処理フロー例を示す図である。
学習部14は、分類済みメッセージ記憶部18から一定時間に収集されたデータを学習データとして入力し、入力データを細分化区間に分割する(ステップS10)。
学習部14は、細分化区間が残っている限りループ処理を行う(ステップS11、S17)。
学習部14は、その細分化区間における、全ジョブ合計の平均同時実行数を計算する(ステップS12)。
さらに、学習部14は、ジョブ種毎にループ処理を行う(ステップS13、S16)。
学習部14は、その細分化区間における、選択されたジョブ種単独の平均同時実行数を計算し(ステップS14)、さらに、選択されたジョブ種の平均応答時間を計算する(ステップS15)。
さらに、学習部14は、ジョブ種毎にループ処理を行う(ステップS18、S24)。
学習部14は、全ジョブ合計の同時実行数と選択されたジョブ種の平均応答時間との関係を直線近似し(ステップS19)、選択されたジョブ種単独の同時実行数とそのジョブ種の平均応答時間との関係を直線近似する(ステップS20)。
そして、学習部14は、2つの直線近似の内で近似の度合いが高い方で用いた同時実行数の種別(全ジョブ合計、ジョブ種単独)を選択する(ステップS21)。
さらに、学習部14は、各細分化区間について、近似直線(平均値)からの応答時間の差を求め、そこから標準偏差を計算し(ステップS22)、統計上の信頼基準を用いて応答時間の信頼区間を計算し、その上限/下限(直線)を求める式を応答時間の正常範囲(上限/下限)を求める式として応答時間モデル記憶部19に記録し(ステップS23)、全てのジョブ種についてのループ処理終了後に処理を終了する。
図16は、一実施例における応答時間の診断処理の処理フロー例を示す図である。
診断部15は、停止コマンドを受けるまで無限にループ処理を繰り返す(ステップS30、S33)。診断部15は、分類済みメッセージ記憶部18から一定時間分の入力データをデータストリームから読み込み(ステップS31)、個々の時間分の診断処理を行い(ステップS32)、停止コマンドにより処理を終了する。
図17は、一実施例におけるステップS32の診断処理のより詳細な処理フロー例を示す図である。
診断部15は、入力データの区間における、全ジョブ合計の平均同時実行数を計算し(ステップS320)、ジョブ種毎にループ処理を行う(ステップS321、S329)。
診断部15は、入力データの区分における、選択されたジョブ種の平均応答時間を計算し(ステップS322)、選択されたジョブ種について、学習部14で定められた同時実行数の種類が「ジョブ種単独」であるかを判定する(ステップS323)。同時実行数算出時の種類が「ジョブ種単独」であれば(ステップS323のY)、入力データの区間における、選択されたジョブ種単独の平均同時実行数を計算し(ステップS324)、同時実行数の種類が「ジョブ種単独」でなければ(ステップS323のN)、入力データの区間における、全ジョブ合計の平均同時実行数を計算し、同時実行数として利用する(ステップS325)。
診断部15は、求めた同時実行数に応じた応答時間の閾値(上限値)を応答時間モデルから算出し(ステップS326)、選択されたジョブ種の平均応答時間が閾値(上限値)を超えているかを判定する(ステップS327)。選択されたジョブ種の応答時間が閾値を超えていれば(ステップS327のY)、選択されたジョブ種を応答時間が異常に長いジョブ種として出力する(ステップS328)、選択されたジョブ種の応答時間が閾値を超えていなければ(ステップS327のN)、全てのジョブ種についてのループ処理終了後に処理を終了する。
以上説明したように、応答時間監視装置1によれば、学習フェーズにおいて、ジョブ種毎に応答時間が通常取り得る値(正常範囲)を反映した応答時間モデルを得ることによって、診断フェーズにおいて、ジョブ種に応じた応答時間の正常範囲を設定するため、応答時間の自然なばらつきの範囲であればアラートを出力しない。
したがって、応答時間監視装置1がアラートを出力した場合は、応答時間が同時実行数の増加による自然な増加の範囲ではなく、何らかの問題が発生していることがわかる。
また、応答時間監視装置1によれば、ジョブ種毎の同時実行数と応答時間の関係を直線近似することにより学習するため、正常な状態(同時実行数が少ない)時の学習データだけを使って応答時間をモデル化することが可能である。
本発明の一態様として開示した応答時間監視装置1によれば、次のような効果がある。
・対処が不要な自然な応答時間の増加についてアラートしないため、無駄なアラートを減少させることができる。
・アラートが本当に問題な状況によるものなのかを診断する手間を省くことができる。例えば、従来行っていたような、普段の応答時間と比較して異常であるかを調査したり、同時実行ジョブ数と突き合わせて、一時的なジョブの混雑なのかを調査したりする必要がなくなる。
・監視対象で資源が飽和した状況のデータが不要であり、通常負荷の場合のデータで学習し応答時間モデルを生成することができる。
これらの効果を奏することにより、応答時間監視装置1は、応答時間の監視をより精度良く行うことができ、コンピュータ上で提供されるサービスの性能安定化をはかることができる。
開示する応答時間監視装置1を構成する要素は、任意の組合せで実現されてもよい。複数の構成要素が1つの部材として実現されてもよく、1つの構成要素が複数の部材から構成されてもよい。また、応答時間監視装置1は、上述した実施形態に限定されず、本発明の要旨を逸脱しない範囲において各種の改良および変更を行ってもよいことは当然である。
1 応答時間監視装置
11 パケット収集部
12 プロトコル解析部
13 ジョブ種分類部
131 ジョブ種分類ルール
14 学習部
15 診断部
16 結果出力部
17 メッセージ記憶部
18 分類済みメッセージ記憶部
19 応答時間モデル記憶部
2 監視対象システム
21 Webサーバ
22 DBサーバ
3 ネットワークスイッチ
4 プロキシ
5 インターネット
6 クライアント
7 性能監視サーバ

Claims (3)

  1. 監視対象コンピュータの応答時間を監視するために、コンピュータに、
    監視対象コンピュータで一定時間に実行される全ジョブ合計の同時実行数と、各ジョブ種について、ジョブ種単独の同時実行数と該ジョブ種の平均応答時間とを計算し、
    前記ジョブ種毎に、該ジョブ種の平均応答時間と全ジョブ合計の同時実行数との第1の対応関係と、該ジョブ種の平均応答時間とジョブ種単独の同時実行数との第2の対応関係とを生成し、
    前記ジョブ種毎に、対応する前記第1の対応関係および前記第2の対応関係のうち、該ジョブ種の平均応答時間との相関が高い対応関係を選択し、
    予め設定された時間毎に前記監視対象コンピュータで実行される各ジョブの応答時間を取得し、
    前記各ジョブの応答時間を、該ジョブのジョブ種に対応して選択された対応関係を用いて決定した閾値をもとにアラート対象とするかを判断する、処理を実行させるための
    応答時間監視プログラム。
  2. 監視対象コンピュータの応答時間を監視するために、コンピュータが、
    監視対象コンピュータで一定時間に実行される全ジョブ合計の同時実行数と、各ジョブ種について、ジョブ種単独の同時実行数と該ジョブ種の平均応答時間とを計算し、
    前記ジョブ種毎に、該ジョブ種の平均応答時間と全ジョブ合計の同時実行数との第1の対応関係と、該ジョブ種の平均応答時間とジョブ種単独の同時実行数との第2の対応関係とを生成し、
    前記ジョブ種毎に、対応する前記第1の対応関係および前記第2の対応関係のうち、該ジョブ種の平均応答時間との相関が高い対応関係を選択し、
    予め設定された時間毎に前記監視対象コンピュータで実行される各ジョブの応答時間を取得し、
    前記各ジョブの応答時間を、該ジョブのジョブ種に対応して選択された対応関係を用いて決定した閾値をもとにアラート対象とするかを判断する、処理を実行する
    応答時間監視方法。
  3. 監視対象コンピュータで一定時間に実行される全ジョブ合計の同時実行数と、各ジョブ種について、ジョブ種単独の同時実行数と該ジョブ種の平均応答時間とを計算し、前記ジョブ種毎に、該ジョブ種の平均応答時間と全ジョブ合計の同時実行数との第1の対応関係と、該ジョブ種の平均応答時間とジョブ種単独の同時実行数との第2の対応関係とを生成し、前記ジョブ種毎に、対応する前記第1の対応関係および前記第2の対応関係のうち、該ジョブ種の平均応答時間との相関が高い対応関係を選択する学習部と、
    予め設定された時間毎に前記監視対象コンピュータで実行される各ジョブの応答時間を取得し、前記各ジョブの応答時間を、該ジョブのジョブ種に対応して選択された対応関係を用いて決定した閾値をもとにアラート対象とするかを判断する診断部とを備える
    応答時間監視装置。
JP2013004728A 2013-01-15 2013-01-15 応答時間監視プログラム、方法および応答時間監視装置 Active JP5974905B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013004728A JP5974905B2 (ja) 2013-01-15 2013-01-15 応答時間監視プログラム、方法および応答時間監視装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013004728A JP5974905B2 (ja) 2013-01-15 2013-01-15 応答時間監視プログラム、方法および応答時間監視装置

Publications (2)

Publication Number Publication Date
JP2014137635A true JP2014137635A (ja) 2014-07-28
JP5974905B2 JP5974905B2 (ja) 2016-08-23

Family

ID=51415115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013004728A Active JP5974905B2 (ja) 2013-01-15 2013-01-15 応答時間監視プログラム、方法および応答時間監視装置

Country Status (1)

Country Link
JP (1) JP5974905B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020144741A (ja) * 2019-03-08 2020-09-10 みずほ情報総研株式会社 ジョブ管理システム、ジョブ管理方法及びジョブ管理プログラム
JP7522615B2 (ja) 2020-08-28 2024-07-25 株式会社日立製作所 イベント監視装置及びイベント監視方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7323776B2 (ja) 2019-06-17 2023-08-09 日本製鉄株式会社 ベルトコンベア乗継装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000295312A (ja) * 1999-04-05 2000-10-20 Nec Corp 端末応答監視自動制御装置および端末応答監視自動制御方法
JP2004302547A (ja) * 2003-03-28 2004-10-28 Nri & Ncc Co Ltd サーバーシステムのレスポンス監視方法と装置
JP2007026303A (ja) * 2005-07-20 2007-02-01 Fujitsu Ltd システム性能監視プログラム及びシステム性能監視方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000295312A (ja) * 1999-04-05 2000-10-20 Nec Corp 端末応答監視自動制御装置および端末応答監視自動制御方法
JP2004302547A (ja) * 2003-03-28 2004-10-28 Nri & Ncc Co Ltd サーバーシステムのレスポンス監視方法と装置
JP2007026303A (ja) * 2005-07-20 2007-02-01 Fujitsu Ltd システム性能監視プログラム及びシステム性能監視方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020144741A (ja) * 2019-03-08 2020-09-10 みずほ情報総研株式会社 ジョブ管理システム、ジョブ管理方法及びジョブ管理プログラム
JP7522615B2 (ja) 2020-08-28 2024-07-25 株式会社日立製作所 イベント監視装置及びイベント監視方法

Also Published As

Publication number Publication date
JP5974905B2 (ja) 2016-08-23

Similar Documents

Publication Publication Date Title
US7783744B2 (en) Facilitating root cause analysis for abnormal behavior of systems in a networked environment
EP3379419B1 (en) Situation analysis
US12155543B2 (en) Automatic capture of detailed analysis information based on remote server analysis
US20190196894A1 (en) Detecting and analyzing performance anomalies of client-server based applications
US7953847B2 (en) Monitoring and management of distributing information systems
US10560311B2 (en) Management apparatus, management method, and recording medium
US9251032B2 (en) Method, computer program, and information processing apparatus for analyzing performance of computer system
US8352589B2 (en) System for monitoring computer systems and alerting users of faults
US7328127B2 (en) Computer-readable recording medium recording system performance monitoring program, and system performance monitoring method and apparatus
US7624176B2 (en) Method and system for programmatically generating synthetic transactions to monitor performance and availability of a web application
JP5471859B2 (ja) 解析プログラム、解析方法、および解析装置
JP2010117757A (ja) 性能監視システムおよび性能監視方法
Xu et al. Lightweight and adaptive service api performance monitoring in highly dynamic cloud environment
JP2010231368A (ja) 監視方法及び監視プログラム
KR20070080313A (ko) 클라이언트 단말로 제공되는 서비스 성능 분석 방법 및시스템
US20180095819A1 (en) Incident analysis program, incident analysis method, information processing device, service identification program, service identification method, and service identification device
JP5974905B2 (ja) 応答時間監視プログラム、方法および応答時間監視装置
US20200142746A1 (en) Methods and system for throttling analytics processing
JP2004348640A (ja) ネットワーク管理システム及びネットワーク管理方法
US20240205119A1 (en) Aggregating metrics of network elements of a software-defined network for different applications based on different aggregation criteria
JP2002099448A (ja) 性能監視装置、及びその方法
JPH10229396A (ja) サービス管理方法及びシステム
JP2020035297A (ja) 機器状態監視装置及びプログラム
Rao et al. CoSL: A coordinated statistical learning approach to measuring the capacity of multi-tier websites
US8930369B2 (en) Information processing apparatus, message classifying method and non-transitory medium for associating series of transactions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150903

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160615

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160704

R150 Certificate of patent or registration of utility model

Ref document number: 5974905

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150