(57)【要約】      （修正有）【課題】ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために閾値を設定する閾値自動設定方法及びシステムを提供する。【解決手段】過去に計測された計測値群を収集しておき、当該収集された計測値群からパラメータにより所望する計測値群を選択し、その選択された計測値群に基づいて、性能計測と計測値の変動とを検知するための閾値を調整可能に自動決定し、その閾値を自動的に設定するようにした。【選択図】        図１
2004259146.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア・アプリケーションを実行するプロセッサとメモリとを少なくとも有するデータ処理システムに関し、当該ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、閾値を設定する閾値自動設定方法において、
過去に当該アプリケーションが実行された結果で計測された計測値群を収集しておき、当該収集された計測値群に基づいて前記性能計測と計測値の変動とを検知するための閾値を自動的に決定する
ことを特徴とする閾値自動設定方法。
【請求項２】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって、
前記過去に計測された計測値群のうちの所望する計測値群を選択すべく設定されたパラメータを受取り、前記自動設定される閾値が前記所望する計測値群に基づいて調整可能に決定される
ことを特徴とする請求項１記載の閾値自動設定方法。
【請求項３】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって
過去に計測された計測値の前半の一部分及び後半の一部分を除外して閾値を決定する
ことを特徴とする請求項１または２記載の閾値自動設定方法。
【請求項４】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって、
過去に計測された計測値を閾値の設定対象毎に処理を行い、設定対象毎の計測値の上位数パーセントに当たる計測値と、設定対象毎の計測値の平均値とに基づいて、閾値を決定する
ことを特徴とする請求項１ないし３のいずれか記載の閾値自動設定方法。
【請求項５】
ソフトウェア・アプリケーションを実行するプロセッサとメモリとを少なくとも有するデータ処理システムに関し、当該ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、閾値を設定する閾値自動設定システムにおいて、
過去に当該アプリケーションが実行された結果で計測された計測値群を収集する手段と、
当該収集された計測値に基づいて前記性能計測と計測値の変動とを検知するための閾値を自動的に決定する手段
とを有する
ことを特徴とする閾値自動設定システム。
【請求項６】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって、
前記過去に計測された計測値群のうちの所望する計測値群を選択するパラメータを受信する手段と、
前記自動設定される閾値が前記所望する計測値群に基づいて調整可能に決定する手段と
を有する
ことを特徴とする請求項５記載の閾値自動設定システム。
【請求項７】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって
過去に計測された計測値の前半の一部分及び後半の一部分を除外する手段と、
当該除外された計測値群に基づいて閾値を決定する手段と
を有する
ことを特徴とする請求項５または６記載の閾値自動設定システム。
【請求項８】
ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために、過去に計測された計測値に基づいて閾値を自動的に設定するに当たって、
過去に計測された計測値を閾値の設定対象毎に当該設定対象毎の計測値の上位数パーセントに当たる計測値と、設定対象毎の計測値の平均値とを抽出する手段をそなえると共に、
当該抽出された計測値と平均値とに基づいて閾値を決定する手段と
を有する
ことを特徴とする請求項５ないし７のいずれか記載の閾値自動設定システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトウェア・アプリケーションの実行時の性能を計測し、計測値の変動を検知するために閾値を設定する方法及びシステムに関わり、特に、過去に計測された計測値に基づいて閾値を自動的に設定する方法及びシステムに関する。
【０００２】
【従来の技術】
ソフトウェア・アプリケーションの実行時の例えば当該アプリケーションの実行時間が１００ｍｓｅｃであったとか当該アプリケーションでのメモリ使用量が２０メガバイトであったとかの性能を計測し、計測値の変動を検知するために閾値を設定することが行われている。この場合の従来の方法では、閾値を設定する操作者が手動で閾値の設定を行っていた（例えば、非特許文献１参照）。
【０００３】
【非特許文献１】
Ｗｉｌｙ  Ｔｅｃｈｎｏｌｏｇｙ  社（ｈｔｔｐ：／／ｗｗｗ．ｗｉｌｙｔｅｃｈ．ｃｏｍ）
製品Ｉｎｔｒｏｓｃｏｐｅ
Ｉｎｔｒｏｓｃｏｐｅ資料「ｉｎｔｒｏｓｃｏｐｅｕｓｅｒｇｕｉｄｅ２−６．ｐｄｆ」Ｐａｇｅ  ３４
【０００４】
【発明が解決しようとする課題】
上記従来の閾値設定方法では、閾値を設定する操作者が、自身の判断で閾値を決定しなければならず、適切な閾値の設定が困難であるという問題がある。また、閾値を設定する対象数が多い場合、その全てに対して手動で閾値を設定しなければならないため、多大な労力を必要とするという問題がある。
【０００５】
本発明は、ソフトウェア・アプリケーションの実行時の性能を計測する際に用いる閾値を、いわば自動設定するようにすることを目的としている。
【０００６】
【課題を解決するための手段】
請求項に記載の閾値自動設定方法及びシステムにおいては、過去に計測された計測値群に基づいて閾値を決定し、その閾値決定に際し、閾値を設定するに当たってのパラメータを受取るようにして、閾値の決定時点において、そのパラメータを用いて決定する閾値を調整可能に決定するようにする。
段とを備える。
【０００７】
【発明の実施の形態】
以下、図面を用いて本発明の実施形態を詳細に説明する。
図１は、本実施例における、閾値自動設定方法を備えた監視システムを含む、システム全体の構成図である。コンピュータ装置１と、コンピュータ装置２と、コンピュータ装置３と、コンピュータ装置４とで構成される。
【０００８】
コンピュータ装置１は、アプリケーション１１と、監視エージェント部１２と、性能情報ログ１３を備えている。
【０００９】
アプリケーション１１は、本実施例における、実行性能の計測対象となるソフトウェア・アプリケーションである。監視エージェント部１２は、前記監視システムを構成する一構成要素であり、アプリケーション１１の実行性能情報を収集する。
【００１０】
監視エージェント部１２は、性能情報収集部１２１と、閾値超過検証部１２２と、記録部１２３とを備えており、閾値超過検証部１２２は、閾値変更受信部５１と、閾値比較部５２と、閾値超過通知部５３とを備えている。
【００１１】
性能情報ログ１３は、アプリケーション１１の実行時の性能情報を記録したものであり、監視エージェント部１２によって生成される。
【００１２】
コンピュータ装置２は、監視システム操作部２１を備えている。監視システム操作部２１は、前記監視システムを構成する一構成要素であり、監視システムを操作する操作者が、監視システムを操作するための機能を提供する。
【００１３】
監視システム操作部２１は、閾値自動設定部２１１と、閾値超過通知表示部２１２と、閾値超過通知受付部２１３とを備えており、閾値自動設定部２１１は、ログ解析部６１と、パラメータ設定部６２と、閾値計算部６３と、閾値変更指示部６４とを備えている。
【００１４】
コンピュータ装置３は、監視マネージャ部３１を備えている。監視マネージャ部３１は、前記監視システムを構成する一構成要素であり、監視システムのマネージャとして機能する。
【００１５】
監視マネージャ部３１は、閾値変更管理部３１１と、閾値超過通知受付部３１２と、閾値超過通知部３１３とを備えており、閾値変更管理部３１１は、閾値変更指示受付部７１と、閾値書込部７２と、閾値変更通知部７３とを備えている。
【００１６】
コンピュータ装置４は、データ蓄積部４１を備えている。データ蓄積部４１は、前記監視システムを構成する一構成要素であり、種々のデータを蓄積する。データ蓄積部４１は、閾値に関する情報を含む監視条件４１１の情報を蓄積している。
【００１７】
図２は、監視エージェント部１２と、監視システム操作部２１と、監視マネージャ部３１と、データ蓄積部４１とで構成される監視システムが、アプリケーション１１の実行時の性能を計測し、該計測値が閾値を超過した場合の動作を説明するフロー図である。
【００１８】
図３は、本発明の特徴を備えた監視システムにおいて、閾値を自動設定する動作を説明するフロー図である。
図４は、閾値自動設定部２１１の一画面例である。
【００１９】
以下では、まず、図２の動作フロー図を用いて、計測値が閾値を超過した場合の動作を説明する。
【００２０】
アプリケーション１１は、外部からの処理依頼を受け、処理を実行する。その実行時の性能は、監視エージェント部１２の性能情報収集部１２１によって収集される。収集される実行時の性能情報としては、アプリケーション１１を構成している各種ソフトウェア・コンポーネント毎の処理実行時間や、該ソフトウェア・コンポーネントのメソッド毎の処理実行時間などがある。
【００２１】
性能情報収集部１２１は、収集した性能情報を、閾値超過検証部１２２の閾値比較部５２に渡す（ステップＳ１）。閾値比較部５２は、該性能情報と閾値とを比較する（ステップＳ２）。前記比較で用いる閾値は、渡された個別の性能情報に対して、その時点で設定されている閾値を用いる。例えば上述したようなアプリケーションの性能として実行時間を調べるのであれば閾値として例えば１１０ｍｓｅｃとか２００ｍｓｅｃとかが適宜変更して用いられ、メモリ使用量を調べるのであれば閾値として例えば１００メガバイト（適宜変更して）が用いられる。
【００２２】
閾値と比較した結果、閾値を超過していない場合には、閾値超過の検証処理を終了し、該性能情報を記録部１２３に渡し、該性能情報を記録するように指示を出す（ステップＳ３）。記録部１２３は、該性能情報をメモリ上に記録する（ステップＳ４）。
【００２３】
ステップＳ２において、閾値と比較した結果、閾値を超過していた場合には、該性能情報が、閾値を超過していることを閾値超過通知部５３に知らせる（ステップＳ５）。閾値超過通知部５３は、該性能情報が閾値を超過したことを、監視マネージャ部３１の閾値超過通知受付部３１２に通知する（ステップＳ６）。閾値超過通知受付部３１２は、監視エージェント部１２の閾値超過通知部５３からの通知を受け付け、閾値超過通知部３１３に処理を依頼する（ステップＳ７）。閾値超過通知部３１３は、該性能情報が閾値を超過したことを、監視システム操作部２１の閾値超過通知受付部２１３に通知する（ステップＳ８）。閾値超過通知受付部２１３は、監視マネージャ部３１の閾値超過通知部３１３からの通知を受け付け、閾値超過通知表示部２１２に処理を依頼する（ステップＳ９）。閾値超過通知表示部２１２は、該性能情報が閾値を超過したことを画面等に表示する（ステップＳ１０）。
【００２４】
本発明の特徴を備えた監視システムにおいては、性能情報が計測される度に、上記の動作を繰り返す。この動作において、記録部１２３は、指定された時間間隔等のタイミングで、ステップＳ４においてメモリ上に記録された性能情報を、性能情報ログに記録する（ステップＳ１１）。
【００２５】
次に、図３を用いて、本発明の特徴を備えた監視システムにおいて、閾値を自動設定する動作を説明する。
【００２６】
閾値自動設定部２１１のログ解析部６１は、該監視システムを操作する操作者の指示によって、前記動作説明で生成された性能情報ログ１３を読み込む（ステップＳ２１）。ログ解析部６１は、読み込まれた性能情報ログ１３を解析し（ステップＳ２２）し、パラメータ設定部６２に、次の処理を依頼する（ステップＳ２３）。パラメータ設定部６２は、該監視システムの操作者に対して、パラメータを入力するインタフェースを提供し、該操作者は、そのインタフェースを用いて、パラメータの設定を行う（ステップＳ２４）。パラメータ設定部６２は、次の処理を閾値計算部６３に依頼する（ステップＳ２５）。
【００２７】
閾値計算部６３は、ステップＳ２４において該操作者によって設定されたパラメータ値に基づいて、閾値の計算を行う（ステップＳ２６）。閾値計算部６３は、次の処理を閾値変更指示部６４に依頼する（ステップＳ２７）。閾値変更指示部６４は、ステップＳ２６において算出された閾値を、新たな閾値として設定するように、監視マネージャ部３１の閾値変更指示受付部７１に指示する（ステップＳ２８）。閾値変更指示受付部７１は、該指示を受け、処理を閾値書込部７２に依頼する（ステップＳ２９）。閾値書込部７２は、ステップＳ２６において算出された該閾値を、データ蓄積部４１に蓄積する（ステップＳ３０）。
【００２８】
閾値変更指示受付部７１は、閾値書込部７２に対する前記指示を行うとともに、閾値変更通知部７３に対して、閾値の変更内容を通知するように指示する（ステップＳ３１）。閾値変更通知部７３は、閾値の変更内容を、監視エージェント部１２の閾値変更受信部５１に通知する（ステップＳ３２）。閾値変更受信部５１は、該通知により、変更された新たな閾値を把握する（ステップＳ３３）。
【００２９】
ステップＳ３３で得られた新たな該閾値は、閾値超過検証部１２２において、次回からの閾値超過の検証に用いられる。
【００３０】
次に、図４を用いて、ステップＳ２４におけるパラメータ設定を説明する。
図４に示した例は、グラフィカル・ユーザ・インタフェースを用いてパラメータ設定を行う場合の画面例である。
【００３１】
本画面例では、ログ解析部６１の解析対象とする性能情報ログ１３を指定する指定欄８１があり、ここで操作者が、性能情報ログ１３の場所と名前を指定することにより、ログ解析部６１によって読み込まれる。
【００３２】
また、ログ解析除外範囲を指定する指定欄８２と８３とがあり、指定欄８２は、指定欄８１に指定された性能情報ログ１３において、先頭から何分の部分を解析対象から除外するかを指定する。この場合、性能情報ログ１３は、性能情報が計測された時刻の順番で時系列に記録されていることを想定している。同様に、指定欄８３は、指定欄８１に指定された性能情報ログ１３において、末尾から何分の部分を解析対象から除外するかを指定する。
【００３３】
Ｊａｖａ言語（（ジャヴァ言語）：サンマイクロシステムズ社が開発したオブジェクト指向プログラム言語）等によって構築されたＷｅｂアプリケーション等では、通常、外部から最初にアクセスがあった時点で、プログラムの一部を実行可能な形式にすることが多く、その場合、最初のアクセス時点の処理実行時間は、プログラムの一部を実行可能な形式に変換する処理時間が含まれるため、その後の通常時の処理実行時間と比較して、より長い時間として計測される。また、アプリケーションの終了時においても、通常とは異なる処理が行われる可能性等があるため、通常時の処理実行時間と比較して、特異的な計測値が計測される可能性がある。
【００３４】
従って、前記のように、解析対象から除外する範囲を指定することにより、閾値として、より効果的な値が算出できる。解析対象の性能情報ログ１３に、通常時の処理実行時間とは異なる計測値が含まれる可能性が無いと判断した場合等においては、操作者の判断により、指定欄８２及び８３には、ゼロの値を指定すれば、性能情報ログ１３に含まれる全ての性能情報が解析対象となる。
また、本画面例では、閾値の計算式の例も示してある。
【００３５】
本例では、性能情報ログ１３に含まれる性能情報を、閾値を設定する同一対象毎の計測値に分類し、同一対象中の複数の計測値を、値の大きい順に並べる。それに対して、指定欄８４に指定した値に基づいて、そのパーセントに当たる値を算出する。例えば、計測値の値が１（秒）から１０（秒）までの１０個のデータがあった場合、指定欄８４で指定した値が、７０（％）の場合、閾値の算出に用いる計測値の値としては、７（秒）であると考える。
【００３６】
この値に対して、さらに指定欄８５で指定した重み係数を掛ける。
また、指定欄８６には、同一対象中の複数の計測値の平均値に対する重み係数を指定して、閾値の計算に用いる。
【００３７】
本計算例では、最大値のような、特異的な状況で得られた可能性のある計測値を用いるのではなく、計測値中の上位数パーセントに当たる値を用いて閾値を計算できるため、閾値として、より効果的な値が算出できる。また、指定欄８４、指定欄８５、指定欄８６に指定する値を調整することにより、操作者の判断によつて、平均値のみに基づく閾値の算出や、最大値に基づく閾値の算出も行うことができる。
【００３８】
なお、この場合、操作者が計測値中の上位数パーセントに当たる値を閾値に用いることを望む場合には、指定欄８６により指定する値を０にし、また平均値のみにもとづく閾値の値を望む場合には、指定欄８５により指定する値を０にするようにすれば良い。
【００３９】
本発明は、上記の実施例に限定されることなく、特許請求の範囲内において種々の変更・応用が可能である。
【００４０】
【発明の効果】
以上に説明したように、本発明によれば、
パラメータの設定作業を除き、自動で閾値を設定できるため、閾値を設定する対象数が多い場合、閾値を設定する操作者の労力を軽減できる。
【００４１】
また、閾値を算出する際に、操作者によるパラメータ値の設定が可能なため、閾値の決定時点において、決定する閾値を調整でき、操作者の希望する閾値が設定できる。また、これにより、効果的な監視を行うことができる。
【図面の簡単な説明】
【図１】本発明の閾値自動設定方法を備えた監視システムを含む、システム全体の構成図例を示す。
【図２】計測値が閾値を超過した場合の動作を説明するフロー図を示す。
【図３】閾値を自動設定する動作を説明するフロー図を示す。
【図４】閾値自動設定部の画面例を示す。
【符号の説明】
１      コンピュータ装置
１１    アプリケーション
１２    監視エージェント部
１２１  性能情報収集部
１２２  閾値超過検証部
５１    閾値変更受信部
５２    閾値比較部
５３    閾値超過通知部
１２３  記録部
１３    性能情報ログ
２      コンピュータ装置
２１    監視システム操作部
２１１  閾値自動設定部
６１    ログ解析部
６２    パラメータ設定部
６３    閾値計算部
６４    閾値変更指示部
２１２  閾値超過通知表示部
２１３  閾値超過通知受付部
３      コンピュータ装置
３１    監視マネージャ部
３１１  閾値変更管理部
７１    閾値変更指示受付部
７２    閾値書込部
７３    閾値変更通知部
３１２  閾値超過通知受付部
３１３  閾値超過通知部
４      コンピユータ装置
４１    データ蓄積部
４１１  監視条件
【図１】
2004259146.tif 000003
【図２】
2004259146.tif 000004
【図３】
2004259146.tif 000005
【図４】
2004259146.tif 000006