(57)【要約】【課題】実業務に関連のあるプロセスのグループ化により、グループ単位で監視を行う性能監視システムにおいて、プロセスをグループ化する場合、手動やテンプレートの利用など、管理者の負担がかかると共に、高度な知識が必要であった。【解決手段】予め与えられた期間内における、監視対象装置上で動作するプロセスの稼働情報、アクセス情報、プロセス間通信の情報を元に、プロセスとファイルの関連度、及びプロセス間の関連性を数値化して、関連度として算出する。その関連度に基づき、関連度の低いプロセスを除いて、監視対象装置内のプロセスを自動的にグループ化する。さらに、監視対象装置をまたがって通信を行っているプロセスについても、関連度に基づき、プロセスをグループ化する。また、監視項目に対する閾値について、稼働情報から自動的に閾値を作成し、監視項目ごとに自動的に設定を行う。【選択図】図３
2009265707.tif 000002
【特許請求の範囲】
【請求項１】
監視対象装置上で動作するプロセスの稼働情報と、各プロセスの、監視対象装置内の各
ファイルに対するアクセス情報から、プロセスとファイルの関連性を数値化して、関連度
として算出する性能監視システム。
【請求項２】
監視対象装置上で動作するプロセスのプロセス間通信の情報から、プロセス間の関連性
を数値化して、関連度として算出する性能監視システム。
【請求項３】
請求項１、２記載のシステムにおいて、監視対象装置内のプロセスとファイルの関連度
と、プロセス間の関連度を算出する場合だけではなく、同一のファイルと関連度のあるプ
ロセス同士や、プロセス間通信の情報から、関連度のあるプロセス同士を自動的にグルー
ピングして、プロセスのグループ単位で稼働監視を行う手段を持つ性能監視システム。
【請求項４】
請求項３記載の性能監視システムにおいて、監視対象装置内のプロセスとファイルの関
連度の有無と、プロセス同士の関連度の有無により、関連度のあるプロセスを自動的にグ
ルーピングする場合だけではなく、プロセスとファイルの関連度と、プロセス同士の関連
度にそれぞれ重みをつけ、その重みによって関連度のフィルタリングを行うことで、グル
ープの再編成を行い、プロセスのグループ単位で稼働監視を行う手段を持つ性能監視シス
テム。
【請求項５】
請求項４記載の性能監視システムにおいて、プロセス間通信の関連度から、監視対象装
置内のプロセスをグループ化する場合だけではなく、監視対象装置をまたがってプロセス
間通信を行っているプロセスも関連性があると見なした上で、監視対象装置をまたがって
グループの再編成を行い、プロセスのグループ単位で稼働監視を行う手段を持つ性能監視
システム。
【請求項６】
請求項５記載の性能監視システムにおいて、自動的にグルーピングしたプロセスを、グ
ループ単位で稼働性能情報を監視する場合だけではなく、プロセスグループの監視項目の
閾値を自動的に設定して監視を行う手段を持つ性能監視システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置などの監視対象装置に性能的問題が発生しているか否かを判定
する性能監視技術に関し、特に、監視対象装置上で動作する関連性のあるプロセス同士を
自動的にグループ化し、グループ単位で収集したプロセスの性能値と閾値を比較すること
により、監視対象装置に性能的問題が発生しているか否かを判定する性能監視技術に関す
る。
【背景技術】
【０００２】
情報処理装置などの監視対象装置に性能的な問題が発生しているか否かを判定する従来
の一般的な性能監視装置は、予め定められている複数の監視項目（CPU使用率、メモリ使
用量、ディスクI/Oなど）の性能値を監視対象装置から収集し、この収集した各性能値と
、各監視項目の能力の限界を示す閾値とを比較することにより、性能的問題が発生してい
るか否かを判定するようにしている。
【０００３】
また、実業務で考える場合、業務は複数のプロセスから成り立っていることが多いため
、個々の監視対象のプロセスに対して、関連性のあるプロセスをグループ化して監視する
ことが望ましい。
【０００４】
このような監視対象の個々のプロセスをグループ化して稼働監視するような技術として
、従来、次のような性能監視装置が提案された（例えば、特許文献１）。
【０００５】
【特許文献１】特開２００４−１９９２５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述した特許文献１に記載されている従来の性能監視装置によれば、管理者が監視対象
の関連があるプロセス同士を１つのグループとして指定することで、プロセスのグループ
単位での稼働監視を実現している。しかし、既知の技術では、プロセスのグループ化を手
動やテンプレートなどを利用する必要があるため、この場合、管理者に設定の負担がかか
ると共に、高度な知識が必要となってくる。
【０００７】
そこで、本発明の目的は、プロセスとファイルの関連性のあるものを自動的にグルーピ
ングすることで、プロセスのグループ化における管理者の設定する負担を軽減できるよう
にすることにある。
【課題を解決するための手段】
【０００８】
本発明にかかる第1の性能監視システムは、監視対象装置から収集したプロセスの稼働
情報と、プロセスのファイルに対するアクセス情報の時系列データから、プロセスとファ
イルの関連性を数値化して、関連度として算出し、保存する手段を備えたことを特徴とす
る。
【０００９】
本発明にかかる第２の性能監視システムは、監視対象装置から収集したプロセス間通信
情報から、プロセス間の関連性を数値化して、関連度として算出し、保存する手段を備え
たことを特徴とする。
【００１０】
本発明にかかる第３の性能監視システムは、第１、第２の性能監視システムにおいて、
関連性のあるプロセスを同じグループと見なして稼働監視を行うため、算出したプロセス
のファイルに対する関連度と、プロセス間の関連度を元に、プロセスを自動的にグループ
化して、プロセスのグループ単位で稼働監視を行う手段を備えたことを特徴とする。
【００１１】
本発明にかかる第４の性能監視システムは、第３の性能監視システムにおいて、プロセ
スのグループ化の場合に、プロセスの関連性の重要度を考慮するため、プロセスのファイ
ルに対する関連度と、プロセス間の関連度にそれぞれ重みをつけて、その重みによってフ
ィルタリングを行うことで、プロセスのグループの再編成を行う手段を備えたことを特徴
とする。
【００１２】
本発明にかかる第５の性能監視システムは、第４の性能監視システムにおいて、プロセ
ス間通信が、監視対象装置にまたがって行われている場合でも、プロセス間の関連度を加
味し、監視対象装置内のプロセスのグループに対して、監視対象装置をまたがったプロセ
スのグループに再編成する手段を備えたことを特徴とする。
【００１３】
本発明にかかる第６の性能監視システムは、第５の性能監視システムにおいて、任意の
期間におけるプロセスグループの稼働性能値を加味し、プロセスのグループ単位で監視項
目ごとの閾値を自動的に設定する手段を備えたことを特徴とする。
【発明の効果】
【００１４】
本発明にかかる第１、第２の性能監視システムによれば、複数存在する監視対象装置の
運用環境がすべて異なる場合で、予め動作しているプロセスや存在するファイルを把握し
ていない場合でも、監視対象装置の運用環境に依らず、プロセスとファイルの関連度から
、任意の期間内にどのプロセスが重要であるか把握することが可能となる。
【００１５】
本発明にかかる第３の性能監視システムによれば、関連度のあるプロセスを自動的にグ
ルーピングすることによって、運用環境に依らず、管理者の手動などによる設定を行うこ
となく、プロセスをグループ単位で稼働監視することができる。
【００１６】
本発明にかかる第４の性能監視システムによれば、プロセスとファイルの関連度や、プ
ロセス間通信によるプロセス間の関連度の重みを使ってフィルタリングを行うことで、関
連度の低いプロセスをグループから除外できる。これにより、より実業務に近いプロセス
のグループ単位で稼働監視を行うことが可能となる。
【００１７】
本発明にかかる第５の性能監視システムによれば、監視対象装置をまたがって関連度を
もつプロセスを１つのプロセスのグループと見なして、稼動性能監視を行うことができる
。これにより、例えば監視対象装置内で関連度のない複数のプロセスが、監視対象装置を
またがって、共通のプロセスと通信を行っている場合に、監視対象装置内では関連度のな
いプロセス同士を、同じグループと見なして稼働監視を行うことが可能となる。
【００１８】
本発明にかかる第６の性能監視システムによれば、作成したプロセスのグループに対し
、閾値を設定して稼働監視を行う場合に、自動的に閾値を設定することができる。これに
よって、管理者がプロセスのグループの閾値を監視項目ごとに設定する必要がなくなり、
管理者の負担を軽減することができる。
【発明を実施するための最良の形態】
【００１９】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【００２０】
図１は本発明にかかる性能監視システムの実施形態の構成例を示すシステム構成図であ
る。本実施例に係わる性能監視サーバー１００は、ネットワーク１０３を介して、複数の
監視対象装置１０２から、CPU使用率や、メモリ使用量や、ディスクI/Oなどの監視項目に
対する性能値を収集して保持する。監視端末１０１は、ネットワーク１０３を介して、性
能監視サーバー１００と接続することにより、性能監視サーバー１００に収集された性能
値の情報を参照することができる。また、性能監視サーバー１００が、収集した性能値に
対して何らかの異常を検知した場合に、監視端末に異常を通知することができる。
【００２１】
図２に監視対象装置１０２の構成を示す。監視対象装置１０２は、メモリと、ＣＰＵと
、ディスクインタフェースを経由して接続された記憶装置と、ネットワーク１０３に接続
する通信インタフェースから構成される。
【００２２】
メモリ上で動作する監視情報収集プログラムは、稼働性能値収集部２００と、アクセス
情報収集部２０１と、プロセス間通信情報収集部２０２と、収集情報管理部２０３を備え
ている。
【００２３】
記憶装置は、稼働性能値記憶部２０４と、アクセス情報記憶部２０５と、プロセス間通
信情報記憶部２０６と、収集情報例外一覧記憶部２０７を備えている。
【００２４】
稼働性能値収集部２００は、監視対象装置１０２上で動作するプロセスの稼働情報を収
集する。例えば、収集間隔が２分である場合、稼働性能値収集部２００が、２分おきに監
視対象装置１０２上で動作するすべてのプロセスに対するCPU利用時間などの稼働情報を
収集し、稼働性能値記憶部２０４に格納する。
【００２５】
アクセス情報収集部２０１は、監視対象装置１０２上で動作するプロセスのファイルに
対するアクセス情報を収集する。例えば、あるプロセスがファイルに書込みなどのアクセ
スを行うと、アクセス情報収集部２０１が、アクセス対象のファイル名やアクセス内容な
どのアクセス情報を収集し、アクセス情報記憶部２０５に格納する。
【００２６】
プロセス間通信情報収集部２０２は、監視対象装置１０２上で動作するすべてのプロセ
スが行っているプロセス間通信の情報を収集する。例えば、プロセスが別ホストのプロセ
スと通信を行っている場合、プロセス間通信情報収集部２０２が、通信をしているホスト
名やプロセスが通信で利用しているポート番号などのプロセス間通信情報を収集して、プ
ロセス間通信情報記憶部２０６に格納する。
【００２７】
収集情報管理部２０３は、稼働性能値記憶部２０４と、アクセス情報記憶部２０５と、
プロセス間通信情報記憶部２０６に格納された情報のうち、収集情報例外一覧記憶部２０
７に格納された情報を除き、指定期間内に存在する情報を、性能監視サーバー１００の性
能監視プログラムに送信する。例えば、ある期間内の稼働性能値を送信するように性能監
視プログラムから要求があった場合、収集情報管理部２０３は、指定された期間内の稼働
性能値を稼働性能値記憶部２０４から取得して、収集情報例外一覧記憶部２０７に格納さ
れたファイル名やプロセス名に当てはまらない稼動性能情報の行を、性能監視プログラム
に送信する。
【００２８】
図３に性能監視サーバー１００の構成を示す。性能監視サーバー１００は、メモリと、
ＣＰＵと、ディスクインタフェースを経由して接続された記憶装置と、ネットワーク１０
３に接続する通信インタフェースから構成される。
【００２９】
メモリ上で動作する性能監視プログラムは、プロセス稼働率情報一覧作成部３００と、
プロセス−ファイル間アクセス内容一覧作成部３０１と、プロセス間通信一覧作成部３０
２と、プロセスグループ作成部３０３と、グループ稼働性能値作成部３０４と、限界閾値
判定部３０５を備えている。
【００３０】
メモリ上の記憶部には、プロセス別稼働情報一覧記憶部３１１を備えている。
【００３１】
記憶装置は、プロセス稼働率情報一覧記憶部３０６と、プロセス‐ファイル間アクセス
内容一覧記憶部３０７と、プロセス間通信一覧報記憶部３０８と、プロセスグループ記憶
部３０９と、限界閾値記憶部３１０を備えている。
【００３２】
プロセス稼働率情報一覧作成部３００は、監視対象装置１０２毎に、ある期間内のプロ
セスの稼働率情報を作成する。例えば、ある期間内のプロセス稼働率情報を作成する場合
、監視対象装置１０２上の収集情報管理部２０３に、ある期間内のプロセスの稼働性能値
を送信するように要求する。プロセス稼働率情報一覧作成部３００は、取得した稼働性能
値から、監視対象装置１０２のプロセス名単位で、プロセス別に稼働情報一覧を作成して
、プロセス別稼働情報一覧記憶部３１１に格納する。そして、作成したプロセス別稼働情
報一覧記憶部３１１に格納した情報を取得して、プロセスの稼働率情報を作成し、プロセ
ス稼働率情報一覧記憶部３０６に格納する。
【００３３】
プロセス‐ファイル間アクセス内容一覧作成部３０１は、監視対象装置１０２毎に、あ
る期間内のプロセス‐ファイル間アクセス内容を作成する。例えば、ある期間内のプロセ
ス‐ファイル間アクセス内容を作成する場合、監視対象装置１０２上の収集情報管理部２
０３に、ある期間内のプロセスのアクセス情報を送信するように要求する。プロセス‐フ
ァイル間アクセス内容一覧作成部３０１は、取得したアクセス情報から、監視対象装置１
０２のプロセスとファイルのアクセス単位で、プロセス‐ファイル間アクセス内容を作成
して、プロセス‐ファイル間アクセス内容一覧記憶部３０７に格納する。
【００３４】
プロセス間通信一覧作成部３０２は、ある期間内のプロセス間通信の一覧を作成する。
例えば、ある期間内のプロセス間通信一覧を作成する場合、監視対象装置１０２上の収集
情報管理部２０３に、ある期間内のプロセス間通信情報を送信するように要求する。プロ
セス間通信一覧作成部３０２は、取得したプロセス間通信情報から、監視対象装置１０２
内のプロセスがどの監視対象装置１０２のプロセスと通信を行っているのかという組合わ
せをプロセス間通信一覧として作成し、プロセス間通信一覧記憶部３０８に格納する。
【００３５】
プロセスグループ一覧生成部３０３は、ある期間内で関連性のあるプロセス同士をグル
ーピングして、プロセスグループを作成する。例えば、ある期間内で動作するプロセスに
対してグループ作成を行う場合、まず、プロセス稼働率情報一覧記憶部３０６と、プロセ
ス−ファイル間アクセス内容一覧記憶部３０７に格納した情報を取得して、プロセスとフ
ァイルの関連性を関連度として算出する。そして、算出した関連度が低いものをフィルタ
リングによって除いて、各ファイルにアクセスしているプロセスに対してグループを作成
する。次に、プロセス間通信一覧記憶部３０８に格納した情報を取得して、同一監視対象
装置１０２内のプロセス間通信を考慮して、作成したグループを更新する。さらに、監視
対象装置１０２をまたがったプロセス間通信を考慮したグループを作成する。プロセスグ
ループ一覧作成部３０３は、作成したグループをプロセスグループ記憶部３０９に格納す
る。
【００３６】
グループ稼働性能値作成部３０４は、プロセスグループ毎の稼働性能値を作成し、限界
閾値判定部３０５に渡す。例えば、あるプロセスグループの稼働性能値を作成する場合、
グループに登録されているプロセスの稼働性能値を、監視対象装置１０２の稼働性能値記
憶部２０４から取得して、それぞれの稼働性能値の総和を算出して作成する。作成したプ
ロセスグループ毎の稼働性能値を限界閾値判定部３０５に渡す。
【００３７】
また、グループ単位に監視項目ごとの限界閾値の自動作成と、限界閾値の自動設定を行
う。自動作成した限界閾値は、限界閾値記憶部３１０に格納する。
【００３８】
限界閾値判定部３０５は、定期的に、グループ稼働性能値作成部３０４から、プロセス
グループ毎の稼動性能値を取得し、プロセスグループ毎の稼働性能値が、グループ毎に設
定した限界閾値を越えていないか判定する。例えば、グループ稼働性能値の監視を行う場
合、限界閾値記憶部３１０に格納したグループの稼働性能値の限界閾値を取得し、作成し
たグループ稼働性能値が限界閾値を超えていないか判定を行う。
【００３９】
図４に稼働性能値記憶部２０４の内容例を示す。稼働性能値記憶部２０４には、監視対
象装置１０２上で動作するすべてのプロセスに対して、ある間隔で収集した稼働性能値が
格納され、収集情報管理部２０３から参照される。稼働情報を格納する場合、収集した時
刻４００と、プロセスID４０１と、プロセス名４０２と、CPU利用時間４０３と、CPU使用
率４０４と、メモリ使用量４０５と、I/Oサイズ４０６を収集間隔毎に格納する。
【００４０】
図５にアクセス情報記憶部２０５の内容例を示す。アクセス情報記憶部２０５には、監
視対象装置１０２上で動作するすべてのプロセスが行うファイルのアクセスの内容が格納
され、収集情報管理部２０３から参照される。アクセス情報を格納する場合、アクセス情
報の取得時間５００と、プロセス名５０１と、ファイル名５０２と、アクセス内容５０３
を格納する。アクセス内容５０３に格納する情報としては、プロセスがファイルに対して
読込みを行った場合、“ＲＥＡＤ”を格納する。プロセスがファイルに対して書込みを行った
場合、“ＷＲＩＴＥ”を格納する。プロセスがファイルを生成した場合、“ＣＲＥＡＴＥ”を格納す
る。プロセスがファイルの削除を行った場合、“ＤＥＬＥＴＥ”を格納する。アクセス内容の格
納は、プロセスのファイルに対するアクセス毎に格納する。
【００４１】
図６にプロセス間通信情報記憶部２０６の内容例を示す。プロセス間通信情報記憶部２
０６には、監視対象装置１０２上で動作するすべてのプロセス間通信の情報が格納され、
収集情報管理部２０３から参照される。プロセス間通信情報を格納する場合、プロセス間
通信情報の取得時間６００と、プロセス名６０１と、ポート番号６０２と、通信対象ホス
ト６０３と、通信対象ポート番号６０４を格納する。
【００４２】
図７にプロセス別稼働情報一覧記憶部３１１の内容例を示す。プロセス別稼働情報一覧
記憶部３１１には、監視対象装置１０２の稼働性能値記憶部２０４から取得したある期間
内の稼働性能情報が、プロセス名別に格納され、プロセス稼働率情報一覧作成部３００か
ら参照される。プロセス別稼働情報一覧を格納する場合、監視対象ホスト７００と、プロ
セス名７０１と、CPU利用時間７０２と、I/Oサイズ７０３と、メモリ使用量７０４を格納
する。CPU利用時間７０２と、I/Oサイズ７０３については、時系列でプロセス別に値が累
積していくため、プロセス別に期間内の最大値をプロセス別稼働情報一覧記憶部３１１に
格納する。メモリ使用量７０４については、プロセス別に期間内の平均値を算出して、プ
ロセス別稼働情報一覧記憶部３１１に格納する。
【００４３】
図８にプロセス稼働率情報記憶部３０６の内容例を示す。プロセス稼働率情報記憶部３
０６には、監視対象装置１０２毎に、各プロセスが持つ稼働性能値の全プロセスの稼働性
能値に対する割合が格納され、プロセスグループ生成部３０３から参照される。プロセス
稼働率情報を格納する場合、監視対象ホスト８００と、プロセス名８０１と、全体に対す
る各プロセスのCPU利用時間の割合８０２と、全体に対する各プロセスのメモリ使用量の
割合８０３と、全体に対する各プロセスのI/Oサイズの割合８０４を格納する。
【００４４】
図９にプロセス−ファイル間アクセス内容一覧記憶部３０７の内容例を示す。プロセス−
ファイル間アクセス内容一覧記憶部３０７には、ある期間内のファイルとプロセスのアク
セス毎にアクセス内容が格納され、プロセスグループ生成部３０３から参照される。アク
セス内容を格納する場合、監視対象ホスト９００と、ファイル名９０１と、プロセス名９
０２と、ファイルへの読込み実行回数９０３と、ファイルへの書込み実行回数９０４と、
ファイルの生成実行回数９０５と、ファイルの削除実行回数９０６を格納する。
【００４５】
図１０にプロセス間通信一覧記憶部３０８の内容例を示す。プロセス間通信一覧記憶部
３０８には、監視対象装置１０２のプロセス間通信情報記憶部２０６から取得したある期
間内のプロセスの通信情報を元に作成した、プロセス間通信を行っていたプロセスの組合
わせの一覧が格納され、プロセスグループ生成部３０３から参照される。プロセスの組合
わせの一覧を格納する場合、ホスト１（通信元ホスト）１０００と、プロセス１（通信元
プロセス）１００１と、ホスト２（通信先ホスト）１００２と、プロセス２（通信先プロ
セス）１００３を格納する。
【００４６】
図１１にプロセスグループ一覧記憶部３０９の内容例を示す。プロセスグループ一覧記
憶部３０９には、監視対象装置１０２内のファイルとプロセスのアクセス毎に、ファイル
とプロセスの関連度やプロセスのグループ名などが格納され、プロセスグループ生成部３
０３と、グループ稼働性能値作成部３０４から参照される。プロセスグループ一覧情報を
格納する場合、監視対象ホスト１１００と、ファイル名１１０１と、プロセス名１１０２
と、ファイルとプロセスの関連性を数値で表した関連度１１０３と、同一監視対象装置内
のプロセスグループ名１１０４と、監視対象装置をまたがったグループ名１１０５を格納
する。
【００４７】
図１２に限界閾値記憶部３１０の内容例を示す。限界閾値記憶部３１０には、作成した
グループの稼働性能値に対して、監視項目毎に閾値が格納され、限界閾値判定部に参照さ
れる。閾値を格納する場合、監視対象ホスト１２００と、グループ名１２０１と、監視項
目１２０２と、上限か下限かを格納する閾値種別１２０３と、閾値１２０４を格納する。
【００４８】
次に、本実施の形態の動作について説明する。
【００４９】
プロセス稼働率情報一覧作成部３００は、予め設定された収集期間に従って、監視対象
装置１０２から稼働性能情報を取得して、プロセス別稼働情報一覧を作成する。プロセス
稼働率情報一覧作成部３００の処理フローを、図１３に示す。プロセス稼働率情報一覧作
成部は、監視対象装置単位でループを実行する（ステップ１３０１、１３０９）。監視対
象装置から稼働性能情報を取得する（ステップ１３０２）と、稼働情報の表からプロセス
名の抽出をループで実行する（ステップ１３０３、１３０８）。そして、抽出したプロセ
ス名を持つプロセスID単位で、CPU利用時間とI/Oサイズの最大値を算出する（ステップ１
３０４）。次にプロセスID単位で算出した最大値を元に、プロセス名単位でCPU利用時間
と、I/Oサイズの最大値の合計を算出する（ステップ１３０５）。次にプロセス名単位で
、メモリ使用量の平均を算出する（ステップ１３０６）。最後に、プロセス別稼働情報一
覧記憶部３０６に、現在ループ中のホスト名とプロセス名、算出したCPU利用時間、I/Oサ
イズの最大値の合計、メモリ使用量の平均をエントリとして追加する（１３０７）。
【００５０】
プロセス稼働率情報一覧作成部３００は、図１３の処理フローによって作成されたプロ
セス別稼働情報一覧記憶部３０６の情報を取得して、プロセス稼働率情報一覧を作成する
。プロセス稼働率情報一覧作成部３００の処理フローを、図１４に示す。プロセス稼働率
情報一覧作成部は、監視対象ホスト名単位で、ループを実行する（ステップ１４０１、１
４０８）。CPU利用時間と、メモリ使用量と、I/Oサイズについて、すべての行の合計値を
それぞれ算出する（ステップ１４０２）。次に、プロセス別稼働情報一覧の検索をプロセ
ス名単位でループを実行する（ステップ１４０３、１４０７）。プロセス別稼働情報一覧
から、監視対象ホスト名とプロセス名が一致する行を検索する（ステップ１４０４）。次
に、全体のCPU利用時間に対するプロセス毎のCPU利用時間の割合と、全体のメモリ使用量
に対するプロセス毎のメモリ使用量の割合と、全体のI/Oサイズに対するプロセス毎のI/O
サイズの割合をそれぞれ算出する（ステップ１４０５）。最後に、算出した値をプロセス
稼働率情報記憶部３０６のエントリとして追加する（ステップ１４０６）。
【００５１】
プロセス−ファイル間アクセス内容一覧作成部３０１は、予め設定された収集期間に従
って、監視対象装置１０２からアクセス情報を収集して、プロセス−ファイル間アクセス
内容一覧を作成する。プロセス−ファイル間アクセス内容一覧作成部３０１の処理フロー
を、図１５に示す。プロセス−ファイル間アクセス内容一覧作成部は、監視対象装置単位
で処理のループを実行する（ステップ１５０１、１５１６）。まず、監視対象装置からア
クセス情報を取得する（ステップ１５０２）。次に、アクセス情報の行ごとにループを実
行する（ステップ１５０３、１５１５）。監視対象ホスト名と、ファイル名が一致する行
が、アクセス内容一覧のテーブルに存在するか判定する（ステップ１５０４）。存在する
場合は、プロセス名がプロセス−ファイル間アクセス内容一覧記憶部３０７のテーブルに
存在するか判定する（ステップ１５０５）。存在する場合は、アクセス内容の判定処理を
行う。監視対象ホスト名とファイル名が一致する行が存在しない場合や、プロセス名が存
在しない場合は、プロセス−ファイル間アクセス内容一覧記憶部のテーブルに１行追加し
て、現在の監視対象ホスト名と、ファイル名と、プロセス名を格納する（ステップ１５１
０）。
【００５２】
次に、アクセス内容の判定処理として、読込み（READ）であるか判定する（ステップ１
５０６）。読込みである場合は、プロセス−ファイル間アクセス内容一覧のREAD回数９０
３に１をカウントアップする（ステップ１５１１）。アクセス内容が読込みではない場合
、アクセス内容が書込み（WRITE）であるか判定する（ステップ１５０７）。書込みであ
る場合は、プロセス−ファイル間アクセス内容一覧のWRITE回数９０４に１をカウントアッ
プする（ステップ１５１２）。アクセス内容が書込みではない場合、アクセス内容がファ
イル生成（CREATE）であるか判定する（ステップ１５０８）。ファイル生成である場合は
、プロセス−ファイル間アクセス内容一覧のCREATE回数９０５に１をカウントアップする
（ステップ１５１３）。アクセス内容がファイル生成ではない場合、アクセス内容がファ
イル削除（DELETE）であるか判定する（ステップ１５０９）。ファイル削除である場合は
、プロセス−ファイル間アクセス内容一覧のDELETE回数９０６に１をカウントアップする
（ステップ１５１４）。
【００５３】
プロセス間通信一覧作成部３０２は、予め設定された収集期間に従って、監視対象装置
１０２からプロセス間通信情報を収集し、プロセス間通信一覧を作成する。プロセス間通
信一覧作成部３０２の処理フローを、図１６に示す。プロセス間通信一覧作成部は、すべ
ての監視対象装置からプロセス間通信情報を取得する（ステップ１６０１）。次に、監視
対象装置分、ループを実行する（ステップ１６０２、１６１０）。さらに、プロセス間通
信情報の行ごとにループを実行する（ステップ１６０３）。次に、通信対象ホストのプロ
セス間通信情報が存在するか判定する（ステップ１６０４）。存在する場合は、通信対象
ホストのプロセス間通信情報に同一時間帯で通信を行っているプロセスが存在するか判定
する（ステップ１６０５）。存在する場合は、通信対象のホスト名と、プロセス名を取得
する（ステップ１６０６）。次に、登録データを作成する（ステップ１６０７）。最後に
、プロセス間通信一覧記憶部３０８に１行追加して、登録データを格納する（ステップ１
０８）。
【００５４】
プロセスグループ生成部３０３は、プロセス稼働率情報一覧記憶部３０６の内容と、プ
ロセス−ファイル間アクセス内容一覧記憶部３０７の内容を取得して、プロセスグループ
を生成する。プロセスグループ生成部３０３の処理フローを、図１７に示す。プロセスグ
ループ生成部は、プロセス−ファイル間アクセス内容一覧の行ごとにループを実行する（
ステップ１７０１、１７０６）。プロセス稼働率情報から、監視対象ホスト名と、プロセ
ス名が一致するエントリを検索する（ステップ１７０２）。次に、検索したプロセス稼働
率情報と、ループ対象のアクセス内容情報から、関連度を算出する（ステップ１７０３）
。そして、登録データを作成し（ステップ１７０４）、プロセスグループ一覧記憶部３０
９に１行追加して、登録データを格納する（ステップ１７０５）。
【００５５】
ループの実行の終了後、算出した関連度から監視対象装置内のグループを作成する（ス
テップ１８００）。次に、プロセス間通信一覧を元に、監視対象装置内のグループを更新
する（ステップ２１００）。最後に、プロセス間通信一覧を元に、監視対象装置をまたが
ったグループ（メタグループ）を作成する（ステップ２２００）。
【００５６】
関連度からプロセスグループを作成する処理（ステップ１８００）の詳細について、処
理フローを、図１８に示す。まず、関連度を使用して、フィルタリングを行う（ステップ
１８０１）。フィルタリングは、関連度の統計情報からあらかじめ算出した境界値を使用
する。例えば、関連度を昇順にソートしてから四分位点を求め、第１四分位点を境界値と
し、この境界値を下回る関連度の行を除外することで、全体に対する下位２５％の関連度
の行をフィルタリングすることができる。
【００５７】
次に、フィルタリング後のプロセスグループ一覧の監視対象ホスト単位でループを実行
する（ステップ１８０２、１８０６）。グループ名を採番し（ステップ１８０３）、プロ
セスグループ一覧の１行ごとにループを実行する（ステップ１８０４、１８０５）。次に
、ファイル名と、グループ名を引数として、ファイルグルーピング処理を呼び出す（ステ
ップ１９００）。グルーピング処理の結果を判定し（ステップ１９０５）、結果が真の場
合は、グループ名を採番する（ステップ１９０６）。
【００５８】
関連度でフィルタリングした後の、ファイルグルーピング処理（ステップ１９００）の
詳細について、処理フローを、図１９に示す。まず、引数として、ファイル名とグループ
名を受け取る（ステップ１９０１）。次に、フラグを偽で初期化する（ステップ１９０２
）。次に、フィルタリング後のプロセスグループ一覧の１行ごとにループを実行する（ス
テップ１９０３、１９０８）。ファイル名が引数と一致し、且つグループ名が未確定であ
るか判定する（ステップ１９０４）。判定結果が真の場合、対象行のグループ名を、引数
のグループ名で更新する（ステップ１９０５）。次に、フラグを真に更新する（ステップ
１９０６）。そして、プロセス名と、グループ名を引数として、プロセスグルーピング処
理を呼び出す（ステップ２０００）。
【００５９】
ループの実行が終了後、ファイルグルーピング処理の戻り値として、フラグの値を設定
する（ステップ１９０７）。
【００６０】
ファイルグルーピング処理（ステップ１９００）で呼び出されるプロセスグルーピング
処理（ステップ２０００）の詳細について、処理フローを、図２０に示す。まず、引数と
してプロセス名と、グループ名を受け取る（ステップ２００１）。次に、フィルタリング
後のプロセスグループ一覧の１行ごとにループを実行する（ステップ２００２、２００５
）。プロセス名が引数と一致し、且つグループが未確定か判定する（ステップ２００３）
。判定結果が真の場合、対象行のグループ名を、引数のグループ名で更新する（ステップ
２００４）。そして、ファイル名と、グループ名を引数として、ファイルグルーピング処
理を呼び出す（ステップ１９００）。
【００６１】
図１９のファイルグルーピング処理１９００と、図２０のプロセスグルーピング処理２
０００は、プロセスグループ一覧のグループ名１１０４が確定するまで、お互いに再帰的
に呼び出しあう。
【００６２】
プロセスグループ生成部３０３は、プロセス間通信一覧記憶部３０８の内容を取得して
、監視対象装置内のプロセスグループを更新する。プロセスグループ生成部３０３の処理
フローを、図２１に示す。プロセスグループ生成部３０３は、プロセス間通信一覧の行単
位でループを実行する（ステップ２１０１、２１０５）。まず、ホスト１（通信元のホス
ト名）１０００と、ホスト２（通信先ホスト名）１００２が一致するか判定する（ステッ
プ２１０２）。一致する場合は、プロセス１（通信元のプロセス名）１００１と、プロセ
ス２（通信先のプロセス名）１００３が異なるグループか判定する（ステップ２１０３）
。異なるグループである場合は、プロセスグループ一覧記憶部３０９でホスト名がホスト
１と一致するすべてのプロセス２のグループ名を、プロセス１のグループ名に更新する（
ステップ２１０４）。
【００６３】
プロセスグループ生成部３０３は、プロセス間通信一覧記憶部３０８の内容を取得して
、監視対象装置にまたがったプロセスグループ（メタグループ）を作成する。プロセスグ
ループ生成部３０３の処理フローを、図２２に示す。プロセスグループ生成部３０３は、
プロセスグループ一覧のすべての行で、グループ名１１０４をメタグループ名１１０５に
コピーする（ステップ２２０１）。次に、プロセス間通信一覧の行単位で、ループを実行
する（ステップ２２０２、２２０６）。そして、ホスト１（通信元のホスト名）１０００
と、ホスト２（通信先ホスト名）１００２が一致するか判定する（ステップ２２０３）。
一致する場合は、プロセス１（通信元のプロセス名）１００１と、プロセス２（通信先の
プロセス名）１００３が異なるメタグループか判定する（ステップ２２０４）。異なるメ
タグループである場合は、プロセスグループ一覧記憶部３０９でホスト名がホスト１と一
致するすべてのプロセス２のメタグループ名を、プロセス１のメタグループ名に更新する
（ステップ２２０５）。
【００６４】
グループ稼働性能値作成部３０４は、グループ単位で監視項目ごとに限界閾値を作成し
、自動的に設定を行う。グループ稼働性能値作成部３０４の処理フローを、図２３に示す
。グループ稼働性能値作成部は、プロセス間通信一覧のグループ単位でループを実行する
（ステップ２３０１、２３０９）。次に、グループに属する監視対象ホストから、稼働情
報を取得する（ステップ２３０２）。時系列ごとにすべてのCPU利用率と、メモリ使用量
を積み上げる（ステップ２３０３）。積み上げた結果の最大値を閾値として、限界閾値記
憶部３１０に追加する（ステップ２３０４）。
【００６５】
ループの実行が終了後、プロセス間通信一覧のメタグループ単位でループを実行する（
ステップ２３０５、２３１０）。メタグループに属する監視対象ホストから、稼働情報を
取得する（ステップ２３０６）。時系列ごとにすべてのメモリ使用量を積み上げる（２３
０７）。最後に、積み上げた結果の最大値を閾値として、限界閾値記憶部３１０に追加す
る（ステップ２３０８）。
【００６６】
プロセスのフィルタリングとグルーピングで使用する関連度の算出処理（ステップ１７
０３）の詳細について、処理フローを、図２４に示す。まず、検索したプロセス稼働率情
報（CPU利用時間全体に対するプロセスのCPU利用時間の割合、メモリ使用量全体に対する
プロセスのメモリ使用量の割合、I/Oサイズ全体に対するプロセスのI/Oサイズの割合）を
取得する（ステップ２４００）。次に、アクセス内容情報（READ回数、WRITE回数、CREAT
E回数、DELETE回数）を取得する（ステップ２４０１）。最後に、取得した情報を元に、
図中の評価式を使って関連度を算出する（ステップ２４０２）。評価式中のA、B、Cは、
稼働率情報の重み係数、D、E、F、Gは、アクセス内容の重み係数を表す。
【００６７】
図２５に収集情報例外一覧記憶部２０７の内容例を示す。収集情報例外一覧記憶部２０
７には、稼働性能値記憶部２０４と、アクセス情報記憶部２０５と、プロセス間通信情報
記憶部２０６に格納された情報のうち、性能監視サーバーへの送信の対象外となるファイ
ル名とプロセス名が格納され、収集情報管理部２０３から参照される。収集情報例外一覧
を格納する場合、対象種別２５００と、例外対象名２５０１を格納する。格納される情報
の例としては、OSのシステムログのファイル名や、常に動作しているOSのプロセス名など
であり、初期状態から情報が格納されているテンプレートとして存在する。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施の形態の構成例を示すシステム構成図である。
【図２】本発明の実施の形態の構成例を示す監視対象装置の構成図である。
【図３】本発明の実施の形態の構成例を示す性能監視サーバーの構成図である。
【図４】稼働性能値記憶部の内容例を示す図である。
【図５】アクセス情報記憶部の内容例を示す図である。
【図６】プロセス間通信情報記憶部の内容例を示す図である。
【図７】プロセス別稼働情報一覧記憶部の内容例を示す図である。
【図８】プロセス稼働率情報記憶部の内容例を示す図である。
【図９】プロセス−ファイル間アクセス内容一覧記憶部の内容例を示す図である。
【図１０】プロセス間通信一覧記憶部の内容例を示す図である。
【図１１】プロセスグループ一覧記憶部の内容例を示す図である。
【図１２】限界閾値記憶部の内容例を示す図である。
【図１３】プロセス稼働率情報一覧作成部のプロセス別稼働情報一覧を作成する処理例を示すフローチャートである。
【図１４】プロセス稼働率情報一覧作成部のプロセス稼働率情報一覧を作成する処理例を示すフローチャートである。
【図１５】プロセス−ファイル間アクセス内容一覧作成部の処理例を示すフローチャートである。
【図１６】プロセス間通信一覧作成部の処理例を示すフローチャートである。
【図１７】プロセスグループ生成部の処理例を示すフローチャートである。
【図１８】プロセスグループ生成部の関連度からグループを作成する処理例を示すフローチャートである。
【図１９】プロセスグループ生成部のファイル名からグルーピングを行う処理例を示すフローチャートである。
【図２０】プロセスグループ生成部のプロセス名からグルーピングを行う処理例を示すフローチャートである。
【図２１】プロセス間通信一覧からグループを更新する処理例を示すフローチャートである。
【図２２】プロセス間通信一覧からメタグループを作成する処理例を示すフローチャートである。
【図２３】グループ稼働性能値作成部の処理例を示すフローチャートである。
【図２４】プロセスグループ生成部の関連度を算出する処理例を示すフローチャートである。
【図２５】収集情報例外一覧記憶部の内容例を示す図である。
【符号の説明】
【００６９】
１００…性能監視サーバー、１０１…監視端末、１０２…監視対象装置、１０３…ネットワーク、２００…稼働性能値収集部、２０１…アクセス情報収集部、２０２…プロセス間通信情報収集部２０３…収集情報管理部、２０４…稼働性能値記憶部、２０５…アクセス情報記憶部、２０６…プロセス間通信情報記憶部、２０７…収集情報例外一覧記憶部、３００…プロセス稼働率情報一覧作成部、３０１…プロセス−ファイル間アクセス内容一覧作成部、３０２…プロセス間通信一覧作成部、３０３…プロセスグループ生成部、３０４…グループ稼働性能値作成部、３０５…限界閾値判定部、３１１…プロセス別稼働情報一覧記憶部、３０６…プロセス稼働率情報一覧記憶部、３０７…プロセス−ファイル間アクセス内容一覧記憶部、３０８…プロセス間通信一覧記憶部、３０９…プロセスグループ記憶部、３１０…限界閾値記憶部、４００…時刻、４０１…プロセスＩＤ、４０２…プロセス名、４０３…ＣＰＵ利用時間、４０４…ＣＰＵ使用率、４０５…メモリ使用量、４０６…Ｉ／Ｏサイズ、５００…取得時間、５０１…プロセス名、５０２…ファイル名、５０３…アクセス内容、６００…取得時間、６０１…プロセス名、６０２…ポート番号、６０３…通信対象ホスト、６０４…通信対象ポート番号、７００…監視対象ホスト、７０１…プロセス名、７０２…ＣＰＵ利用時間、７０３…Ｉ／Ｏサイズ、７０４…メモリ使用量、８００…監視対象ホスト、８０１…プロセス名、８０２…全体に対する各プロセスのＣＰＵ利用時間の割合、８０３…全体に対する各プロセスのメモリ使用量の割合、８０４…全体に対する各プロセスのＩ／Ｏサイズの割合、９００…監視対象ホスト、９０１…ファイル名、９０２…プロセス名、９０３…ファイルへの読込み（ＲＥＡＤ）回数、９０４…ファイルへの書込み（ＷＲＩＴＥ）回数、９０５…ファイルの生成（ＣＲＥＡＴＥ）回数、９０６…ファイルの削除（ＤＥＬＥＴＥ）回数、１０００…プロセス通信元ホスト、１００１…プロセス通信元プロセス、１００２…プロセス通信先ホスト、１００３…プロセス通信先プロセス、１１００…監視対象ホスト、１１０１…ファイル名、１１０２…プロセス名、１１０３…関連度、１１０４…監視対象装置内のグループ名、１１０５…監視対象装置にまたがったグループ名、１２００…監視対象ホスト、１２０１…グループ名、１２０２…監視項目、１２０３…閾値種別、１２０４…閾値、２５００…対象種別、２５０１…例外対象名。
【図１】
2009265707.tif 000003
【図２】
2009265707.tif 000004
【図３】
2009265707.tif 000005
【図４】
2009265707.tif 000006
【図５】
2009265707.tif 000007
【図６】
2009265707.tif 000008
【図７】
2009265707.tif 000009
【図８】
2009265707.tif 000010
【図９】
2009265707.tif 000011
【図１０】
2009265707.tif 000012
【図１１】
2009265707.tif 000013
【図１２】
2009265707.tif 000014
【図１３】
2009265707.tif 000015
【図１４】
2009265707.tif 000016
【図１５】
2009265707.tif 000017
【図１６】
2009265707.tif 000018
【図１７】
2009265707.tif 000019
【図１８】
2009265707.tif 000020
【図１９】
2009265707.tif 000021
【図２０】
2009265707.tif 000022
【図２１】
2009265707.tif 000023
【図２２】
2009265707.tif 000024
【図２３】
2009265707.tif 000025
【図２４】
2009265707.tif 000026
【図２５】
2009265707.tif 000027