(57)【要約】【課題】計算機で実行されるプログラムの動作状態に関する項目の値を、計算機の負荷を抑えながら、詳細に収集する方法及びプログラムを提供する。【解決手段】監視の対象となる一の項目の値を収集する間隔を小さくする際に、それ以外の項目の値を収集する間隔を大きくする。また、計算機の負荷が大きくなった場合には、一または複数の項目の間隔を大きくする。また、同時に間隔を小さくすることが出来る項目数に上限を設ける。また、各項目の値に応じて該項目の間隔を変動させる際に、間隔の変動域を、各項目の状態や計算機負荷に応じて変化させる。【選択図】  図１
2004178118.tif 000002
【特許請求の範囲】
【請求項１】
計算機を用いて、プログラムの動作状態に関する複数の項目の値を、当該項目と対応付けられて記憶装置に記憶されている間隔で取得する方法であって、前記計算機は、前記複数の項目の内の一の項目の値を、当該項目と対応付けられて記憶装置に記憶されている条件と比較し、条件を満たさない場合には、比較された前記項目と対応付けられて前記記憶装置に記憶されているグループに属する項目の前記間隔を当該間隔よりも小さな値に変更し、前記グループに属しない項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更することを特徴とする、プログラムの動作状態監視方法。
【請求項２】
請求項１記載の方法であって、
プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値が記憶装置に記憶されている場合であって、値を取得した一の項目の前記間隔が、前記初期値よりも大きいならば、取得した前記値に基づき、前記一の項目と対応付けられた前記第一の最小値以上でかつ前記第一の最大値以下となるように前記一の項目の前記間隔を決定し、
値を取得した一の項目の前記間隔が、前記初期値よりも小さいならば、取得した前記値に基づき、前記一の項目と対応付けられた前記第二の最小値以上でかつ前記第二の最大値以下となるように、前記一の項目の前記間隔を決定することを特徴とするプログラムの動作状態監視方法。
【請求項３】
請求項１記載の方法であって、プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更することを特徴とする方法。
【請求項４】
計算機を用いて、プログラムの動作状態に関する複数の項目の値を、当該複数の各項目と対応付けられて記憶装置に記憶されている間隔で取得する方法であって、前記計算機は、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較し、前記条件を満たさない場合に、比較された前記項目と対応付けられている各項目の前記間隔を当該間隔よりも小さい値に変更し、計算機の負荷に関する項目の値が当該項目と対応付けられて記憶装置に記憶されている条件と異なる場合には、プログラムの動作状態に関する前記項目であって、当該項目の間隔が当該項目と対応付けられて記憶装置に記憶されている初期値以上である項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更することを特徴とするプログラムの動作状態監視方法。
【請求項５】
請求項４記載の方法であって、プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更することを特徴とする方法。
【請求項６】
計算機を用いて、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する方法であって、前記計算機は、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較し、前記条件を満たさない場合に、計算機の負荷に関する項目の値が、当該項目と対応付けられて前記記憶装置に記憶されている条件を満たすならば、比較された前記一の項目と対応付けられている各項目の前記間隔を当該間隔よりも小さい値に変更することを特徴とするプログラムの動作状態監視方法。
【請求項７】
請求項６記載の方法であって、前記計算機は、計算機の負荷に関する項目の値が当該項目と対応付けられて前記記憶装置に記憶さている条件を満たさない場合に、プログラムの動作状態に関する前記項目であって、当該項目の値が当該項目と対応付けられて前記記憶装置に記憶されている初期値以上である項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更することを特徴とする方法
【請求項８】
請求項７記載の方法であって、
プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更し、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更することを特徴とする方法。
【請求項９】
計算機を用いて、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する方法であって、前記計算機は、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較し、前記条件を満たさない場合に、比較された前記項目と対応付けられている項目数が、所定の値以下であるならば、比較された前記項目と対応付けられている前記各項目の前記間隔を当該間隔よりも小さな値に変更することを特徴とするプログラムの動作状態監視方法。
【請求項１０】
計算機を用いて、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する方法であって、前記各項目と対応付けられて、前期複数の項目の少なくとも一つの項目からなるグループとが前記記憶装置に記憶されている場合に、前記計算機は、前記複数の項目の内の一の項目の値が、当該項目と対応付けられて前記記憶装置に記憶されている条件を満たさない場合に、前記一の項目と異なる項目と対応付けられた前記グループであって、当該グループに属する各項目の前記間隔が、当該各項目の前記間隔について設定された初期値よりも小さいグループがあるならば、当該各項目の前記間隔を前記初期値に変更し、前記一の項目に対応付けられている前記グループに属する各項目の前記間隔を当該間隔よりも小さな値に変更することを特徴とするプログラムの動作状態監視方法。
【請求項１１】
互いに通信可能に接続された複数の計算機を用いて、当該計算機で実行されるプログラムの動作状態に関する複数の各項目の値を、当該各項目に対応付けられて記憶されている間隔で取得する方法であって、
前記複数の計算機の内の一の計算機は、前記複数の項目の内の一の項目について取得した値を、当該一の項目と対応付けられて記憶されている条件と比較し、前記値が前記条件を満たさないならば、前記一の計算機又はこれと異なる他の計算機は、前記一の項目と対応付けられて記憶装置に記憶されている項目と、前記一の項目と対応付けられていない項目の内の一又は複数の項目とを抽出し、前記一の計算機又はこれと異なる他の計算機は、抽出された前記項目であって、前記一の項目と対応付けられている項目について、当該項目と対応付けられて記憶装置に格納されている間隔を当該間隔よりも小さな間隔に変更し、前記一の計算機又はこれと異なる他の計算機は、抽出された前記項目であって、前記一の項目と対応付けられていない項目について、当該項目と対応付けられて記憶装置に記憶されている間隔の値を当該間隔よりも大きな間隔に変更することを特徴とするプログラムの動作状態監視方法。
【請求項１２】
計算機に、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する機能を実現させるためのプログラムであって、前記計算機に、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較する機能と、前記条件を満たさない場合に、比較された前記項目と対応付けられている各項目の前記間隔を当該間隔よりも小さい値に変更し、比較された前記項目と対応付けられている前記各項目と異なる項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更する機能とを実現させることを特徴とするプログラム。
【請求項１３】
請求項１２記載のプログラムであって、
プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更する機能と、
取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更する機能とを実現させることを特徴とするプログラム。
【請求項１４】
計算機に、プログラムの動作状態に関する複数の項目の値を、当該複数の各項目と対応付けられて記憶装置に記憶されている間隔で取得する機能を実現させるためのプログラムであって、前記計算機に、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較する機能と、前記条件を満たさない場合に、比較された前記項目と対応付けられている各項目の前記間隔を当該間隔よりも小さい値に変更する機能と、計算機の負荷に関する項目の値が当該項目と対応付けられて記憶装置に記憶されている条件と異なる場合には、プログラムの動作状態に関する前記項目であって、当該項目の間隔が当該項目と対応付けられて記憶装置に記憶されている初期値以上である項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更する機能とを実現させるためのプログラム。
【請求項１５】
請求項１４記載のプログラムであって、
プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更する機能と、
取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更する機能とを実現させることを特徴とするプログラム。
【請求項１６】
計算機に、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する機能を実現させるためのプログラムであって、前記計算機に、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較する機能と、前記条件を満たさない場合に、計算機の負荷に関する項目の値が、当該項目と対応付けられて記憶装置に記憶されている条件を満たすならば、比較された前記一の項目と対応付けられている各項目の前記間隔を当該間隔よりも小さい値に変更する機能を実現させるためのプログラム。
【請求項１７】
請求１６記載のプログラムであって、前記計算機に、計算機の負荷に関する項目の値が当該項目と対応付けられて前記記憶装置に記憶さている条件を満たさない場合に、プログラムの動作状態に関する前記項目であって、当該項目の値が当該項目と対応付けられて前記記憶装置に記憶されている初期値以上である項目の内の少なくとも一つの項目の前記間隔を当該間隔よりも大きな値に変更する機能を実現させることを特徴とするプログラム。
【請求項１８】
請求項１７記載のプログラムであって、
プログラムの動作状態に関する前記各項目と対応付けられて、前記間隔についての初期値、第１、第２の最小値、最大値、及び前記間隔の変動率についての基準値が記憶装置に記憶されている場合であって、前記取得した一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第一の最小値以上の値に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値以上の値で、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値より小さいならば、前記一の項目の前記間隔を、当該間隔よりも小さくかつ前記一の項目と対応付けられている前記第二の最小値以上の値に変更する機能と、
取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、前記記憶装置に記憶されている前記初期値よりも大きいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第一の最大値以下に変更する機能と、取得した前記一の項目の値の変動率の絶対値が、当該一の項目と対応付けらている前記基準値より小さく、かつ前記一の項目の前記間隔が、記憶装置に記憶されている初期値よりも小さいならば、前記一の項目の前記間隔を、当該間隔よりも大きくかつ前記一の項目と対応付けられている前記第二の最大値以下の値に変更する機能とを実現させることを特徴とするプログラム。
【請求項１９】
計算機に、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する機能を実現させるためのプログラムであって、前記計算機に、前記複数の項目の内の一の項目の値を、前記記憶装置に記憶されている条件と比較する機能と、前記条件を満たさない場合に、比較された前記項目と対応付けられている項目数が、所定の値以下であるならば、比較された前記項目と対応付けられている前記各項目の前記間隔を当該間隔よりも小さな値に変更する機能とを実現させることを特徴とするプログラム。
【請求項２０】
計算機に、プログラムの動作状態に関する複数の項目の値を、当該各項目と対応付けられて記憶装置に記憶されている間隔で取得する機能を実現させるためのプログラムであって、前記各項目と対応付けられて、前期複数の項目の少なくとも一つの項目からなるグループとが記憶装置に記憶されている場合に、前記計算機に、前記複数の項目の内の一の項目の値が、当該項目と対応付けられて前記記憶装置に記憶されている条件を満たさない場合に、前記一の項目と異なる項目と対応付けられた前記グループであって、当該グループに属する各項目の前記間隔が、当該各項目の前記間隔について設定された初期値よりも小さいグループがあるならば、当該各項目の前記間隔を前記初期値に変更し、前記一の項目に対応付けられている前記グループに属する各項目の前記間隔を当該間隔よりも小さな値に変更する機能を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】本発明は、計算機で実行されるプログラムの動作状態を監視する技術に関する。
【０００２】
【従来の技術】計算機上で実行されるプログラムの動作状態に関する項目の値を、所定の時間間隔で収集することにより、当該計算機等からなるコンピュータシステムを監視する方法において、計算機の利用頻度または負荷に応じて、当該計算機に関する監視の間隔を小さくする又は監視の対象である項目（監視項目）を追加すること、またこれに代えて、当該計算機に関する監視の間隔を大きくするまたは監視項目を削除する（例えば、特許文献１参照）。
【０００３】
【特許文献１】
特開２００１−３２５１２６号公報
【０００４】
【発明が解決しようとする課題】計算機で実行されるプログラムの動作状態や、当該計算機のハードウェア資源の利用状態を監視する際に、監視対象に対する詳しい情報を得るという観点からは、監視対象であるプログラムの動作状態等に関する項目の値を出来るだけ短い間隔で収集することが望ましい。他方、前記プログラムの動作状態等に関する項目の値を取得するためには、計算機上で、監視用プログラムを実行させることが必要となり、監視対象の項目の値を短い時間間隔で収集するほど、当該計算機への負荷が大きくなってしまう。そこで、計算機の負荷を抑制しつつ、監視対象の情報を詳細に収集する必要があるが、これについては、特許文献１には記載されていない。本発明の目的は、監視対象に関する項目の値を収集する間隔を、各項目毎に制御し、計算機負荷を抑制しつつ、監視対象に対する詳細な情報を得ることを目的とする。
【０００５】
【課題を解決するための手段】上記の目的を達成するために、本発明では、以下の手段を提案する。すなわち、ある項目の値を収集する間隔を小さくする際に、それ以外の項目に対する間隔を大きくする。また、計算機の負荷が高まった場合には、ある項目に対する間隔を大きくする。また、同時に間隔を小さくすることが出来る項目数に上限を設ける。また、各項目の値に応じて該項目の間隔を変動させる際に、間隔の変動域を、各項目の状態や計算機負荷に応じて変化させる。
【０００６】
【発明の実施の形態】以下において、本発明の実施の形態を図面を用いて説明する。
【０００７】
図１は、本発明の一実施例で用いる、互いに通信可能に接続された計算機からなるシステムの構成を示したものである。図１では、複数の計算機（１０００、１３００、１４００）がネットワークを介して接続されている。
【０００８】
ここで、実施例で用いる計算機の構成について計算機１（１０００）を例に説明する。計算機（１０００）は、プログラムやデータを記憶しておく記憶部（１１００）と、記憶部に記憶されたプログラムを実行するＣＰＵなどの処理部（１２００）とを有している。記憶部（１１００）には、監視の対象となるプログラム（アプリケーションプログラムや、ＯＳなど）（１１１０）と、それぞれのプログラムを監視する監視項目取得プログラム（１１１１）、監視項目取得プログラムが、項目の値を取得するタイミングである収集間隔を変更する収集間隔変更プログラム（１１１２）が記憶されている。また、監視の対象となる項目についての情報が登録されている項目情報テーブル（１２１０）、それそれの項目の収集間隔についての情報が登録されている収集間隔テーブル（１２２０）が記憶されている。また、各項目と、いくつかの項目からなるグループが対応付けられて登録されている派生グループ定義テーブル（１２４０）が記憶されている。少なくとも一つの項目からなるグループが一の項目の派生グループであるとは、派生グループ定義テーブルにおいて、当該グループが当該一の項目と対応付けられて登録されていることをいう。各派生グループは、同一のプログラムに関する項目からなるものであってもよいし、異なる２以上のプログラム等に関する項目からなるものであってもよい。また、異なる２以上の計算機上で実行されるプログラム等に関する項目からなるものであってもよい。なお、派生グループ定義テーブルにおいては、各派生グループを示す名前が、５２０に登録されている。
【０００９】
以下に示す実施例においては、ある項目の値が異常と判定された場合に、当該項目の派生グル−プに属する各項目の間隔を小さくすることが行われる。ある項目（αｉ）の値が異常と判断され、αｉに関して定義された派生グループ（｛β１，β２，．．，βｎ｝）の収集間隔が小さくされた状態にあるときに、項目αｉを、派生グループに属する各項目に対する異常項目と呼ぶことにする。すなわち、項目αが項目βの異常項目であるとは、項目βが項目αの派生グループに属しており、αの値が異常となることにより、βの属する派生グループに属する各項目の間隔が小さくされている状態にあることをいう。異常項目テーブル（１２５０）は、派生グループに属する各項目とその異常項目が対応付けられて登録されているテーブルであり、各項目に対する異常項目は、収集間隔管理プログラム等によって、随時、変更される。さらに、ある項目の値が異常となったときに、当該項目の派生グループを、派生グループ定義テーブルから抽出し、抽出した各項目の間隔を小さくするための通知を収集間隔変更プログラムに対して発行する等を行う、収集間隔管理プログラム（１２６０）が記憶されている。さらに、ＣＰＵ使用率や、ディスク容量などの計算機の負荷に関する項目の値を収集する、計算機負荷監視プログラム（１２７０）、計算機の負荷に関する各項目の状態等の情報からなる計算機負荷情報テーブル（１２８０）が記憶されている。計算機２（１３００）、計算機３（１４００）の構成についても、計算機１の構成と同様である。以下の実施例では、３つの計算機からなるシステムを例に説明しているが、本発明は特にこの構成に限定されることはない。すなわち、一つの計算機からなるシステムでもよいし、互いに通信可能に接続された２以上の任意の数の計算機からなるシステムであってもよい。また、２以上の計算機からなるシステムを監視する場合に、各計算機毎に収集間隔管理プログラムを持たなくともよい。すなわち、システムを構成する計算機の内、ある一つの計算機のみが収集間隔管理プログラムを有することも可能である。また、監視対象となるプログラムが実行されていない計算機において、収集間隔管理プログラムが実行されるというような構成も可能である。
【００１０】
以下、各テーブルの詳細及び各プログラムの動作について図を用いて説明する。図２は、収集間隔テーブルである。これは、各項目について、監視項目取得プログラムが項目の値を収集する間隔である収集間隔に関する情報からなるテーブルである。項目名（２００）には、監視の対象となる各項目名が登録されている。項目としては、例えば、アプリケーションプログラム（ＡＰ１とする）がデータベースマネジメントシステムへアクセスする頻度を示す、ＡＰ１のアクセス頻度（２０１）がある。また、計算機の負荷に関する項目（ＣＰＵ使用状況、メモリ使用状況）も、監視対象項目として登録することが可能である。これら監視の対象となる項目は、利用者により設定される。収集間隔（２１０）は、各項目の値を収集する間隔である。例えば、図２は、ＡＰ１のアクセス頻度という項目の値が３０秒毎に収集されることを示している。これらの間隔は、当該項目の値の収集を開始する前に予め利用者によって設定され、監視の対象となっている項目の状態等に応じて、収集間隔変更プログラム等によって、随時、変更されるものである。以下の実施例において、各項目の収集間隔（２１０）として予め利用者によって設定される値を“初期値”ということにする。また、図２の初期値（２２０）には、収集間隔の初期値として利用者によって設定された値と同じ値が登録されているものとする。各項目の間隔を変更する際に、当該間隔がとり得る最大値、最小値が各々、最大値（２６０）、最小値（２５０）として、利用者によって設定される。収集状態（２３０）には、各項目について、“通常状態”、“縮退状態”、“詳細状態”、“一時停止状態”の４つの内のいずれかの状態が登録されている。これらは、収集間隔を変更させる際に用いられるもので、各項目の状態や収集間隔に応じて、収集間隔変更プログラム等によって、随時、変更されるものである。ある項目の収集状態が、“通常状態”であるとは、当該項目の間隔（２１０）が、当該項目について設定された初期値（２２０）と等しい状態をいう。また、“詳細状態”とは、間隔（２１０）が、初期値（２２０）より小さい状態をいい、“縮退状態”とは、間隔（２１０）が、初期値（２２０）より大きい状態をいう。また、“一時停止状態”とは、収集間隔変更プログラム等による収集間隔（２１０）の変更がなされない状態をいう。変動基準値（２４０）は、項目の値の変動率に応じて当該項目の間隔を変更する際に、間隔を小さくするか、大きくするかの基準となる値である。変動基準値は、利用者によって設定される。
【００１１】
図３は、項目情報テーブルの一例である。これは、収集間隔を変更する際に用いるものであり、各項目の収集間隔を変更するか否かの条件等からなるものである。項目名（３００）は、図２と同様、監視の対象となる項目名を利用者が予め登録するものである。“正常状態定義”（３１０）には、各項目の値についての条件が登録されており、各項目の値が当該条件を満たす場合に、項目の状態が“正常”であるという。例えば、ＡＰ１のアクセス頻度（３０１）という項目については、２０／ｓ以下（３１１）すなわち、一秒間に出されるアクセス要求が２０回以下である場合が正常な状態として登録されている。正常状態定義（３１０）は、各項目について、利用者が設定する。項目状態（３２０）は、正常、異常のいずれかからなり、収集された項目の値が当該項目について登録されている正常状態の条件を満たす場合には“正常”、そうでない場合には“異常”が登録される。項目状態（３２０）は、各項目の状態に応じて、収集間隔変更プログラム等によって、随時、変更されるものである。前回取得項目値（３３０）は、各項目について現在より以前に収集された項目の値の内で最新の値であり、監視項目取得プログラムによって、随時、更新される。
【００１２】
図４は、計算機の負荷に関する項目（４００）の状態等が登録されている、計算機負荷情報テーブルである。ここに登録されている項目は、計算機負荷監視プログラムの監視の対象となるものである。本テーブルは、計算機の負荷に応じて、図２に登録されている各監視対象項目に対する収集間隔を変更する際に用いられる。図４において、項目名（４００）には、計算機の負荷に関する項目が登録されている。４００に登録される項目は、図２の項目情報テーブルに登録されている項目の内、計算機の負荷に関する項目の一部又は全部と重複していてもよい。正常状態定義（４１０）は、図３同様、各項目の値についての条件が登録されており、当該条件を満たす場合に“正常”な状態ということにする。項目状態（４２０）は、図３同様、各項目が、現在、正常か異常かを表すものである。また、各項目の値を収集する間隔が収集間隔（４３０）に登録されている。前回取得項目値（４４０）は、各項目について現在より以前に収集された項目の値の内で最新の値である。
【００１３】
図５は、派生グループ定義テーブルを表す。これは、各項目（５００）と対応付けられて、少なくとも一つの項目からなるグループ（派生グループ）が登録されているものである。各項目についての派生グループは、利用者が設定する。なお、各項目について定義される派生グループは、当該各項目と同一の計算機上で実行される一つのプログラムのみに関する項目からなるものであってもよいし、同一の計算機上で実行される異なる２以上のプログラム等に関する項目からなるものであってもよい。また、異なる２以上の計算機上で実行されるプログラムに関する項目からなるものであってもよい。異なる計算機上で実行されるプログラムに関する項目からなる派生グループがある場合には、各派生グループに属する項目が、どの計算機上で実行されるプログラムに関する項目であるかを示す情報を、派生グループ定義テーブルに登録しておくことが可能である。
【００１４】
図６は、異常項目テーブルである。派生項目（６００）には、図５の派生グループ（５１０）に登録されている各項目が登録されている。これは、利用者が予め設定するものである。異常項目（６１０）には、各派生項目の異常項目が登録されている。例えば、ＡＰ２のアクセス頻度（６０１）は、項目：ＡＰ１の待ち時間（６１１）の派生グループに属する項目であり、ＡＰ１の待ち時間（６１１）が異常状態になって収集間隔が小さくされている状態にあるので、ＡＰ２のアクセス頻度の異常項目として、ＡＰ１の待ち時間が登録されている。各派生項目の異常項目は、項目の状態等に応じて、随時、収集間隔管理プログラム等によって更新されるものである。
【００１５】
図７は、本発明の一実施例に係る監視項目取得プログラムの動作を示すフローチャートである。監視項目取得プログラムは、収集間隔テーブル（図２）の項目名（２００）に登録されている項目の内の一つの項目（α１とする。）を、選択する。項目を選択する方法については、例えば、２００において、登録されている順番に上から順次選択するというものがあるが、特にこれに限られるものではない。７００で、項目α１についての項目の値を前回取得した時点から、当該項目の収集間隔が経過しているか否かを判定する。経過している場合には、項目α１の値を取得する（７０１）。次に、取得した項目の値が当該項目について定められた“正常”の条件を満たすか否かを、項目情報テーブル（図３）の正常状態定義（３１０）を参照して判定する（７０２）。“異常”と判定された場合には、項目α１について、収集間隔テーブル（図２）の収集状態（２３０）を参照して、収集状態が“詳細”か否かを判定する（７０４）。
収集状態が“詳細”でない場合には、項目α１の収集状態が“一時停止”か否かを判定する（７０５）。これは、後述するように、計算機の負荷が大きくなった場合に、監視対象項目の収集間隔を小さくすることを一時的に停止し、負荷がさらに大きくなることを防止する、ということが行われるため、収集間隔を小さくするか否かを決定するに当たり、“一時停止”か否かを判定する必要があるからである。“一時停止”でないと判定された場合には、収集間隔管理プログラムに対して、通知１を発行する（７０７）。通知１は、項目α１の派生グループに属する項目の収集間隔を小さくするためのものである。なお、前述したように、通知を発行する相手となる収集間隔管理プログラムは、値を取得した監視項目取得プログラムが実行される計算機と同一の計算機で実行されるものである場合もあるし、異なる計算機で実行されるものである場合もある。
【００１６】
図８は、収集間隔管理プログラムの動作を示すフローチャートである。収集間隔管理プログラムは通知１を受付け（８００）、収集間隔テーブル（図２）の２３０を参照して、“詳細収集”状態の項目があるか否かを判定する（８０１）。ある場合には、処理を終了する（８０６）。これは、異常状態と判定されたことにより収集間隔が小さくされた状態にある項目で、α１以外の項目が既にある場合に、α１については収集間隔を小さくしないことを意味する。これにより、同時に多数の項目の収集間隔が小さくされることによる計算機の負荷の増大を抑制することが出来る。８０１において、“詳細”状態の項目がない場合には、派生グループテーブル（図５）の、項目α１に対応するグループの欄から、当該グループに属する項目を抽出する（８０２）。抽出した各項目について、収集間隔を縮小する指示の通知４を、各項目の収集間隔を変更する機能を有する各収集間隔変更プログラムに対して発行する（８０３）。通知を発行する相手となる収集間隔変更プログラムは、収集間隔管理プログラムと同一の計算機で実行されるものだけである場合もあるし、異なる計算機で実行されるものだけである場合もあるし、同一の計算機で実行されるものと異なる計算機で実行されるものの両方である場合もある。次に、項目α１に関する派生グループに属さない項目を抽出し（８０４）、抽出した各項目についての収集間隔を拡大する指示の通知５を、各項目の収集間隔を変更する機能を有する各収集間隔変更プログラムに対して発行する（８０５）。これによって、８０３によっていくつかの項目の収集間隔が小さくされることによって増大する計算機の負荷を、別の項目についての収集間隔を大きくすることで抑えることが可能となる。この際、収集間隔を大きくする項目としては、項目α１に関する派生グループに属さないものを選ぶので、項目α１に関する派生グループについては詳細な情報の収集が可能となる。なお、８０４において、収集間隔を大きくするべき項目を選ぶ際に、いくつの項目を選ぶかは、計算機の負荷に関する項目の値や、収集間隔が小さくされたグループに属する項目数等に応じて適当に設定することが可能である。例えば、８０３において間隔縮小の指示の通知の対象となった項目数が多いほど、収集間隔を大きくする項目の数を多くするように設定するという方法があるが、本発明は特にこれに限定されるものではない。また、収集間隔を大きくする項目を選ぶ方法としては、例えば、図２に登録されている項目の内から、収集間隔を小さくする対象となっている派生グループに属していない項目を、テーブルに登録されている順番に選ぶというものがあるが、本発明は特にこの方法に限定されるものではない。
【００１７】
図１２は、通知４を受付けた各収集間隔変更プログラムの動作を示すフローチャートである。通知４を受付け（図１２の１２００）、収集間隔テーブルの現在の間隔（図２の２１０）を参照して、これを２で割った値をＸとして記憶する（１２０１）。次に、Ｘを、新たな収集間隔として、２１０に登録する（１２０２）。さらに、２３０の収集状態の欄に“詳細”を登録する（１２０３）。最後に、図６の異常項目テーブルにおいて、間隔を縮小した項目に対応する“異常項目”の欄に、項目α１を登録し（１２０４）、処理を終了する（１２０５）。なお、１２０１において、新たな収集間隔Ｘを計算する際に用いた数値２に代えて、任意の正数を用いることも可能である。
【００１８】
図１３は、通知５を受付けた収集間隔変更プログラムの動作を示すフローチャートである。通知５を受付け（１３００）ると、現在の収集間隔を２倍した値をＹとして記憶し（１３０１）、新たな収集間隔としてＹを登録する（１３０２）。次に１３０３において、間隔を拡大した項目についての収集状態を“縮退”にし（１３０３）、処理を終了する（１３０４）。１３０１において用いた数値２についても、他の正数を用いることが可能である。
【００１９】
図７の７０４において、収集状態が“詳細”であると判定された場合には、異常項目テーブル（図６）において、項目α１の異常項目として、項目α１自身が登録されているか否かを判定する（７０６）。異常項目として登録されているならば、収集間隔管理プログラムに通知２を発行する（７０８）。これは、項目α１について定められた派生グループについての収集間隔が小さくされた状態にあり、かつ、α１は異常状態にあるので、α１について定められた派生グループの収集間隔をさらに小さくするための通知であり、これにより、α１について定められた派生グループについてのより詳細な情報を収集することが可能になる。また、７０６において、α１が異常項目として登録されていない場合には、処理を終了する。これは、α１について定められた派生グループについては収集間隔が小さくされた状態にはなく、かつ、他のある項目についての派生グループであってα１を含むグループについての収集間隔が既に小さくされている状態にあるので、α１についての派生グループの収集間隔を変更することなく、処理を終了するためである。
【００２０】
通知２を受付けた収集間隔管理プログラムの動作については、通知１を受付けた収集間隔管理プログラムの動作について図８を用いて上で説明したものと同様である。
【００２１】
図７の７０２において、取得した項目の値が“正常”である場合には、収集間隔テーブル（図２）を参照して、項目α１の収集状態が“詳細”か否かを判定する（７０３）。“詳細”と判定された場合には、異常項目テーブル（図６）を参照し、項目α１について、派生性が有るか否かを判定する（７１０）。ここで、ある項目について派生性があるとは、異常項目テーブルにおいて、当該項目の異常項目として、当該項目以外の項目が登録されていることをいう。派生性がない場合には、収集間隔管理プログラムに通知３を発行する（７１１）。これは、項目α１は正常状態にあり、かつ派生性がないので、項目α１に関する派生グループの収集間隔を初期値に回復させるためのものである。
【００２２】
７０３において、“詳細”でないと判定された場合には、収集間隔テーブル（図２）を参照して、α１の収集状態が“一時停止”か否かを判定する（７０９）。一時停止である場合には、派生性が有るか否かを判定し（７１０）、ない場合には、収集間隔管理プログラムに対して通知３を発行する（７１１）。これも、項目α１に関する派生グループの収集間隔を初期値に回復するためのものである。
【００２３】
図９は、通知３を受付けた収集間隔管理プログラムの動作を示すフローチャートである。収集間隔管理プログラムは、通知３を受付け（図９の９００）、派生グループ定義テーブル（図５）を参照して、項目α１の派生グループに属する項目を抽出する（９０１）。次に、抽出した各項目の収集間隔を初期値に回復する指示の通知９を発行する（９０２）。さらに、収集間隔管理テーブル（図２）を参照して、縮退状態にある項目を抽出し、抽出された各項目についての収集間隔を通常に回復する指示の通知１０を発行し（９０３）、処理を終了する（９０４）。９０２により、項目α１が異常を示したために収集間隔が小さくされていた項目についての収集間隔が初期値に回復され、９０３により、項目α１に関する派生グループの収集間隔が小さくされたことによる計算機負荷の増大を抑えるために収集間隔が大きくされていた項目についての収集間隔が初期値に回復される。
【００２４】
収集間隔変更プログラムは、通知９を受付け（図１４の１４００）、収集間隔テーブルの“間隔”の欄に、同テーブルの“初期値”に登録されている値を登録する（１４０１）。更に、収集状態（２３０）を“通常”にし（１４０２）、処理を終了する（１４０３）。通知１０を受付けた場合の動作も同様である。
【００２５】
図１５は、本発明の実施例に係る計算機負荷監視プログラムの動作を示すフローチャートである。計算機負荷監視プログラムは、計算機負荷情報テーブル（図４）に登録されている項目の内の一の項目を選択する。選択する方法については、例えば、テーブルに登録されている順番に選択するという方法があるが、特にこれに限られるものではない。１５００において、監視対象になっている計算機負荷に関する項目の値を前回取得した時点から、当該項目について登録されている収集間隔（図４の４３０）が経過しているか否かを判定する（１５００）。
【００２６】
経過している場合には、当該項目の値を取得し（１５０１）、計算機負荷情報テーブルの異常状態定義（４１０）を参照して、取得した値が正常か否かを判定する（１５０２）。
【００２７】
正常でない場合には、収集間隔管理プログラムに対して通知１１を発行する（１５０３）。
【００２８】
図１０は通知１１を受付けた収集間隔管理プログラムの動作を示すフローチャートである。通知１１を受付けると（１０００）、収集間隔テーブルの収集状態（２３０）が“詳細”になっている各項目についての収集状態を、“一時停止”に変更する（１００１）。次に、縮退状態または通常状態にある項目について、収集間隔を拡大する指示の通知１３を、収集間隔変更プログラムに対して発行し（１００２）、処理を終了する（１００３）。通知１１は、計算機の負荷に関する項目の値が異常を示したことによって発行されたものである。いま、詳細収集の状態にある項目についてはさらに収集間隔が小さくされることがあり、計算機の負荷がさらに増大してしまう可能性がある。通知１１及びそれを受付けた収集間隔管理プログラムの動作によって実現される本実施例によると、詳細収集状態にある項目の収集状態を一時停止状態にすることにより、収集間隔を小さくすることを一時的に中止することで、計算機の負荷がさらに増大することを防ぐことが可能となっている。ここで、収集状態が一時停止状態に変更された項目の収集間隔は、収集状態が変更される以前の値に維持されるので、収集状態が変更される以前と同程度に詳細な情報を収集することが可能である。また、詳細収集状態の項目の間隔を一時停止状態に変更する際に、縮退状態又は通常状態の項目についての収集間隔を大きくするので、計算機の負荷を減少させることが可能となる。なお、本発明においては、通知１１を受付けた収集間隔管理プログラムの動作（図１０）において、詳細収集状態の項目の収集状態を一時停止に変更する（１００１）
ことを行わず、通常又は縮退収集状態の項目の収集間隔を大きくする通知（１００２）のみを行ってもよい。
【００２９】
１５０２において、項目の値が正常と判定された場合には、計算機負荷情報テーブル（図４）の前回取得項目の値（４４０）の値が、正常か否かを判定する（１５０４）。異常と判定された場合には、計算機負荷情報テーブルに登録されている他の全ての項目の状態が正常であるならば、収集間隔管理プログラムに対して通知１２を発行する（１５０５）。
【００３０】
収集間隔管理プログラムは、通知１２を受付け（図１１の１１００）、収集間隔テーブル（図２）の収集状態（２３０）が、“一時停止”になっている項目の収集状態を“詳細”に変更し（１１０１）、処理を終了する（１１０２）。通知１２及びこれに対する以上説明した動作からなる本実施例によると、計算機の負荷に関する項目が異常を示したことにより収集間隔を小さくすることを中止していた項目について、計算機負荷に関する項目が正常状態に回復したことに伴い、収集間隔を小さくすることを再開し、詳細な情報を収集することが可能となる。
【００３１】
以上が、本発明の第一の実施例についての説明である。
【００３２】
次に、本発明の第二の実施例について説明する。上述した実施例においては、ある時点で、詳細収集を行う派生グループは一つであった。これについて、本実施例においては、同時に２以上の派生グループについて、詳細収集が行われる場合がある。本実施例は、例えば、ある項目αｉの値が異常を示し、αｉに関する派生グループに属する各項目の収集間隔が小さくされている状況にある時に、αｉとは異なる他の項目αｋの値が異常を示した場合を想定している。本実施例の説明においては、図１８、図１９及び図２０を新たに用いる。図１８、図１９はそれぞれ、本実施例における、監視項目取得プログラムの動作、収集間隔管理プログラムの動作を示すフローチャートである。また、図２０は、詳細収集時間テーブルである。これは以下に説明する実施例において、同時に異常となった複数の項目の派生グループについて交互に詳細収集をするに当たって、各派生グループが詳細収集されている時間を判定するためのものである。派生グループ（２１００）には、派生グループ定義テーブル（図５）に登録された各派生グループ名（５２０）が登録されている。詳細収集時間（２２００）には、各派生グループについて、当該派生グループに属する各項目が現時点で詳細収集状態にある場合に、詳細収集が開始されてから現時点までの経過時間が登録されている。本実施例においては、ある項目が異常となった場合に、ある一の派生グループが既に所定時間詳細収集状態にある場合に、新たに異常となった項目の派生グループを新たに詳細収集し、既に詳細収集状態の前記一の派生グループを通常収集に変更するが、この際に、既に詳細収集状態の派生グループを通常状態に変更するか否かの基準となる収集時間が、基準時間（２３００）として登録されている。なお、本実施例の説明においては、既に説明した実施例と異なる部分を中心に説明する。
【００３３】
図１８において、ある項目（αｉとする）の値を、前回取得した時点から、αｉについて定められた収集間隔が経過しているならば、αｉの値を取得する（１８０１）。１８０２において、取得した値が正常か否かを判定する。正常である場合の、各プログラムの動作については、上述した実施例の場合と同様である。
１８０２において、取得した項目の値が異常と判定された場合には、１８０４において、項目αｉの収集状態が一時停止か否かを、項目情報テーブル（図２）を参照して判定する。一時停止状態と判定された場合には、処理を終了する。一時停止状態でないと判定された場合には、現時点で、新たに詳細収集可能な項目数の上限（ｕとする）と、項目αｉに関する派生グループに属する項目数を比較し、当該項目数が上限ｕを越えないか否かを判定し、さらに、計算機負荷情報テーブル（図４）を参照し、計算機負荷に関する項目で、“異常”状態の項目がないか否かを判定する（１８０５）。ここで、ｕの値の初期値としては、監視の対象となる全ての項目の収集間隔が初期値である状態にとるべき値を利用者が設定する。監視が開始された後は、各時点で詳細収集状態の項目数を、初期値から引いた値が、当該各時点でのｕの値として登録されているものとする。αｉに関する派生グループに属する項目数がｕを越えず、かつ計算機の負荷に関する項目の状態が全て“正常”である場合には、１８０６において、収集間隔管理プログラムに対して通知２を発行する。通知２は、項目αｉに関する派生グループに属する各項目の収集間隔を小さくするためのものであり、通知２を受付けた収集間隔管理プログラムの動作（図８）及び、収集間隔変更プログラムの動作については、上述した第一の実施例の場合と同様である。１８０５において、αｉに関する派生グループに属する項目数がｕを越えている、又は、計算機の負荷に関する少なくともひとつの項目の状態が“異常”である場合には、１８０７において、収集間隔管理プログラムに対して通知１８を発行する。これは、項目αｉの値が異常を示しているが、αｉに関する派生グループに属する各項目の収集間隔を小さくすると、現時点で異常を示している計算機の負荷をさらに悪化させてしまう恐れがあるので、以下に示すような処置を行うためのものである。図１９を用いて、通知１８を受付けた収集間隔管理プログラムの動作を説明する。１９０１において、詳細収集時間テーブル（図２０）を参照して、現時点で詳細収集状態の派生グループ（Ｇ１，Ｇ２，．．，Ｇｋとする）を抽出する。ただし、「ある派生グループが詳細収集状態にある」とは、当該グループに属する各項目が詳細収集状態にあることをいう（本詳細な説明の他の箇所でも同様の意味で用いるものとする。）。次に、１９０２において、抽出された各グループについて、当該グループが詳細収集状態になってから経過した時間（図２０の２２００）が、当該グループについて定められている基準時間（図２０の２３００）よりも大きいか否かを判定する。１９０２において、詳細収集状態になってから経過した時間が基準時間より大きいグループが一つもない場合には、処理を終了する。ある場合には、該当するグループの内から、適当な方法（例えば、詳細収集状態になってからの経過時間が最大のグループを選ぶ）で一つのグループ（Ｇ１とする）を抽出する。次に、１９０３において、抽出されたグループに属する各項目についての収集間隔を当該各項目について定められた初期値に変更する指示の通知９を発行する。通知９を受付けた収集間隔変更プログラムの動作（図１４）については、���一の実施例について説明したものと同様である。さらに、１９０４において、異常を示した項目αｉに関する派生グループに属する項目を、派生グループ定義テーブル（図５）を参照して抽出する。次に、１９０５において、１９０４において抽出した各項目の収集間隔を縮小する指示の通知４を発行する。通知４を受付けた収集間隔変更プログラムの動作（図１２）についても、第一の実施例について説明したものと同様である。以上に示した方法によると、同時に複数の項目について異常が示された場合でも、異常を示された各項目に関する各派生グループに属する項目の値を、計算機負荷を抑制しながら、詳細に収集することが可能となる。
【００３４】
以下では、本発明の第三の実施例について説明する。本実施例においては、各項目毎に当該項目の値に基づいて、当該項目についての収集間隔を変動させる。以下では特に、各項目について取得した値と当該項目について前回取得した値の変動率の絶対値が所定の基準値以上の場合には、当該項目についての収集間隔を小さくし、変動率の絶対値が所定の基準値より小さい場合には、収集間隔を大きくするという方法を用いるが、取得した項目の値に基づいて収集間隔を変更する方法は特にこれに限られることはない。なお、本実施例の説明には、図２から図１７を用いる。
【００３５】
図１６は、本実施例に係る監視項目取得プログラムの動作を示すフローチャートである。１６００で、ある項目（α２とする）についての項目の値を前回取得した時点から、当該項目の収集間隔が経過しているか否かを判定する。経過している場合には、項目α２の値を取得する（１６０１）。次に、取得した項目の値が当該項目について定められた“正常”の条件を満たすか否かを、項目情報テーブル（図３）の正常状態定義（３１０）を参照して判定する（１６０２）。“異常”と判定された場合には、項目α２について、収集間隔テーブル（図２）の収集状態（２３０）を参照して、収集状態が“詳細”か否かを判定する（１６０４）。
【００３６】
収集状態が“詳細”でない場合には、項目α２の収集状態が“一時停止”か否かを判定する（１６０５）。“一時停止”でないと判定された場合には、収集間隔管理プログラムに対して、通知１を発行する（１６０７）。通知１は、項目α２に関する派生グループの収集間隔を小さくするためのものであり、通知１を受けた収集間隔管理プログラムの動作（図８）及び収集間隔管理プログラムの指示の通知を受けた収集間隔変更プログラムの動作については、第一の実施例の説明で述べたものと同様である。ただし、図１２の１２０１において新たな収集間隔の候補Ｘとしては、収集間隔を小さくする対象となっている項目について図２で定められた“最小値”以上の値を選ぶものとする。また、図１３の１３０１におけるＹとしては、収集間隔を大きくする対象である項目について図２で定められている“最大値”以下の値を選ぶものとする。
【００３７】
図１６の１６０４において、収集状態が“詳細”であると判定された場合には、収集間隔変更プログラムに対して通知１５を発行する。
【００３８】
図１７は通知１５を受付けた収集間隔変更プログラムの動作を示すフローチャートである。通知１５を受付け（１７００）ると、変動率の絶対値に応じて収集間隔を変更する際に用いる、収集間隔の変動幅の最小値（ＭＩＮとする）及び最大値（ＭＡＸとする）を収集間隔テーブル（図２）を参照して抽出する（１７０１）。すなわち、項目α２は詳細収集状態にあるのでＭＩＮとして２５０に登録された“最小値”を用い、ＭＡＸとして２２０の“初期値”を用いる。尚、後述するように、収集状態が“縮退”である項目について、変動率に応じて収集間隔を変更する際には、ＭＩＮとして２２０の“初期値”を、ＭＡＸとして２６０の“最大値”を各々用いる。このように、本実施例では、収集状態に応じて、収集間隔の変動幅のＭＡＸとＭＩＮを変化させる。これにより、次のような効果が得られる。すなわち、本実施例においては、項目毎に値の変動率の絶対値に応じて収集間隔を変動させるので、収集間隔が初期値よりも小さい値になっている詳細収集状態の項目であっても、値の変動率の絶対値が変動基準値より小さい場合には、収集間隔が大きくされる。一方、計算機の負荷を抑制するために収集間隔が初期値より大きい値になっている縮退収集状態の項目であっても、値の変動率の絶対値が変動基準値より大きい場合には収集間隔が小さくされる。従って、もし、収集状態によって収集間隔の変動幅の上限値と下限値を変化させないと、詳細収集状態にあっても縮退収集状態にあるときと同程度に収集間隔が大きくなってしまう可能性があり、詳細な情報が収集できなくなる場合も生じる。また、縮退収集状態にあっても、詳細収集状態にあるときと同程度に収集間隔が小さくされてしまい、計算機負荷を抑制するという目的を達成できなくなる場合が生じる。これに対して、本発明では、同一の項目について、収集状態に応じて収集間隔の変動幅の上限値と下限値を変化させるので、項目の値の変動率の絶対値に応じて収集間隔を変動させる場合においても、計算機の負荷を抑制し、かつ、詳細な情報を得たい項目について収集間隔を小さくすることが可能となる。
【００３９】
次に、項目情報テーブル（図３）の前回取得項目値（３３０）を用いて、項目α２の最新の項目の値と前回取得した項目の値の変動率の絶対値を計算して、これをＡとして記憶する（１７０２）。次に、収集間隔テーブルの変動基準値（図２の２４０）を抽出して（これをＰとする）、ＡがＰよりも小さいか否かを判定する（１７０３）。
【００４０】
ＡがＰ以上の場合には、収集間隔テーブル（図２）の２１０に登録された現在の収集間隔を２で割った値をＸとして記憶する（１７０４）。次に、ＸがＭＩＮよりも大きいか否かを判定する（１７０５）。大きい場合には、Ｘを新たな収集間隔として、２１０に登録し（１７０６）、ＸがＭＩＮ以下の場合にはそのまま終了する（１７０７）。このように、項目の値の変動率が所定の基準値よりも大きい場合には、ＭＩＮよりも大きい値の範囲で、収集間隔を小さくする。なお、１７０４において用いた数値２に代えて、他の任意の正数を用いることも可能である。また、本実施例では、１７０５においてＸがＭＩＮよりも大きいと判定された場合に、収集間隔をＸに変更（１７０６）したが、これに代えて、ＸがＭＩＮ以上と判定された場合に収集間隔をＸに変更することにしてもよい。
【００４１】
１７０３において、変動率の絶対値Ａが変動基準値Ｐよりも小さい場合には、現在の収集間隔を２倍した値をＹとして記憶する（１７０８）。ＹがＭＡＸよりも小さいか否かを判定し（１７０９）、小さい場合にはＹを新たな収集間隔として登録する（１７１０）。ＹがＭＡＸ以上の場合にはそのまま終了する（１７１１）。このように、変動率の絶対値が所定の基準値よりも小さい場合には、ＭＡＸよりも小さい値の範囲で、収集間隔を大きくする。１７０８で用いた数値２についても、他の任意の正数を用いることが可能である。また、本実施例では、１７０９においてＹがＭＡＸよりも小さいと判定された場合に、収集間隔をＹに変更（１７１０）したが、これに代えて、ＹがＭＡＸ以下と判定された場合に収集間隔をＹに変更することにしてもよい。また、本実施例においては、１７０３において、ＡがＰよりも小さい場合に１７０８に分岐し、ＡがＰ以上の場合に１７０４に分岐したが、これに代えてＡがＰ以下の場合に１７０８に、ＡがＰより大きい場合に１７０４にそれぞれ分岐するようにしてもよい。
【００４２】
１６０２において、取得した項目の値が“正常”である場合には、収集間隔テーブル（図２）を参照して、項目α２の収集状態が“詳細”か否かを判定する（１６０３）。“詳細”と判定された場合には、異常項目テーブル（図６）を参照し、項目α２について、派生性が有るか否かを判定する（１６０９）。派生性がない（α２の異常項目として、項目α２自身以外の項目が登録されていない。）場合には、収集間隔管理プログラムに通知１６を発行する（１６１１）。これは、項目α２は正常状態にあり、かつ派生性がないので、項目α２に関する派生グループの収集間隔を初期値に回復させるためのものである。通知１６を受付けた収集間隔管理プログラムの動作は、第１の実施例における図９で表されるものと同様であり、収集間隔管理プログラムの指示の通知に対する収集間隔変更プログラムの動作についても第一の実施例における図１５で表されるものと同様である。
【００４３】
１６０９において派生性が有ると判定された場合には、収集間隔変更プログラムに対して通知１７を発行する（１６１０）。通知１７を受付けた収集間隔変更プログラムの動作については、通知１５を受付けた場合について図１７を用いて説明したものと同様である。
【００４４】
１６０３において、“詳細”でないと判定された場合には、収集間隔テーブル（図２）を参照して、α２の収集状態が“一時停止”か否かを判定する（１６０８）。一時停止である場合には、派生性が有るか否かを判定し（１６１２）、ない場合には、収集間隔管理プログラムに対して通知１６を発行する（１６１１）。これも、項目α２に関する派生グループの収集間隔を初期値に回復するためのものである。通知１６を受付けた収集間隔管理プログラムの動作及び収集間隔変更プログラムの動作については前述した通りである。
【００４５】
１６０８において、一時停止でないと判定された場合には、収集状態が“縮退”か否かを判定する（１６１３）。縮退であると判定された場合には、収集間隔変更プログラムに通知１７を発行する。通知１７を受付けた収集間隔変更プログラムの動作についても前述した通りである（１６１４）。ただし、いま、収集状態が縮退なので、収集間隔の変動幅の最大値ＭＡＸと最小値ＭＩＮとして用いる値は、それぞれ、図２の最大値（２６０）及び初期値（２２０）に登録されている値であることは前述した通りである。
【００４６】
本実施例においても、計算機負荷監視プログラムを用いて計算機の負荷に関する項目を監視し、ある項目の値が異常である場合には、詳細収集状態の項目を一時停止状態に変更し、縮退状態又は通常状態の項目の収集間隔を大きくすることが可能である。この場合の計算機負荷監視プログラムの動作については図１５、収集間隔管理プログラムの動作については図１０及び図１１、収集間隔変更プログラムの動作については図１３を用いて、第一の実施例について説明したのと同様である。ただし、図１３の１３０１におけるＹとしては、収集間隔を大きくする対象である項目について図２で定められている“最大値”以下の値を選ぶものとする。
【００４７】
【発明の効果】以上説明したように、本発明によれば、計算機の負荷を抑えながら、計算機で実行されるプログラムの動作状態に関する情報を詳細に収集することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施例における、互いに通信可能に接続された計算機の構成を示す図である。
【図２】本発明の実施例で用いる、収集間隔に関するテーブルを示す図である。
【図３】本発明の実施例で用いる、項目の状態に関するテーブルを示す図である。
【図４】本発明の実施例で用いる、計算機の負荷に関するテーブルを示す図である。
【図５】本発明の実施例で用いる、派生グループに関するテーブルを示す図である。
【図６】本発明の実施例で用いる、異常項目に関するテーブルを示す図である。
【図７】本発明の実施例で用いる、監視項目取得プログラムの動作を示すフローチャートである。
【図８】本発明の実施例で用いる、収集間隔管理プログラムの第１の動作を示すフローチャートである。
【図９】本発明の実施例で用いる、収集間隔管理プログラムの第２の動作を示すフローチャートである。
【図１０】本発明の実施例で用いる、収集間隔管理プログラムの第３の動作を示すフローチャートである。
【図１１】本発明の実施例で用いる、収集間隔管理プログラムの第４の動作を示すフローチャートである。
【図１２】本発明の実施例で用いる、収集間隔変更プログラムの第１の動作を示すフローチャートである。
【図１３】本発明の実施例で用いる、収集間隔変更プログラムの第２の動作を示すフローチャートである。
【図１４】本発明の実施例で用いる、収集間隔変更プログラムの第３の動作を示すフローチャートである。
【図１５】本発明の実施例で用いる、計算機負荷監視プログラムの動作を示すフローチャートである。
【図１６】本発明の実施例で用いる、監視項目取得プログラムの動作を示すフローチャートである。
【図１７】本発明の実施例で用いる、収集間隔変更プログラムの動作を示すフローチャートである。
【図１８】本発明の実施例で用いる、項目の値取得プログラムの動作を示すフローチャートである。
【図１９】本発明の実施例で用いる、収集間隔管理プログラムの動作を示すフローチャートである。
【図２０】本発明の実施例で用いる、各派生グループが詳細収集されている時間に関する情報からなるテーブルである。
【符号の説明】
【図１】
2004178118.tif 000003
【図２】
2004178118.tif 000004
【図３】
2004178118.tif 000005
【図４】
2004178118.tif 000006
【図５】
2004178118.tif 000007
【図６】
2004178118.tif 000008
【図７】
2004178118.tif 000009
【図８】
2004178118.tif 000010
【図９】
2004178118.tif 000011
【図１０】
2004178118.tif 000012
【図１１】
2004178118.tif 000013
【図１２】
2004178118.tif 000014
【図１３】
2004178118.tif 000015
【図１４】
2004178118.tif 000016
【図１５】
2004178118.tif 000017
【図１６】
2004178118.tif 000018
【図１７】
2004178118.tif 000019
【図１８】
2004178118.tif 000020
【図１９】
2004178118.tif 000021
【図２０】
2004178118.tif 000022