(57)【特許請求の範囲】
【請求項１】
アプリケーションを実行してサービスを提供するサーバ装置から収集した、前記アプリケーションの詳細を示す詳細情報を含むアプリケーション情報を記憶する情報記憶部と、
前記サーバ装置から前記アプリケーション情報を収集する情報収集部と、
前記情報収集部によって収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する情報特定部と、
前記情報特定部によって特定されたアプリケーション情報については、前記詳細情報を含む全情報と前記情報記憶部に記憶される前回の契機で収集された詳細情報を含むアプリケーション情報の全情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出する第一比較部と、
前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報については、前記詳細情報を除く情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報のうち前記詳細情報を除く情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出する第二比較部と、
前記第一比較部または第二比較部によって抽出されたアプリケーションに関する情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【請求項２】
アプリケーションが実行されるサーバ装置から、前記アプリケーションの詳細情報を含むアプリケーション情報を収集する情報収集部と、
前記サーバ装置から収集した前記アプリケーション情報を記憶する情報記憶部と、
前記収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する情報特定部と、
前記情報特定部によって特定されたアプリケーション情報に対し、前記アプリケーション情報と、前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出する第一比較部と、
前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報に対し、前記詳細情報を除いた前記アプリケーション情報と、前記契機で収集されたアプリケーション情報のうち前記詳細情報を除いたアプリケーション情報とを比較し、前記契機で収集された前記詳細情報を除いたアプリケーション情報と差異があるアプリケーションに関する情報を抽出する第二比較部と、
前記第一比較部または第二比較部によって抽出されたアプリケーションに関する情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【請求項３】
前記情報収集部によって収集されたアプリケーション情報を所定の条件に基づいて文字列に変換する文字列変換部をさらに有し、
前記第二比較部は、前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報に対し、前記文字列変換部によって文字列に変換された情報と、前記契機で収集されたアプリケーション情報を所定の条件に基づいて文字列に変換した情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出することを特徴とする請求項２に記載のデータ収集装置。
【請求項４】
前記アプリケーション情報が更新された回数を示す更新頻度を記憶する頻度記憶部と、
前記情報収集部によって収集されたアプリケーション情報を、前記頻度記憶部に記憶される更新頻度が多い順に並び替える並び替え部と、をさらに有し、
前記第二比較部は、前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報に対し、前記並び替え部によって並び替えられた更新頻度が多い順に、前記詳細情報を除いた前記アプリケーション情報と、前記契機で収集されたアプリケーション情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出することを特徴とする請求項２に記載のデータ収集装置。
【請求項５】
前記第二比較部は、前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報に対し、前記詳細情報を除いた前記アプリケーション情報のうち予め指定された情報と、前記契機で収集されたアプリケーション情報における前記予め指定された情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出することを特徴とする請求項２に記載のデータ収集装置。
【請求項６】
データ収集装置が、
アプリケーションが実行されるサーバ装置から、前記アプリケーションの詳細情報を含むアプリケーション情報を収集し、
収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定し、
特定されたアプリケーション情報に対し、前記アプリケーション情報と、記憶部に記憶される前回の契機で収集されたアプリケーション情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーションに関する情報を抽出し、
特定されたアプリケーション情報以外のアプリケーション情報に対し、前記詳細情報を除いた前記アプリケーション情報と、前記契機で収集されたアプリケーション情報のうち前記詳細情報を除いたアプリケーション情報とを比較し、前記契機で収集された前記詳細情報を除いたアプリケーション情報と差異があるアプリケーションに関する情報を抽出し、
抽出された各アプリケーションに関する情報を、前記アプリケーション情報を管理するデータ管理装置に送信する、
処理を含んだことを特徴とするデータ収集方法。
【請求項７】
データ収集装置に、
アプリケーションが実行されるサーバ装置から、前記アプリケーションの詳細情報を含むアプリケーション情報を収集し、
収集したアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定し、
特定したアプリケーション情報に対し、前記アプリケーション情報と、記憶部に記憶される前回の契機で収集されたアプリケーション情報とを比較し、前記契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出し、
特定したアプリケーション情報以外のアプリケーション情報に対し、前記詳細情報を除いた前記アプリケーション情報と、前記契機で収集されたアプリケーション情報のうち前記詳細情報を除いたアプリケーション情報とを比較し、前記契機で収集された前記詳細情報を除いたアプリケーション情報と差異があるアプリケーションに関する情報を抽出し、
抽出した各アプリケーションに関する情報を、前記アプリケーション情報を管理するデータ管理装置に送信する、
処理を実行させることを特徴とするデータ収集プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ収集装置に関する。
【背景技術】
【０００２】
従来、高速な通信技術や通信回線が普及するにつれて、例えば、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバ、ストレージ等を連携させてクライアントに各種ＩＴ（Information  Technology）サービスを提供するＩＴシステムが普及している。また、このようなＩＴシステムでは、障害の早期検出、各サーバが実行するアプリケーションの管理等を行うために、各サーバからアプリケーション情報を収集するデータ収集装置も利用されている。
【０００３】
ここで、データ収集装置を含むＩＴシステムについて具体的に説明する。具体的には、ＩＴシステムは、図２４に示すように、監視対象サーバ群とデータ収集装置とデータ管理装置とを有する。監視対象サーバ群は、クライアントに対してＩＴサービスを提供するサーバ装置各々であり、例えば、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバ、ストレージなどである。
【０００４】
データ収集装置は、アプリケーション情報として、例えばアプリケーションを構成するプロセスやアプリケーション上で動作しているデプロイドアプリケーションなどを、監視対象サーバの各サーバから収集する。そして、データ収集装置は、収集したインスタンス情報をデータ管理装置に送信する。データ管理装置は、構成管理データベース（Configuration  Management  Database）を有するサーバ装置であり、データ収集装置から受信したインスタンス情報を一元的に記憶し、各アプリケーション情報を関連付けて管理することもできる。
【０００５】
上述したＩＴシステムでは、データ収集装置によって、例えば１分間間隔など定期的にアプリケーション情報が監視対象サーバから収集されてデータ管理装置に格納される。管理者等は、データ管理装置に格納されたアプリケーション情報を分析することで障害を検出したり、追加や削除されたアプリケーション情報やアプリケーションを管理したりすることができる。
【０００６】
ところが、監視対象サーバの台数が多い大規模ＩＴシステムの場合、データ収集装置がアプリケーション情報を収集して、データ管理装置に格納するまでに時間がかかる。また、よりリアルタイムにアプリケーション情報を収集するために収集間隔を短くすると、次の収集タイミングまでに、アプリケーション情報を収集して格納するまでのデータ収集処理を終了させることができず、処理に遅延が発生する。
【０００７】
そこで、最近では、収集したアプリケーション情報と前回収集したアプリケーション情報とを比較し、差分があるアプリケーション情報だけをデータ管理装置に格納することで、データ収集処理時間を短縮することができるデータ収集装置が利用されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０２−２７７１１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した従来の技術では、監視対象サーバの台数が多い大規模ＩＴシステムの場合、アプリケーション情報の比較処理が高負荷になる。その結果として、アプリケーション情報を収集して格納するまでのデータ収集処理に遅延が発生するという課題があった。
【００１０】
開示の技術は、上記に鑑みてなされたものであって、データ収集処理におけるアプリケーション情報の比較処理を高速に実行し、処理遅延の発生を防止することが可能であるデータ収集装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願の開示するデータ収集装置は、一つの態様において、アプリケーションを実行してサービスを提供するサーバ装置から収集した、前記アプリケーションの詳細を示す詳細情報を含むアプリケーション情報を記憶する情報記憶部と、前記サーバ装置から前記アプリケーション情報を収集する情報収集部と、前記情報収集部によって収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する情報特定部と、前記情報特定部によって特定されたアプリケーション情報については、前記詳細情報を含む全情報と前記情報記憶部に記憶される前回の契機で収集された詳細情報を含むアプリケーション情報の全情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する第一比較部と、前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報については、前記詳細情報を除く情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報のうち前記詳細情報を除く情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるとアプリケーション情報を抽出する第二比較部と、前記第一比較部または第二比較部によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、を有する。
【発明の効果】
【００１２】
本願の開示するデータ収集装置の一つの態様によれば、データ収集処理におけるアプリケーション情報の比較処理を高速に実行し、処理遅延の発生を防止することが可能であるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、本願が開示するデータ収集装置を含むシステムの全体構成を示す図である。
【図２】図２は、実施例２に係るデータ管理装置の構成を示すブロック図である。
【図３】図３は、アプリケーション情報ＤＢに記憶される情報の例である。
【図４】図４は、構成情報ＤＢに記憶される業務Ａの構成情報例を示す図である。
【図５】図５は、構成情報ＤＢに記憶される業務Ｂの構成情報例を示す図である。
【図６】図６は、構成情報ＤＢに記憶される業務Ｃの構成情報例を示す図である。
【図７】図７は、アプリケーションの連携を説明する図である。
【図８】図８は、実施例２に係るデータ収集装置の構成を示すブロック図である。
【図９】図９は、インスタンス情報ＤＢに記憶される情報の例を示す図である。
【図１０】図１０は、業務アプリＤＢに記憶される情報の例を示す図である。
【図１１】図１１は、更新頻度ＤＢに記憶される情報の例を示す図である。
【図１２】図１２は、収集されたインスタンス情報の例を示す図である。
【図１３】図１３は、異常が発生しているインスタンス情報を特定する例を説明する図である。
【図１４】図１４は、前処理としての並び替え処理を説明する図である。
【図１５】図１５は、前処理としてのインスタンス情報削除処理を行った例を説明する図である。
【図１６】図１６は、比較順序を決定した例を示す図である。
【図１７】図１７は、今回収集されたインスタンス情報を文字列化した例を示す図である。
【図１８】図１８は、前回収集されたインスタンス情報を文字列化した例を示す図である。
【図１９】図１９は、実施例２に係るデータ収集装置における全体的な処理の流れを示すフローチャートである。
【図２０】図２０は、実施例２に係るデータ収集装置における詳細な処理の流れを示すフローチャートである。
【図２１】図２１は、実施例２に係るデータ収集装置における詳細な処理の流れを示すフローチャートである。
【図２２】図２２は、実施例２に係るデータ収集装置における詳細な処理の流れを示すフローチャートである。
【図２３】図２３は、データ収集プログラムを実行するコンピュータシステム１００を示す図である。
【図２４】図２４は、従来技術を説明する図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示するデータ収集装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１５】
図１は、本願が開示するデータ収集装置を含むシステムの全体構成を示す図である。図１に示すように、このシステムは、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバなどの各種サーバと、データ管理装置１と、データ収集装置５とを有する。
【００１６】
Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバなどの各種サーバは、それぞれが実行するアプリケーションを連携させて、クライアント装置に各種ＩＴ（Information  Technology）サービスを提供するサーバ群である。ここでは、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバを例示したが、これに限定されるものではない。
【００１７】
ここで例示したＷｅｂサーバは、ＷＷＷ（World  Wide  Web）による情報送受信機能を有する装置である。具体的には、Ｗｅｂサーバは、ＨＴＭＬ（HyperText  Markup  Language）文書や画像などを保持し、クライアント装置からのＷｅｂブラウザによるＨＴＴＰ（Hypertext  Transfer  Protocol）要求などの要求を受信した場合、当該要求に応じた情報を提供する。
【００１８】
また、アプリケーションサーバは、プログラムの実行環境やデータベースへの接続機能、トランザクション管理などの様々な機能を有し、クライアント装置からの要求に応答する装置である。具体的には、アプリケーションサーバは、クライアント装置からのＨＴＴＰ要求を処理するＷｅｂサーバからバックエンドのデータベースサーバへの橋渡しを行い、データの加工処理などを実行する。
【００１９】
また、データベースサーバは、例えばリレーショナルデータベースマネジメントシステム（Relational  Database  Management  System：ＲＤＢＭＳ）によって構築されたデータベースを保持する。例えば、データベースサーバは、クライアント装置からのデータ検索要求やデータ更新要求に応じて、データベースに対して処理を実行し、その結果を応答する。
【００２０】
データ管理装置１は、ＩＴサービスを提供するシステムを構成する全ての構成アイテムの情報を一元的に管理する構成管理データベース（ＣＭＤＢ：Configuration  Management  Database）１ａを有し、各種サーバで実行されるアプリケーションの情報を記憶する。
【００２１】
データ収集装置５は、各種サーバからアプリケーション情報を収集してデータ管理装置に送信する装置であり、情報ＤＢ５ａと、情報収集部５ｂと、情報特定部５ｃと、第一比較部５ｄと、第二比較部５ｅと、情報送信部５ｆとを有する。
【００２２】
情報ＤＢ５ａは、アプリケーションを実行してサービスを提供するサーバ装置から収集した、アプリケーションの詳細を示す詳細情報を含むアプリケーション情報を記憶する。例えば、情報ＤＢ５ａは、詳細情報として「starttime」や「参照先ＵＲＬ（Uniform  Resource  Locator）」、詳細情報以外の情報として「プロセス名、ＩＤ、status」を含むアプリケーション情報を記憶する。なお、ここで示した情報はあくまで例示であり、これに限定されるものではない。
【００２３】
情報収集部５ｂは、サーバ装置からアプリケーション情報を収集する。例えば、情報収集部５ｂは、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバなどクライアント装置に各種ＩＴを提供するサーバ各々から、アプリケーション情報を収集する。そして、情報収集部５ｂは、収集したアプリケーション情報を情報特定部５ｃに出力するとともに、情報ＤＢ５ａに格納する。
【００２４】
情報特定部５ｃは、情報収集部５ｂによって収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する。このような情報特定部５ｃは、例えば、管理者等から入力された障害情報や監視ツール等によって取得された障害情報と、データ管理装置１が保持するアプリケーションの構成情報との情報に基づいて、異常が発生したアプリケーション情報を特定する。さらに、情報特定部５ｃは、異常の影響を受けるアプリケーション情報を特定する。そして、情報特定部５ｃは、特定した異常が発生したアプリケーション情報と、異常の影響を受けるアプリケーション情報とを第一比較部５ｄに送信する。なお、このとき、情報特定部５ｃは、特定しなかったアプリケーション情報、言い換えると、異常とは関係ないアプリケーション情報については、第二比較部５ｅに送信する。
【００２５】
第一比較部５ｄは、情報特定部５ｃによって特定されたアプリケーション情報については、詳細情報を含む全情報と情報ＤＢ５ａに記憶される前回の契機で収集された詳細情報を含むアプリケーション情報の全情報とを比較する。そして、第一比較部５ｄは、比較した結果、差異が生じているアプリケーション情報を抽出し、抽出したアプリケーション情報を情報送信部５ｆに送信する。
【００２６】
第二比較部５ｅは、情報特定部５ｃによって特定されたアプリケーション情報以外のアプリケーション情報については、詳細情報を除く情報と情報ＤＢ５ａに記憶される前回の契機で収集されたアプリケーション情報のうち詳細情報を除く情報とを比較する。そして、第二比較部５ｅは、比較した結果、差異が生じているアプリケーション情報を抽出し、抽出したアプリケーション情報を情報送信部５ｆに送信する。
【００２７】
情報送信部５ｆは、第一比較部５ｄまたは第二比較部５ｅによって検出されたアプリケーション情報をデータ管理装置１に送信する。つまり、情報送信部５ｆは、第一比較部５ｄまたは第二比較部５ｅから受信した、前回収集されたアプリケーションと差異があるアプリケーション情報をデータ管理装置１に送信する。
【００２８】
このように、実施例１に係るシステムのデータ収集装置５は、アプリケーション情報を収集した場合に、詳細情報まで比較する必要のある情報と、詳細情報まで比較する必要のない情報とを特定する。そして、データ収集装置５は、詳細情報を含めた比較処理と詳細情報を含めない比較処理の２つの比較処理を各々実行して、収集したアプリケーション情報のうち、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を検出する。したがって、データ収集装置５は、収集したアプリケーション全部について、詳細情報までを比較する場合に比べて、比較処理を高速化することができる。その結果、データ収集処理におけるアプリケーション情報の比較処理を高速に実行し、処理遅延の発生を防止することが可能である。
【実施例２】
【００２９】
ところで、実施例１で説明したシステムにおける各装置は、実施例１で説明した処理部以外の様々な処理部を有していてもよい。そこで、実施例２では、実施例１で説明したデータ管理装置とデータ収集装置の各々について、他の様々な処理部を有する構成について説明する。なお、実施例２では、アプリケーション情報としてインスタンス情報を用いた例について説明する。インスタンス情報とは、例えば、Ｗｅｂサーバ等のアプリケーション情報収集先のサーバで実際に動作しているアプリケーションを構成するプロセスや、アプリケーション上で動作しているデプロイドアプリケーションの情報を含む情報である。
【００３０】
［データ管理装置の構成］
まず、図２を用いて、実施例２に係るデータ管理装置の構成について説明する。図２は、実施例２に係るデータ管理装置の構成を示すブロック図である。図２に示すように、データ管理装置１０は、通信制御Ｉ／Ｆ部１１と、入力部１２と、表示部１３と、記憶部１５と、制御部２０とを有する。
【００３１】
通信制御Ｉ／Ｆ部１１は、少なくとも１つの通信ポートを有するインタフェースであり、他の装置と間でやり取りされる情報を制御する。例えば、通信制御Ｉ／Ｆ部１１は、データ収集装置５０からインスタンス情報を受信し、また、図示しない管理装置からの要求に応じて、記憶部１５等に記憶する各種情報を管理装置に出力する。
【００３２】
入力部１２は、例えば、キーボードやマウス、マイクなどであり、インスタンス情報の送信指示、送信先などの情報の入力を受付け、後述する制御部２０等に入力する。なお、後述する表示部１３も、マウスと協働してポインティングディバイス機能を実現する。
【００３３】
表示部１３は、例えば、モニタ、ディスプレイ、タッチパネルやスピーカなどであり、記憶部１５等に記憶されるアプリケーション情報や構成情報、データ収集装置５０から受信したインスタンス情報等を表示出力する。
【００３４】
記憶部１５は、制御部２０による各種処理に必要なデータおよびプログラムを格納するとともに、アプリケーション情報ＤＢ１６と、構成情報ＤＢ１７とを有する半導体メモリ素子、または、ハードディスクなどの記憶装置である。
【００３５】
アプリケーション情報ＤＢ１６は、各サーバ上のアプリケーションに対応付けて、データ収集装置５０から収集されたインスタンス情報を記憶する。例えば、アプリケーション情報ＤＢ１６は、図３に示すように、「アプリケーション名、インスタンス情報、更新日時」として「Ｗｅｂ１、ＩＤ・status・・・、2009/08/07」を記憶する。なお、図３は、アプリケーション情報ＤＢに記憶される情報の例である。
【００３６】
ここで記憶される「アプリケーション名」とは、各種サーバ上で実行されているアプリケーションの名称であり、例えば、後述する図４〜図６のアプリケーションに対応する。また、「インスタンス情報」とは、アプリケーション情報の収集先のサーバで実際に動作しているアプリケーションを構成するプロセスや、そのアプリケーション上で動作しているデプロイドアプリケーションの情報を含む情報である。また、「更新日時」とは、データ収集装置５０から受信したインスタンス情報によって、「インスタンス情報」が更新された日時を示す情報である。また、ここで示した情報は例示であり、これに限定されるものではない。
【００３７】
構成情報ＤＢ１７は、各サーバで実行されている業務アプリケーションがどのようなアプリケーションから構成されて、どのように連携されているかを示す構成情報を記憶する。例えば、構成情報ＤＢ１７は、図４に示すように、「業務アプリケーション、アプリケーション」として「業務Ａ、Ｗｅｂ１、Ａｐｐｌ１、ＤＢ１」などを記憶する。また、構成情報ＤＢ１７は、図５に示すように、「業務アプリケーション、アプリケーション」として「業務Ｂ、Ｗｅｂ２、Ａｐｐｌ１、ＤＢ２」などを記憶する。また、構成情報ＤＢ１７は、図６に示すように、「業務アプリケーション、アプリケーション」として「業務Ｃ、Ｗｅｂ２、Ａｐｐｌ３、ＤＢ２」などを記憶する。なお、図４は、構成情報ＤＢに記憶される業務Ａの構成情報例を示す図であり、図５は、構成情報ＤＢに記憶される業務Ｂの構成情報例を示す図であり、図６は、構成情報ＤＢに記憶される業務Ｃの構成情報例を示す図である。
【００３８】
ここで記憶される「業務アプリケーション」とは、各サーバ上で実行されているアプリケーションが連携することによって、クライアント装置に提供するサービスを示している。また、「アプリケーション」とは、「業務アプリケーション」を構成するアプリケーションを示しており、図３のアプリケーション名に対応する。上述した図４の例では、アプリケーション「Ｗｅｂ１、Ａｐｐｌ１、ＤＢ１」が連携することで業務アプリケーション「業務Ａ」をクライアント装置に提供していることを示している。
【００３９】
図７を用いて、より具体的に説明する。図７は、アプリケーションの連携を説明する図である。図７に示すように、クライアント装置は、ユーザの指示操作によって、Ｗｅｂサーバで実行されるアプリケーションであるＷｅｂ１が提供するＵＲＬ（http://m1/Appl1/webappl1）にアクセスする。この要求を受け付けたＷｅｂ１は、連携先となるアプリケーションサーバで実行されるアプリケーションＡｐｐｌ１に対して、受信したアクセスを送信する。そして、Ａｐｐｌ１は、例えば、「productレコードからproduct.nameがnameであるproductレコードのproduct  idを取得する」ことを示すＳＱＬである「SELECT  product.id  FROM  product  WHERE  product.name=’name’」をＤＢ１に実行する。また、Ａｐｐｌ１は、例えば、「orderレコードに対して（productid、count）＝（1234、1）を挿入する」ことを示すＳＱＬである「INSERT  INTO  order  （productid、count）  VALUES  （1234、1）」をＤＢ１に実行する。その後、Ａｐｐｌ１は、ＳＱＬ各々の実行結果をＷｅｂ１に送信し、Ｗｅｂ１は、Ａｐｐl１から受信した実行結果を応答としてクライアント装置に送信する。このように、アプリケーションＷｅｂ１、Ａｐｐｌ１、ＤＢ１が連携することで、クライアント装置に対して業務アプリケーションを提供することができる。
【００４０】
制御部２０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。この制御部２０は、ＯＳ（Operating  System）などの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。さらに、制御部２０は、情報受信部２１と、情報格納部２２と、構成情報提供部２３とを有し、これらによって各種処理を実行する。
【００４１】
情報受信部２１は、データ収集装置５０からインスタンス情報を受信する。例えば、情報受信部２１は、各サーバで実行されているアプリケーションのインスタンス情報のうち、更新や削除等変更があったインスタンス情報をデータ収集装置５０から受信して、後述する情報格納部２２に出力する。
【００４２】
情報格納部２２は、情報受信部２１によって受信されたインスタンス情報をアプリケーション情報ＤＢ１６に格納する。例えば、情報格納部２２は、情報受信部２１によって受信されたインスタンス情報で、アプリケーション情報ＤＢ１６に記憶されるインスタンス情報を更新する。そして、情報格納部２２は、インスタンス情報を更新した場合には、更新したインスタンス情報に対応する「更新日時」に更新した日時を格納する。
【００４３】
構成情報提供部２３は、データ収集装置５０から構成情報の取得要求を受信した場合に、データ収集装置５０に対して構成情報を送信する。例えば、構成情報提供部２３は、データ収集装置５０から構成情報の取得要求を受信した場合に、当該要求に含まれるアプリケーション名やＩＤなどの情報からアプリケーションを特定する。そして、構成情報提供部２３は、特定したアプリケーションが含まれる構成情報を構成情報ＤＢ１７から取得して、要求元のデータ収集装置５０に対して送信する。
【００４４】
［データ収集装置の構成］
次に、図８を用いて、実施例２に係るデータ収集装置の構成について説明する。図８は、実施例２に係るデータ収集装置の構成を示すブロック図である。図８に示すように、データ収集装置５０は、通信制御Ｉ／Ｆ部５１と、入力部５２と、表示部５３と、記憶部５５と、制御部６０とを有する。
【００４５】
通信制御Ｉ／Ｆ部５１は、少なくとも１つの通信ポートを有するインタフェースであり、他の装置と間でやり取りされる情報を制御する。例えば、通信制御Ｉ／Ｆ部５１は、各サーバからインスタンス情報を受信し、データ管理装置１０に対してインスタンス情報を送信する。
【００４６】
入力部５２は、例えば、キーボードやマウス、マイクなどであり、インスタンス情報の収集開始指示、収集終了指示などの情報の入力を受付け、後述する制御部６０等に入力する。なお、後述する表示部５３も、マウスと協働してポインティングディバイス機能を実現する。
【００４７】
表示部５３は、例えば、モニタ、ディスプレイ、タッチパネルやスピーカなどであり、記憶部５５等に記憶されるインスタンス情報や、制御部６０等によって収集されたインスタンス情報、制御部６０によって比較処理された結果等を表示出力する。また、表示部５３は、制御部６０によって収集されたインスタンス情報や記憶部５５に記憶されるインスタンス情報を表示することもできる。
【００４８】
記憶部５５は、例えば、制御部６０による各種処理に必要なデータおよびプログラムを格納するとともに、インスタンス情報ＤＢ５６と、業務アプリＤＢ５７と、更新頻度ＤＢ５８とを有するハードディスクなどの記憶装置である。
【００４９】
インスタンス情報ＤＢ５６は、後述する制御部６０の情報収集部６１によって、各サーバから収集されたインスタンス情報を記憶する。例えば、インスタンス情報ＤＢ５６は、図９に示すように、「Id、status」を有する「Composing  Process」と、「Id、name、type、status、詳細情報」を有する「Discovered  Element」とを有するインスタンスを記憶する。また、インスタンス情報ＤＢ５６は、前回収集されたインスタンス情報のみを記憶してもよく、予め指定された期間分の情報を記憶してもよい。なお、図９は、インスタンス情報ＤＢに記憶される情報の例を示す図である。
【００５０】
ここで記憶される「Composing  Process」とは、サーバのＯＳ上で実行されるプロセスのインスタンス情報を示しており、更新頻度が比較的少ないインスタンス情報である。また、「Discovered  Element」は、サーバのソフトウエアやミドルウエアなど実行されるデプロイドアプリケーションのインスタンス情報を示しており、更新頻度が比較的多いインスタンス情報である。そして、「Composing  Process」や「Discovered  Element」に含まれる「Id」とは、プロセスやデプロイドアプリケーションを一意に識別する識別子である。また、「status」とは、プロセスやデプロイドアプリケーションの状態を示す情報であり、例えば、プロセスやデプロイドアプリケーションが正常である場合は「active」となり、プロセスやデプロイドアプリケーションが異常である場合は「inactive」となる。
【００５１】
さらに、図９に示すように、インスタンス情報は階層構造を有している。したがって、矢印の出力元と矢印の出力先とは、いわゆる親と子の関係となっている。具体的に説明すると、図９に示したインスタンス情報は、「Instance」を最上位の親とする階層構造になっており、子として２つの「Discovered  Element」と３つの「Composing  Process」を有している。そして、２つの「Discovered  Element」各々は、子としてさらに２つの「Discovered  Element」を有している。
【００５２】
このような「Discovered  Element」に含まれる「name」とは、デプロイドアプリケーションの名称を示しており、「type」とは、Application  Serverなど収集先のサーバ種別やjava  container、webmodule、workunitなどのデプロイドアプリケーションの種別を示している。さらに、「詳細情報」とは、デプロイドアプリケーションが開始された時間を示す「starttime」、要求を受けてから応答するまでのレスポンス時間を示す「resptime」、アクセスを受け付けた場合に参照するＵＲＬを示す「weburl」などの情報である。なお、ここで示した詳細情報は例示であり、これに限定されるものではなく、実行されているアプリケーションによって変わるアプリケーション特有の情報を記憶してもよい。
【００５３】
業務アプリＤＢ５７は、サーバによって提供される業務アプリケーションの状態を記憶する。例えば、業務アプリＤＢ５７は、図１０に示すように、「業務アプリケーション、ステータス、平均応答時間、応答時間閾値」として「業務Ａ、Down、0.3、0.5」、「業務Ｂ、Active、0.2、0.5」、「業務Ｃ、Active、0.2、0.5」などと記憶する。また、ここで記憶される情報は、管理者等によって入力されてもよく、ＩＴシステム等で一般的に利用されているアプリケーションや業務を監視する監視ツール等から取得するようにしてもよい。なお、図１０は、業務アプリＤＢに記憶される情報の例を示す図である。
【００５４】
ここで記憶される「業務アプリケーション」とは、クライアント装置に提供する業務アプリケーションの名称を示している。「ステータス」とは、業務アプリケーションの状態を示す情報である。例えば、業務アプリケーションが正常状態である場合は「Active」となり、業務アプリケーションが異常による停止状態である場合は「Down」となり、業務アプリケーションが意図的に停止された状態である場合は「Inactive」となる。「平均応答時間」とは、クライアント装置から要求を受けて応答するまでに要した時間の平均値であり、「応答時間閾値」とは、平均応答時間が異常であるか否かを判定するための閾値であり、ユーザによって任意に設定できる値である。上述した例の場合、「業務Ａ」の「ステータス」が「Down」であることにより、「業務Ａ」が異常状態と判断される。
【００５５】
更新頻度ＤＢ５８は、アプリケーション情報が過去に更新された回数を示す更新頻度を記憶する。例えば、更新頻度ＤＢ５８は、図１１に示すように、「インスタンス、Id、変更カウンタ」として「INS_m1_10000、DE_m1_10003、3」や「INS_m1_10000、DE_m1_10000、2」などと記憶する。なお、図１１は、更新頻度ＤＢに記憶される情報の例を示す図である。
【００５６】
ここで記憶される「インスタンス」とは、階層構造を有するインスタンス情報のうち、最上位のインスタンス情報を示しており、例えば、図９では、一番上の「Instance」の「Id」である。また、「Id」とは、最上位の「Instance」の子となっているインスタンスを示す情報であり、例えば、図９では、「Discovered  Element」の「Id」や「Composing  Process」の「Id」が該当する。「変更カウンタ」は、更新された回数を示している。
【００５７】
制御部６０は、例えば、ＯＳなどの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するＣＰＵやＭＰＵなどの電子回路である。さらに、制御部６０は、情報収集部６１と、情報特定部６２と、第一比較部６３と、前処理部６４と、頻度優先部６５と、文字列変換部６６と、第二比較部６７と、情報送信部６８とを有し、これらによって各種処理を実行する。
【００５８】
情報収集部６１は、アプリケーションを実行して業務アプリケーションをクライアントに提供するサーバ各々からインスタンス情報を収集する。具体的には、情報収集部６１は、管理者等によって指定された収集契機に到達すると、サーバ各々に対してアクセスし、サーバ上で実行されているアプリケーションのインスタンス情報を収集する。そして、情報収集部６１は、収集したインスタンス情報を情報特定部６２又は前処理部６４に出力するとともに、インスタンス情報ＤＢ５６に格納する。なお、収集する契機としては、例えば、入力部５２で収集開始指示が受け付けられた場合、１時間ごとなど予め指定された時間に到達した場合など、任意に設定することができる。
【００５９】
例えば、情報収集部６１は、図１２に示すような「Id＝INS_m2_10000、name＝Appl2、type＝Application  Server、status＝active」を最上位インスタンスとするインスタンス情報をアプリケーションサーバから収集する。図１２に示したインスタンス情報は、上記インスタンスの子として、２つの「Discovered  Element」と３つの「Composing  Process」を有し、さらに、２つの「Discovered  Element」各々は、２つの「Discovered  Element」を有している。図１２は、収集されたインスタンス情報の例を示す図である。
【００６０】
ここで例示した３つの「ComposingProcess」は、それぞれ「Id＝PROC_m2_1000、1000、status＝active」、「Id＝PROC_m2_1001、1001、status＝active」、「Id＝PROC_m2_1002、1002、status＝active」である。また、２つの「Discovered  Element」は、「Id＝DE_m2_10000、name＝java1、type＝java  container、status＝inactive、詳細情報（starttime＝3437424000」と、「Id＝DE_m2_10003、name＝wuc1、type＝workunit  container、status＝active、詳細情報（starttime＝3437424000）」である。
【００６１】
そして、インスタンス「Id＝DE_m2_10000」の子となる一つのインスタンスは、「Id＝DE_m2_10001、name＝webappl1、type＝webmodule、status＝inactive、詳細情報（weburl＝/webappl1、resptime＝0.0490」で示される「Discovered  Element」である。もう一つのインスタンスは、「Id＝DE_m2_10002、name＝webappl2、type＝webmodule、status＝inactive、詳細情報（weburl＝/webappl2、resptime＝0.052」で示される「Discovered  Element」である。
【００６２】
また、インスタンス「Id＝DE_m2_10003」の子となる一つのインスタンスは、「Id＝DE_m2_10004、name＝wuc1、type＝workunit、status＝active、詳細情報（resptime＝0.062）」で示される「Discovered  Element」である。もう一つのインスタンスは、「Id＝DE_m2_100054、name＝wuc2、type＝workunit、status＝active、詳細情報（resptime＝0.050）」で示される「Discovered  Element」である。
【００６３】
また、図１２では、「Discovered  Element（Id＝DE_m2_10000、name＝java1、type＝java  container、status＝inactive、詳細情報（starttime＝3437424000））」の「status」が「inactive」である。したがって、この「Discovered  Element」は異常状態であり、この「Discovered  Element」を親とするインスタンス情報も異常状態を示していることとなる。つまり、「Id」が「DE_m2_10001」である「Discovered  Element」は異常状態であり、「Id」が「DE_m2_10002」である「Discovered  Element」も異常状態である。
【００６４】
情報特定部６２は、情報収集部６１によって収集されたインスタンス情報のうち、異常が発生したアプリケーションのインスタンス情報と、当該異常によって影響を受けるアプリケーションのインスタンス情報とを特定する。
【００６５】
具体的には、情報特定部６２は、業務アプリＤＢ５７を参照し、異常が発生している業務アプリケーションを特定し、特定した業務アプリケーションを構成する構成情報をデータ管理装置１０から取得する。そして、情報特定部６２は、収集されたインスタンス情報のうち、データ管理装置１０から取得した構成情報で示されるアプリケーションのインスタンス情報を参照し、「status」が「inactive」になっているインスタンス情報を特定する。続いて、情報特定部６２は、「status」が「inactive」になっているインスタンス情報を有するアプリケーションを異常状態である異常アプリケーションとして特定する。さらに、情報特定部６２は、データ管理装置１０から取得した構成情報を参照し、特定した異常アプリケーションを構成要素とする業務アプリケーションを特定する。続いて、情報特定部６２は、特定した業務アプリケーションを構成する全てのアプリケーションを異常の影響を受けるアプリケーションとして特定する。そして、情報特定部６２は、特定した異常アプリケーションおよび異常の影響を受けるアプリケーションのインスタンス情報を第一比較部６３に送信する。また、情報特定部６２は、正常なアプリケーションおよび異常の影響を受けないアプリケーションのインスタンス情報を前処理部６４に送信する。
【００６６】
上述した図を用いて説明すると、情報特定部６２は、図１０に示した業務アプリＤＢ５７を参照して、「ステータス」が「Down」になっている「業務Ａ」を異常が発生している業務アプリケーションとして特定する。そして、情報特定部６２は、図４に示す業務アプリケーション「業務Ａ」の構成情報と、図５に示す業務アプリケーション「業務Ｂ」の構成情報と、図６に示す業務アプリケーション「業務Ｃ」の構成情報とをデータ管理装置１０から取得する。続いて、情報特定部６２は、異常がある「業務Ａ」を構成するアプリケーションが「Ｗｅｂ１」、「Ａｐｐｌ１」、「ＤＢ１」であると認識する。続いて、情報特定部６２は、情報収集部６１によって取得されたアプリケーション「Ｗｅｂ１」、「Ａｐｐｌ１」、「ＤＢ１」各々インスタンス情報を参照し、「Ａｐｐｌ１」のインスタンス情報が「業務Ａ」の異常の原因であると特定する。このとき、情報特定部６２は、「Ａｐｐｌ１」を構成要素とする「業務Ａ」の他のアプリケーションである「Ｗｅｂ１」と「ＤＢ１」については、異常の影響を受けるアプリケーションであると特定する。
【００６７】
例えば、アプリケーション「Ａｐｐｌ１」のインスタンス情報が図１３のような情報であったとする。この場合、情報特定部６２は、「Id＝DE_m1_10003」の「Discovered  Element」、「Id＝DE_m1_10004」の「Discovered  Element」、「Id＝DE_m1_10005」の「Discovered  Element」における「status」が「inactive」となっていることを検出する。したがって、情報特定部６２は、情報収集部６１によって収集された「Ａｐｐｌ１」のインスタンス情報については、異常の原因となるインスタンス情報であると特定する。
【００６８】
そして、情報特定部６２は、先ほど取得した図５に示す「業務Ｂ」の構成情報と図６に示す「業務Ｃ」とから、異常の原因であると特定したアプリケーション「Ａｐｐｌ１」を構成要素とする業務アプリケーションが「業務Ｂ」であると特定する。つまり、「業務Ｂ」は、異常があった「Ａｐｐｌ１」が他のアプリケーションと連携されることで構成されていることより、異常の影響を受けていると推測することができる。したがって、情報特定部６２は、「Ａｐｐｌ１」を構成要素とする「業務Ｂ」のアプリケーションである「Ｗｅｂ２」と「ＤＢ２」について、異常がある「Ａｐｐｌ１」の影響を受けるアプリケーションとして特定する。
【００６９】
そして、情報特定部６２は、異常あると特定した「Ａｐｐｌ１」のインスタンス情報と、異常の影響を受けると特定した「Ｗｅｂ１」、「ＤＢ１」、「Ｗｅｂ２」、「ＤＢ２」のインスタンス情報については、第一比較部６３に送信する。また、情報特定部６２は、「Ａｐｐｌ１」、「Ｗｅｂ１」、「ＤＢ１」、「Ｗｅｂ２」、「ＤＢ２」以外のアプリケーション、上述した例の場合、「業務Ｃ」を構成する「Ｗｅｂ２」、「Ａｐｐｌ３」、「ＤＢ２」のインスタンス情報を前処理部６４に送信する。なお、図１３は、異常が発生しているインスタンス情報を特定する例を説明する図である。
【００７０】
第一比較部６３は、情報特定部６２によって特定されたインスタンス情報については、詳細情報を含む全情報とインスタンス情報ＤＢ５６に記憶される前回の契機で収集された詳細情報を含むインスタンス情報の全情報とを比較する。具体的には、第一比較部６３は、インスタンス情報ＤＢ５６に記憶されているインスタンス情報から、情報特定部６２によって異常がある又は異常の影響を受けると特定されたインスタンス情報を有するアプリケーションのインスタンス情報と取得する。続いて、第一比較部６３は、取得したインスタンス情報と、インスタンス情報ＤＢ５６から取得した前回の契機で収集されたインスタンス情報とを比較する。そして、第一比較部６３は、比較した結果、差異が生じていると判断したインスタンス情報を情報送信部６８に出力する。
【００７１】
上述した例の場合、第一比較部６３は、異常あると特定した「Ａｐｐｌ１」のインスタンス情報と、異常の影響を受けると特定した「Ｗｅｂ１」、「ＤＢ１」、「Ｗｅｂ２」、「ＤＢ２」のインスタンス情報について、上述した比較処理を実施する。
【００７２】
つまり、第一比較部６３は、異常がある又は異常の影響を受けるアプリケーションのインスタンス情報については、「starttime」、「resptime」、「weburl」などの詳細情報までを含めて、前回収集されたインスタンス情報と比較する。こうすることで、第一比較部６３は、具体的にどのような異常を受けたのかを特定できないアプリケーションについても、異常を受けて変更された箇所を特定し、特定したインスタンス情報をデータ管理装置１０に送信することができる。
【００７３】
前処理部６４は、情報収集部６１によって収集されたインスタンス情報と、前回の契機で収集されたインスタンス情報とを比較する前に、インスタンス情報の並び替えや削除等様々な前処理を実施する。具体的には、前処理部６４は、情報収集部６１によって収集されたインスタンス情報のうち、上述した情報特定部６２によって異常の影響を受けないと特定されたインスタンス情報に対して前処理を実施する。また、前処理部６４は、上述した情報特定部６２が処理部としてデータ収集装置５０に含まれていない場合には、情報収集部６１によって収集されたインスタンス情報に対して前処理を実施する。また、前処理部６４は、情報特定部６２によって異常ある又は異常の影響を受けると特定されたインスタンス情報についても、前処理を実施してもよい。すなわち、前処理部６４は、任意に指定されたインスタンス情報に対して前処理を実施する。
【００７４】
図１３に示したインスタンス情報を例にして説明すると、前処理部６４は、収集されたインスタンス情報のうち、比較的更新頻度が多い「DiscoveredElement」が比較的更新頻度が少ない「ComposingProcess」よりも先に比較されるように並び替える。例えば、前処理部６４は、図１４に示すように、階層構造を有するインスタンス情報において、左に「DiscoveredElement」、右に「ComposingProcess」が配置されるように、インスタンス情報を並び替える。なお、ここでは、説明上、左に配置される方が早めに比較されるとしたが、これは例であり、これに限定されるものではない。
【００７５】
また、前処理部６４は、比較対象となるインスタンス情報に「status＝inactive」となっているインスタンス情報がある場合には、そのインスタンス情報を親とする子のインスタンス情報を比較対象から削除する。例えば、図１４に示すインスタンス情報において、「Id＝DE_m1_10003」の「DiscoveredElement」の「status」が「inactive」になっている。この場合、前処理部６４は、図１５に示すように、「Id＝DE_m1_10003」の「DiscoveredElement」を親とする子のインスタンス情報である「Id＝DE_m1_10004」の「DiscoveredElement」と「Id＝DE_m1_10005」の「DiscoveredElement」のインスタンス情報を削除する。つまり、「status」が「inactive」になっているインスタンス情報を親とするインスタンス情報については、親のインスタンス情報からだけで、異常を十分に把握することができ、子のインスタンス情報について処理を実施することは無駄となる。したがって、このようにすることで、後述する第二比較部６７で実施される比較処理をより高速に行うことができる。なお、図１４は、前処理としての並び替え処理を説明する図であり、図１５は、前処理としてのインスタンス情報削除処理を行った例を説明する図である。
【００７６】
頻度優先部６５は、情報収集部６１によって収集されたインスタンス情報を、更新頻度ＤＢ５８に記憶される更新頻度が多い順に並び替える。具体的には、頻度優先部６５は、情報収集部６１によって収集されたインスタンス情報、又は、情報特定部６２によって特定されたインスタンス情報、又は、前処理部６４によって前処理が実施されたインスタンス情報等を更新頻度が多い順に並び替える。すなわち、頻度優先部６５は、任意に指定されたインスタンス情報を更新頻度が多い順に並び替える。
【００７７】
上述した図１５および図１１を例にして説明する。頻度優先部６５は、図１１に示した更新頻度ＤＢ５８を参照し、図１５に示した「Id＝INS_m1_10000」を最上位するインスタンス情報について、変更回数を取得する。そして、頻度優先部６５は、後述する第二比較部６７による比較処理において、更新頻度が多い順に早く比較されるように、図１５に示したインスタンス情報を並び替えて、並び替えたインスタンス情報を第二比較部６７に出力する。
【００７８】
具体的には、頻度優先部６５は、更新頻度ＤＢ５８を参照し、「Id＝DE_m1_10003」の変更カウンタが「3」、「Id＝DE_m1_10000」が「2」、「Id＝DE_m1_10001」と「Id＝DE_m1_10002」が「1」であることを取得する。そして、頻度優先部６５は、図１６に示すように、取得した更新頻度が高いインスタンスが先に比較されるように並び替えて、第二比較部６７に出力する。図１６では、付与した番号順に比較処理が実行される。なお、ここでは、説明上、左に配置される方が早めに比較されるとしたが、これは例であり、これに限定されるものではない。また、図１６は、比較順序を決定した例を示す図である。
【００７９】
文字列変換部６６は、収集されたインスタンス情報を所定の条件に基づいて文字列に変換する。例えば、文字列変換部６６が文字列化の対象とする情報は、情報収集部６１によって収集されたインスタンス情報、情報特定部６２によって特定されたインスタンス情報であってもよい。また、前処理部６４によって前処理が実施されたインスタンス情報、頻度優先部６５によって並び替えられたインスタンス情報であってもよい。すなわち、文字列変換部６６は、任意に指定されたインスタンス情報を所定の条件に基づいて文字列に変換する。
【００８０】
例えば、文字列変換部６６は、図１６に示したインスタンス情報に対して、頻度優先部６５によって並び替えられた順番で、各インスタンスの「Id」と「status」とを抽出する文字列化を実施する。この場合、文字列変換部６６は、図１７に示すように、「INS_m1_10000ACTDE_m1_10003INADE_m1_10000ACTDE_m1_10001ACTDE_m1_10002ACTPROC_m1_1000ACTPROC_m1_1001ACTPROC_m1_1002ACT」を生成して、第二比較部６７に出力する。また、文字列変換部６６が文字列にする項目（情報）は、管理者等によって任意に設定することができ、文字列変換部６６は、設定された情報を所定の条件として文字列化を実施する。例を挙げると、文字列変換部６６は、所定の条件として「Id、status、詳細情報」が設定された場合には、各インスタンスの「Id、status、詳細情報」を文字列化する。なお、図１７は、今回収集されたインスタンス情報を文字列化した例を示す図である。
【００８１】
第二比較部６７は、文字列変換部６６によって文字列に変換された情報と、インスタンス情報ＤＢ５６に記憶される前回の契機で収集されたインスタンス情報を所定の条件に基づいて文字列に変換した情報とを比較する。上述した例で説明すると、第二比較部６７は、文字列化した図１７のインスタンス情報を有するアプリケーションについて、前回の契機で収集されたインスタンス情報をインスタンス情報ＤＢ５６から取得し、文字列変換部６６と同様の条件にしたがって文字列化する。
【００８２】
例を挙げると、第二比較部６７は、図１８に示すように、「INS_m1_10000ACTDE_m1_10003ACTDE_m1_10004ACTDE_m1_10005ACTDE_m1_10000ACTDE_m1_10001ACTDE_m1_10002ACTPROC_m1_1000ACTPROC_m1_1001ACTPROC_m1_1002ACT」を生成する。そして、第二比較部６７は、前回収集されたインスタンス情報を文字列化した図１８の情報と、今回収集された情報を文字列化した情報である図１７とを比較し、差異がある場合には、文字列化する前のインスタンス情報を情報送信部６８に出力する。この例では、図１７では「DE_m1_10003INA」となっているが、図１８では「DE_m1_10003ACT」となっていることから、第二比較部６７は、差異があるインスタンス情報であると判定し、文字列化する前の情報である図１３の情報を情報送信部６８に出力する。なお、情報収集部６１は、文字列化する前の情報、すなわち、収集されたインスタンス情報は、記憶部５５やメモリなどに格納しておく。そうすることで、第二比較部６７は、文字列化された情報に対応する文字列化する前のインスタンス情報を特定および取得して、情報送信部６８に出力することができる。なお、図１８は、前回収集されたインスタンス情報を文字列化した例を示す図である。
【００８３】
また、第二比較部６７は、文字列化した情報でなくも比較処理を実施することができる。つまり、第二比較部６７は、受け付けた情報が文字列化されていない情報、言い換えると、収集されたインスタンス情報のままである場合には、文字列化することなく、前回の契機で収集されたインスタンス情報との比較処理を実施する。例えば、第二比較部６７は、情報特定部６２によって異常の影響を受けると特定されなかった情報、前処理部６４によって前処理実施された情報、頻度優先部によって並び替えられた情報等、様々なインスタンス情報を比較することができる。すなわち、第二比較部６７は、受け付けた情報の状態によって比較処理を実施することができる。
【００８４】
情報送信部６８は、第一比較部６３または第二比較部６７によって、前回の契機で収集されたインスタンス情報と差異があると判定されたインスタンス情報をデータ管理装置１０に送信する。例えば、情報送信部６８は、異常がある又は異常の影響を受けると特定されたインスタンス情報のうち、前回の契機で収集されたインスタンス情報と差異があると判定されたインスタンス情報を第一比較部６３から取得して、データ管理装置１０に送信する。また、情報送信部６８は、異常の影響を受けないと特定されたインスタンス情報のうち、前回の契機で収集されたインスタンス情報と差異があると判定されたインスタンス情報を第二比較部６７から取得して、データ管理装置１０に送信する。
【００８５】
［処理の流れ］
次に、図１９〜図２２を用いて、実施例２で説明したデータ収集装置５０における処理の流れを説明する。ここでは、データ収集装置５０における全体的な処理の流れと、各処理を具体的に示した詳細な処理の流れについて説明する。
【００８６】
（全体的な処理の流れ）
まず、図１９を用いて、データ収集装置５０における全体的な処理の流れについて説明する。図１９は、実施例２に係るデータ収集装置における全体的な処理の流れを示すフローチャートである。
【００８７】
図１９に示すように、データ収集装置５０は、インスタンス情報収集契機に到達すると（ステップＳ１０１肯定）、監視対象となる各サーバからインスタンス情報を収集する（ステップＳ１０２）。
【００８８】
続いて、データ収集装置５０は、第一比較処理を実施する（ステップＳ１０３）。すなわち、データ収集装置５０は、収集したインスタンス情報から、異常がある又は異常の影響を受けるインスタンス情報を特定し、抽出したインスタンス情報と前回の契機で収集されたインスタンス情報とを比較して、差異があるインスタンス情報を抽出する。
【００８９】
第一比較処理を実施したデータ収集装置５０は、比較順番処理を実施する（ステップＳ１０４）。例えば、データ収集装置５０は、収集したインスタンス情報のうち第一比較処理によって異常の影響を受けると特定されたインスタンス情報以外のインスタンス情報について、情報の削除や並び替え等上述した前処理を実施する。
【００９０】
そして、データ収集装置５０は、前処理が実施されたインスタンス情報について文字列化処理を実施する（ステップＳ１０５）。すなわち、データ収集装置５０は、前処理が実施されたインスタンス情報について、例えば、「Id」と「status」を抽出するなど、予め定められた情報のみを抽出する文字列化を実施する。
【００９１】
続いて、データ収集装置５０は、第二比較処理を実施する（ステップＳ１０６）。例えば、データ収集装置５０は、文字列化処理で文字列化したインスタンス情報を有するアプリケーションにおける前回の契機で収集されたインスタンス情報をインスタンス情報ＤＢ５６から取得して文字列化する。そして、データ収集装置５０は、前回の契機で収集されたインスタンス情報を文字列化した情報と、今回収集したインスタンス情報を文字列化した情報とを比較し、差異があるインスタンス情報を抽出する。
【００９２】
その後、データ収集装置５０は、第一比較処理または第二比較処理において抽出された、前回の契機で収集されたインスタンス情報と差異があるインスタンス情報を、データ管理装置１０に対して送信するインスタンス情報送信処理を実施する（ステップＳ１０７）。
【００９３】
（詳細な処理の流れ）
次に、図２０〜図２２を用いて、データ収集装置５０における詳細な処理の流れについて説明する。図２０〜図２２は、実施例２に係るデータ収集装置における詳細な処理の流れを示すフローチャートである。
【００９４】
図２０に示すように、データ収集装置５０の情報収集部６１は、インスタンス情報の収集契機に到達すると（ステップＳ２０１肯定）、監視対象となる各サーバ上で実行されているアプリケーションのインスタンス情報を収集する（ステップＳ２０２）。
【００９５】
続いて、情報特定部６２は、業務アプリＤＢ５７を参照し、現地点で異常が発生している業務アプリケーションがあるか否かを判定する（ステップＳ２０３）。そして、情報特定部６２は、異常が発生している業務アプリケーションがある場合には（ステップＳ２０３肯定）、異常が発生している業務アプリケーションの構成情報をデータ管理装置１０から取得する（ステップＳ２０４）。なお、異常が発生している業務アプリケーションがない場合には（ステップＳ２０３否定）、データ収集装置５０は、後述するステップＳ２１１の処理を実行する。
【００９６】
続いて、情報特定部６２は、データ管理装置１０から取得した異常が発生している業務アプリケーションの構成情報から、当該業務アプリケーションを構成するアプリケーションを全て特定する（ステップＳ２０５）。そして、情報特定部６２は、収集されたインスタンス情報のうち、構成情報から特定したアプリケーションのインスタンス情報を参照し、「status」が「inactive」になっているインスタンス情報を、異常の原因として特定する（ステップＳ２０６）。また、情報特定部６２は、異常がある全ての業務アプリケーションについて、上述したステップＳ２０４〜ステップＳ２０６の処理を実施する（ステップＳ２０７）。
【００９７】
その後、異常がある全ての業務アプリケーションについて異常の原因であるアプリケーションを特定した情報特定部６２は、特定したアプリケーションを構成要素とする業務アプリケーションを特定する（ステップＳ２０７肯定、ステップＳ２０８）。つまり、情報特定部６２は、データ管理装置１０から取得した構成情報を参照して、異常の原因となっているアプリケーションを構成要素として含む業務アプリケーションを特定する。
【００９８】
続いて、情報特定部６２は、データ管理装置１０から取得した構成情報を参照して、ステップＳ２０８で特定した業務アプリケーションを構成するアプリケーションを特定する（ステップＳ２０９）。そして、第一比較部６３は、情報特定部６２によって特定されたアプリケーションについては、詳細情報を含む全情報とインスタンス情報ＤＢ５６に記憶される前回の契機で収集された詳細情報を含む全情報とを比較する（ステップＳ２１０）。
【００９９】
その後、図２１に示すように、前処理部６４は、収集されたインスタンス情報のうち、情報特定部６２によって特定されなかったアプリケーションのインスタンス情報を取得する（ステップＳ２１１）。言い換えると、前処理部６４は、異常に関連するアプリケーション以外のアプリケーションのインスタンス情報を取得する。
【０１００】
そして、前処理部６４は、収集されたインスタンス情報のうち、比較的更新頻度が多いインスタンスが比較的更新頻度が少ないインスタンスよりも先に比較されるように並び替える（ステップＳ２１２）。このとき、頻度優先部６５は、更新頻度ＤＢ５８に記憶される更新頻度が多い順に並び替えてもよい。
【０１０１】
続いて、前処理部６４は、並び替えられたインスタンス情報のうち、「Discovered  Element」のインスタンス情報を一つ取得し（ステップＳ２１３）、「status」が「inactive」か否かを判定する（ステップＳ２１４）。
【０１０２】
そして、前処理部６４は、「status」が「inactive」であると判定した場合には（ステップＳ２１４肯定）、その「Discovered  Element」の子となるインスタンス情報を削除する（ステップＳ２１５）。続いて、前処理部６４は、「status」が「inactive」である「Discovered  Element」のインスタンス情報を所定の条件にしたがって文字列化した後（ステップＳ２１６）、ステップＳ２１３の処理を実行する。
【０１０３】
一方、前処理部６４は、「status」が「inactive」でないと判定した場合には（ステップＳ２１４否定）、その「Discovered  Element」のインスタンス情報を所定の条件にしたがって文字列化する（ステップＳ２１７）。そして、文字列変換部６６は、異常に関連するアプリケーション以外のアプリケーションのインスタンス情報における「Discovered  Element」について、上述したステップＳ２１３〜ステップＳ２１７の処理を繰り返す（ステップＳ２１８）。
【０１０４】
全ての「Discovered  Element」について文字列化が前処理部６４によって実施されると（ステップＳ２１８肯定）、文字列変換部６６は、並び替えられたインスタンス情報のうち「Composing  Process」のインスタンス情報を一つ取得する（ステップＳ２１９）。続いて、文字列変換部６６は、取得した「Composing  Process」のインスタンス情報を所定の条件にしたがって文字列する（ステップＳ２２０）。そして、文字列変換部６６は、異常に関連するアプリケーション以外のアプリケーションのインスタンス情報における「Composing  Process」について、上述したステップＳ２１９〜ステップＳ２２０の処理を繰り返す（ステップＳ２２１）。
【０１０５】
その後、異常に関連するアプリケーション以外のアプリケーションのインスタンス情報における「Discovered  Element」および「Composing  Process」の文字列化が終了すると（ステップＳ２２１肯定）、第二比較部６７は、比較処理を実施する（ステップＳ２２２）。すなわち、第二比較部６７は、文字列変換部６６によって文字列に変換された情報と、インスタンス情報ＤＢ５６に記憶される前回の契機で収集されたインスタンス情報を所定の条件に基づいて文字列に変換した情報とを比較する。
【０１０６】
そして、図２２に示すように、第二比較部６７は、比較した結果、差異が生じていると判定した場合には（ステップＳ２２３肯定）、当該インスタンス情報の更新頻度が更新頻度ＤＢ５８に格納されているか否かを判定する（ステップＳ２２４）。なお、第二比較部６７は、差異が生じていないと判定した場合には（ステップＳ２２３否定）、後述するステップＳ２２７の処理を実行する。
【０１０７】
第二比較部６７は、差異が生じているインスタンス情報の更新頻度が格納されている場合には（ステップＳ２２４肯定）、更新頻度をインクリメントする（ステップＳ２２５）。一方、第二比較部６７は、差異が生じているインスタンス情報の更新頻度が格納されていない場合には（ステップＳ２２４否定）、当該インスタンス情報の更新頻度を示す新たなレコードを作成する（ステップＳ２２６）。
【０１０８】
そして、データ収集装置５０は、情報収集部６１によって収集されたインスタンス情報のうち、異常の影響を受けないと判定されたアプリケーションのインスタンス情報について、ステップＳ２１１〜ステップＳ２２６の処理を実行する（ステップＳ２２７）。つまり、データ収集装置５０は、未処理のインスタンス情報が残っている場合には（ステップＳ２２７否定）、ステップＳ２１１に戻って以降の処理を実行する。
【０１０９】
その後、情報収集部６１によって収集された全てのインスタンス情報について、上述した比較が行われると（ステップＳ２２７肯定）、情報送信部６８は、差異があると判定されたインスタンス情報をデータ管理装置１０に送信する（ステップＳ２２８）。
【０１１０】
また、上述した処理の例では、ステップ２１１〜ステップＳ２２７までの処理には、「status」が「Down」となっている業務アプリケーションを構成するアプリケーションのインスタンス情報が含まれていない。したがって、更新頻度ＤＢ５８には、「status」が「inactive」となっているインスタンス情報を格納しておく必要がない。このため、頻度優先部６５は、「status」が「Down」となっている業務アプリケーションを構成するアプリケーションの情報を更新頻度ＤＢ５８から削除する（ステップＳ２２９）。
【０１１１】
［実施例２による効果］
このように、実施例２によれば、データ収集装置５０は、詳細情報を含めた比較処理と詳細情報を含めない比較処理の２つの比較処理を各々実行して、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を検出する。したがって、データ収集装置５０は、収集したアプリケーション全部について、詳細情報までを比較する場合に比べて、比較処理を高速化することができる。その結果、データ収集処理におけるアプリケーション情報の比較処理を高速に実行し、処理遅延の発生を防止することが可能である。
【０１１２】
また、実施例２によれば、監視対象のサーバ台数が増えても処理が遅延しないので、インスタンス情報のリアルタイム性が維持できる。また、データ管理装置１０は、詳細な情報が必要なアプリケーションのインスタンス情報だけを取得することができる。また、アプリケーションに異常が発生したときに、その根本原因をアプリケーションの詳細情報を調べることにより特定することができる。また、アプリケーションに異常が発生したときに、その影響をうけ利用できなくなっている業務アプリケーションの一覧を作成することができる。
【実施例３】
【０１１３】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
【０１１４】
（処理手順）
例えば、上述した実施例２で説明した各処理順序は任意設定することができ、各処理は独立して実行することもできる。具体的には、情報収集部６１によって収集されたインスタンス情報に対して実施する処理順序は、実施例２で説明した順序に限定されるものではなく、任意の順番で実施することができる。また、情報収集部６１によって収集されたインスタンス情報に対して実施する処理は、実施例２で説明したように複数の処理を組み合わせ必要はない。例えば、文字列変換と比較処理を実施するなど、実施する処理の数も任意に設定することができる。
【０１１５】
例えば、異常の影響を受けるアプリケーションについて詳細情報まで比較する処理、文字列化して比較する処理、更新頻度が多い順に並び替えて比較する処理、インスタンス情報のうち指定された情報のみを比較する処理各々を単独で実行してもよい。また、上述した処理各々を任意に組み合わせて実行することもできる。
【０１１６】
（システム）
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図３〜図６、図９〜図１７等に示した各種のデータやパラメータを含む情については、特記する場合を除いて任意に変更することができる。
【０１１７】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、例えば情報特定部６２と第一比較部６３とを統合するなど各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１１８】
（プログラム）
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
【０１１９】
図２３は、データ収集プログラムを実行するコンピュータシステム１００を示す図である。図２３に示すように、コンピュータシステム１００は、ＲＡＭ１０１と、ＨＤＤ１０２と、ＲＯＭ１０３と、ＣＰＵ１０４とを有する。ここで、ＲＯＭ１０３には、上の実施例と同様の機能を発揮するプログラムがあらかじめ記憶されている。つまり、図２３に示すように、情報収集プログラム１０３ａ、情報特定プログラム１０３ｂ、第一比較プログラム１０３ｃ、前処理プログラム１０３ｄ、頻度優先プログラム１０３ｅがあらかじめ記憶されている。さらに、ＲＯＭ１０３には、文字列変換プログラム１０３ｆ、第二比較プログラム１０３ｇ、情報送信プログラム１０３ｈがあらかじめ記憶されている。
【０１２０】
そして、ＣＰＵ１０４には、これらのプログラム１０３ａ〜１０３ｈを読み出して実行することで、図２３に示すように、各プロセスとなる。つまり、情報収集プロセス１０４ａ、情報特定プロセス１０４ｂ、第一比較プロセス１０４ｃ、前処理プロセス１０４ｄ、頻度優先プロセス１０４ｅ、文字列変換プロセス１０４ｆ、第二比較プロセス１０４ｇ、情報送信プロセス１０４ｈとなる。なお、情報収集プロセス１０４ａは、図８に示した情報収集部６１に対応し、同様に、情報特定プロセス１０４ｂは、情報特定部６２に対応し、第一比較プロセス１０４ｃは、第一比較部６３に対応し、前処理プロセス１０４ｄは、前処理部６４に対応する。また、頻度優先プロセス１０４ｅは、頻度優先部６５に対応し、文字列変換プロセス１０４ｆは、文字列変換部６６に対応し、第二比較プロセス１０４ｇは、第二比較部６７に対応し、情報送信プロセス１０４ｈは、情報送信部６８に対応する。
【０１２１】
また、ＨＤＤ１０２には、インスタンス情報テーブル１０２ａと、業務アプリテーブル１０２ｂと、更新頻度テーブル１０２ｃとが設けられる。インスタンス情報テーブル１０２ａは、図８に示したインスタンス情報ＤＢ５６に対応し、業務アプリテーブル１０２ｂは、業務アプリＤＢ５７に対応し、更新頻度テーブル１０２ｃは、更新頻度ＤＢ５８に対応する。
【０１２２】
ところで、上記したプログラム１０３ａ〜１０３ｈは、必ずしもＲＯＭ９３に記憶させておく必要はない。例えば、コンピュータシステム１００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に記憶させておくにしてもよい。また、コンピュータシステム１００の内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータシステム１００に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータシステム１００がこれらからプログラムを読み出して実行するようにしてもよい。
【０１２３】
すなわち、この他の実施例でいうプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものである。そして、コンピュータシステム１００は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム１００によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【０１２４】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２５】
（付記１）アプリケーションを実行してサービスを提供するサーバ装置から収集した、前記アプリケーションの詳細を示す詳細情報を含むアプリケーション情報を記憶する情報記憶部と、
前記サーバ装置から前記アプリケーション情報を収集する情報収集部と、
前記情報収集部によって収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する情報特定部と、
前記情報特定部によって特定されたアプリケーション情報については、前記詳細情報を含む全情報と前記情報記憶部に記憶される前回の契機で収集された詳細情報を含むアプリケーション情報の全情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する第一比較部と、
前記情報特定部によって特定されたアプリケーション情報以外のアプリケーション情報については、前記詳細情報を除く情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報のうち前記詳細情報を除く情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるとアプリケーション情報を抽出する第二比較部と、
前記第一比較部または第二比較部によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【０１２６】
（付記２）アプリケーションを実行してサービスを提供するサーバ装置からアプリケーションの詳細を示す詳細情報を含むアプリケーション情報を前記サーバ装置から収集する情報収集手順と、
前記情報収集手順によって収集されたアプリケーション情報のうち、異常が発生したアプリケーションのアプリケーション情報と、当該異常によって影響を受けるアプリケーションのアプリケーション情報とを特定する情報特定手順と、
前記情報特定手順によって特定されたアプリケーション情報については、前記詳細情報を含む全情報と過去に収集された前記アプリケーション情報を記憶する情報記憶部に記憶される前回の契機で収集された詳細情報を含むアプリケーション情報の全情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する第一比較手順と、
前記情報特定手順によって特定されたアプリケーション情報以外のアプリケーション情報については、前記詳細情報を除く情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報のうち前記詳細情報を除く情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する第二比較手順と、
前記第一比較手順または第二比較手順によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信手順と、
をコンピュータに実行させることを特徴とするデータ収集プログラム。
【０１２７】
（付記３）アプリケーションを実行してサービスを提供するサーバ装置から過去に収集した、前記アプリケーションの情報を示すアプリケーション情報を記憶する情報記憶部と、
前記サーバ装置からアプリケーション情報を収集する情報収集部と、
前記情報収集部によって収集されたアプリケーション情報を所定の条件に基づいて文字列に変換する文字列変換部と、
前記文字列変換部によって文字列に変換された情報と、前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報を所定の条件に基づいて文字列に変換した情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較部と、
前記比較部によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【０１２８】
（付記４）アプリケーションを実行してサービスを提供するサーバ装置からアプリケーションの詳細を示す詳細情報を含むアプリケーション情報を前記サーバ装置から収集する情報収集手順と、
前記情報収集手順によって収集されたアプリケーション情報を所定の条件に基づいて文字列に変換する文字列変換手順と、
前記文字列変換手順によって文字列に変換された情報と、過去に収集された前記アプリケーション情報を記憶する情報記憶部に記憶される前回の契機で収集されたアプリケーション情報を所定の条件に基づいて文字列に変換した情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較手順と、
前記比較手順によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信手順と、
をコンピュータに実行させることを特徴とするデータ収集プログラム。
【０１２９】
（付記５）アプリケーションを実行してサービスを提供するサーバ装置から過去に収集した、前記アプリケーションの情報を示すアプリケーション情報を記憶する情報記憶部と、
前記アプリケーション情報が過去に更新された回数を示す更新頻度を記憶する頻度記憶部と、
前記サーバ装置から前記アプリケーション情報を収集する情報収集部と、
前記情報収集部によって収集されたアプリケーション情報を、前記頻度記憶部に記憶される更新頻度が多い順に並び替える並び替え部と、
前記並び替え部によって並び替えられた更新頻度が多い順に、前記情報収集部により収集されたアプリケーション情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較部と、
前記比較部によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【０１３０】
（付記６）アプリケーションを実行してサービスを提供するサーバ装置からアプリケーションの詳細を示す詳細情報を含むアプリケーション情報を前記サーバ装置から収集する情報収集手順と、
前記情報収集手順によって収集されたアプリケーション情報を、前記アプリケーション情報が過去に更新された回数を示す更新頻度を記憶する頻度記憶部に記憶される更新頻度が多い順に並び替える並び替え手順と、
前記並び替え手順によって並び替えられた更新頻度が多い順に、前記情報収集手順により収集されたアプリケーション情報と、過去に収集された前記アプリケーション情報を記憶する情報記憶部に記憶される前回の契機で収集されたアプリケーション情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較手順と、
前記比較手順によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信手順と、
をコンピュータに実行させることを特徴とするデータ収集プログラム。
【０１３１】
（付記７）アプリケーションを実行してサービスを提供するサーバ装置から過去に収集した、前記アプリケーションの情報を示すアプリケーション情報を記憶する情報記憶部と、
前記サーバ装置から前記アプリケーション情報を収集する情報収集部と、
前記情報収集部により収集されたアプリケーション情報のうち予め指定された情報と前記情報記憶部に記憶される前回の契機で収集されたアプリケーション情報における前記予め指定された情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較部と、
前記比較部によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信部と、
を有することを特徴とするデータ収集装置。
【０１３２】
（付記８）アプリケーションを実行してサービスを提供するサーバ装置からアプリケーションの詳細を示す詳細情報を含むアプリケーション情報を前記サーバ装置から収集する情報収集手順と、
前記情報収集手順により収集されたアプリケーション情報のうち予め指定された情報と、過去に収集された前記アプリケーション情報を記憶する情報記憶部に記憶される前回の契機で収集されたアプリケーション情報における前記予め指定された情報とを比較し、前回の契機で収集されたアプリケーション情報と差異があるアプリケーション情報を抽出する比較手順と、
前記比較手順によって抽出されたアプリケーション情報を、前記アプリケーション情報を管理するデータ管理装置に送信する情報送信手順と、
をコンピュータに実行させることを特徴とするデータ収集プログラム。
【符号の説明】
【０１３３】
１  データ管理装置
１ａ  ＣＭＤＢ
５  データ収集装置
５ａ  情報ＤＢ
５ｂ  情報収集部
５ｃ  情報特定部
５ｄ  第一比較部
５ｅ  第二比較部
１０  データ管理装置
１１  通信制御Ｉ／Ｆ部
１２  入力部
１３  表示部
１５  記憶部
１６  アプリケーション情報ＤＢ
１７  構成情報ＤＢ
２０  制御部
２１  情報受信部
２２  情報格納部
２３  構成情報提供部
５０  データ収集装置
５１  通信制御Ｉ／Ｆ部
５２  入力部
５３  表示部
５５  記憶部
５６  インスタンス情報ＤＢ
５７  業務アプリＤＢ
５８  更新頻度ＤＢ
６０  制御部
６１  情報収集部
６２  情報特定部
６３  第一比較部
６４  前処理部
６５  頻度優先部
６６  文字列変換部
６７  第二比較部
６８  情報送信部
【図１】
0005487864.tif 000002
【図２】
0005487864.tif 000003
【図３】
0005487864.tif 000004
【図４】
0005487864.tif 000005
【図５】
0005487864.tif 000006
【図６】
0005487864.tif 000007
【図７】
0005487864.tif 000008
【図８】
0005487864.tif 000009
【図９】
0005487864.tif 000010
【図１０】
0005487864.tif 000011
【図１１】
0005487864.tif 000012
【図１２】
0005487864.tif 000013
【図１３】
0005487864.tif 000014
【図１４】
0005487864.tif 000015
【図１５】
0005487864.tif 000016
【図１６】
0005487864.tif 000017
【図１７】
0005487864.tif 000018
【図１８】
0005487864.tif 000019
【図１９】
0005487864.tif 000020
【図２０】
0005487864.tif 000021
【図２１】
0005487864.tif 000022
【図２２】
0005487864.tif 000023
【図２３】
0005487864.tif 000024
【図２４】
0005487864.tif 000025