"トランザクションの一部として第1のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求元イベント情報を記憶する第1の記憶手段、および前記第1のサーバからのトランザクションの一部の実行要求に応じて第2のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求先イベント情報を記憶する第2の記憶手段を参照し、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とを関連付ける関連付け手段と、関連付けられた要求元イベント情報と要求先イベント情報との間で時刻情報を比較し、前記第1の記憶手段に格納された要求元イベント情報の時刻情報と、前記第2の記憶手段に格納された要求先イベント情報の時刻情報との間の時刻のずれを補正する補正値を決定する決定手段と、を有する情報処理装置。前記決定手段は、前記第1のサーバで実行された処理の開始を示す要求元イベント情報と該処理の終了を示す要求元イベント情報とのイベント情報対を生成し、該イベント情報対を構成する各要求元イベント情報の時刻情報に基づき、該処理の実行期間を判断し、該イベント情報対を構成する要求元イベント情報と同一のトランザクションの識別子を含む要求先イベント情報の時刻情報を補正した場合に、補正後の時刻を該実行期間内とすることができる適合時間幅を決定し、該適合時間幅内の時間を、前記補正値に決定する、ことを特徴とする請求の範囲第1項記載の情報処理装置。前記決定手段は、トランザクションの識別子を含む要求先イベント情報ごとに適合時間幅を計算し、要求先イベント情報それぞれの適合時間幅の重複範囲内の時間を、前記補正値に決定する、ことを特徴とする請求の範囲第2項記載の情報処理装置。前記決定手段は、トランザクションの識別子を含む要求先イベント情報ごとに適合時間幅を計算し、時刻の補正量を示す複数の補正値候補それぞれについて、該補正値候補に示される補正量を適合時間幅に含む要求先イベント情報の割合を計算し、該割合が最も大きくなる補正値候補を前記補正値に決定する、ことを特徴とする請求の範囲第2項記載の情報処理装置。前記第2の記憶手段には、さらに、トランザクションの一部として前記第2のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報を含み、該トランザクションの識別子を含まない、トランザクション不明イベント情報が格納されており、前記決定手段は、補正値候補を適合時間幅に含む要求先イベントの割合が最も大きくなる補正値候補が複数ある場合、該割合が最も大きくなる複数の補正値候補それぞれについて、該補正値候補に示される補正量だけ時刻のずれを補正した場合に、補正後の時刻情報が、前記第1のサーバで実行された処理の実行期間のいずれかに含まれる、要求先イベント情報およびトランザクション不明イベント情報の割合を計算し、該割合が最も大きくなる補正値候補を前記補正値に決定する、ことを特徴とする請求の範囲第4項記載の情報処理装置。前記第1のサーバまたは前記第2のサーバで実行された処理に関するイベントは、処理を要求するリクエストメッセージの発生、および該リクエストメッセージに対するレスポンスメッセージの発生である請求の範囲第1項乃至第5項のいずれかに記載の情報処理装置。さらに、前記第1の記憶手段または第2の記憶手段から、前記補正値で時刻情報を補正しながら、要求元イベント情報または要求先イベント情報を取得して分析を行う分析手段を有することを特徴とする請求の範囲第1項乃至第6項のいずれかに記載の情報処理装置。さらに、要求元イベント情報および要求先イベント情報を取得し、要求元イベント情報または要求先イベント情報の時刻情報を前記補正値で補正しながら前記第1の記憶手段または第2の記憶手段に格納する取得手段を有することを特徴とする請求の範囲第1項乃至第6項のいずれかに記載の情報処理装置。さらに、補正値候補ごとの、該補正値候補を適合時間幅に含む要求先イベント情報の割合を表示する表示手段を有することを特徴とする請求の範囲第4項記載の情報処理装置。さらに、補正値候補ごとの、該補正値候補を適合時間幅に含む要求先イベント情報の割合、および複数のトランザクション不明イベント情報それぞれの発生時刻が、トランザクションごとに求められた、前記第1のサーバで実行された処理の実行期間のいずれかに含まれる割合を表示する表示手段を有することを特徴とする請求の範囲第5項記載の情報処理装置。さらに、前記第1の記憶手段に格納された要求元イベント情報の時刻情報と、前記第2の記憶手段に格納された要求先イベント情報の時刻情報との間の時刻のずれを、決定された前記補正値で補正した後の、要求元イベント情報と要求先イベント情報との時刻情報の関係を表示する表示手段を有することを特徴とする請求の範囲第1項乃至第10項のいずれかに記載の情報処理装置。前記関連付け手段は、トランザクションの処理を複数の階層に分けて実行する多階層システムの処理において、上下に隣接する階層の上位の階層の処理を実行するサーバを前記第1のサーバとし、該隣接する階層の下位の階層の処理を実行するサーバを前記第2のサーバとする請求の範囲第1項乃至第11項のいずれかに記載の情報処理装置。コンピュータが、トランザクションの一部として第1のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求元イベント情報を記憶する第1の記憶手段、および前記第1のサーバからのトランザクションの一部の実行要求に応じて第2のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求先イベント情報を記憶する第2の記憶手段を参照し、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とを関連付け、関連付けられた要求元イベント情報と要求先イベント情報との間で時刻情報を比較し、前記第1の記憶手段に格納された要求元イベント情報の時刻情報と、前記第2の記憶手段に格納された要求先イベント情報の時刻情報との間の時刻のずれを補正する補正値を決定する、ことを特徴とする時刻補正値決定方法。トランザクションの一部として第1のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求元イベント情報を記憶する第1の記憶手段、および前記第1のサーバからのトランザクションの一部の実行要求に応じて第2のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求先イベント情報を記憶する第2の記憶手段を参照し、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とを関連付け、関連付けられた要求元イベント情報と要求先イベント情報との間で時刻情報を比較し、前記第1の記憶手段に格納された要求元イベント情報の時刻情報と、前記第2の記憶手段に格納された要求先イベント情報の時刻情報との間の時刻のずれを補正する補正値を決定する、処理をコンピュータに実行させるプログラム。しかし、異なるサーバそれぞれのイベント情報を別個の機器で取得する場合、取得する複数の機器間で時刻同期による時刻合わせを行っても、メッセージの送受信などのイベント間の前後関係の正確な把握に十分な同期精度が得られないことがある。しかも、複数の機器の時刻が完全に一致した場合であっても、各機器でイベント情報を採取するプロセスによるタイムスタンプの付与タイミングがプロセス間で異なり、時刻のずれが生じることがある。このようなプロセスのタイムスタンプ付与タイミングのずれから生じる時刻情報のずれは、異なるサーバそれぞれのイベント情報を、同一機器の複数のプロセスを使って採取するような場合にも同様に発生する。このように、各イベント情報の時刻情報にずれがあると、メッセージの送受信などのイベント間の前後関係の判定制度が劣化する。その結果、例えばトランザクション分析による分析結果の信頼性が低下する。しかも、異なるサーバで発生したイベントの時刻情報の補正値を判断する手法がない。そのため、異なるサーバそれぞれで実行した処理のイベント情報を、異なる装置または異なるプロセスで取得した場合、イベント情報の時刻のずれを補正することができない。1つの側面では、本発明は、異なるサーバで実行した処理のイベント情報の時刻のずれを補正可能とする情報処理装置、時刻補正値決定方法、およびプログラムを提供することを目的とする。1つの案では、トランザクションの一部として第1のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求元イベント情報を記憶する第1の記憶手段、および前記第1のサーバからのトランザクションの一部の実行要求に応じて第2のサーバで実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求先イベント情報を記憶する第2の記憶手段を参照し、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とを関連付ける関連付け手段と、関連付けられた要求元イベント情報と要求先イベント情報との間で時刻情報を比較し、前記第1の記憶手段に格納された要求元イベント情報の時刻情報と、前記第2の記憶手段に格納された要求先イベント情報の時刻情報との間の時刻のずれを補正する補正値を決定する決定手段と、を有する情報処理装置が提供される。1態様によれば、異なるサーバで実行した処理のイベント情報の時刻のずれが補正可能となる。本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。第1の実施の形態図1は、第1の実施の形態に係るシステムの構成例を示す図である。第1の実施の形態に係るシステムには、例えば、情報処理装置1、端末装置2、第1のサーバ3、第2のサーバ4、およびキャプチャ装置5が含まれる。端末装置2は、例えばユーザからの入力に応じて、第1のサーバ3に対して処理要求を送信する。第1のサーバ3と第2のサーバ4とは、互いに連携し、端末装置2からの処理要求に応じて、トランザクション処理を実行する。例えば第1のサーバ3がWebサーバとアプリケーションサーバとの機能を備え、第2のサーバ4がDBサーバの機能を備える。この場合、第1のサーバ3は、端末装置2から処理要求に応じたWebサービスおよびアプリケーションの処理サービスを実行し、第2のサーバ4が管理するデータにアクセスする際に、第2のサーバ4に対してリクエストメッセージを送信する。なお第1のサーバ3が第2のサーバ4に送信するリクエストメッセージには、トランザクションの識別子を含めることができる。第2のサーバ4は、受信したリクエストメッセージに応じたデータへのアクセスを行い、アクセス結果をレスポンスメッセージとして第1のサーバ3に応答する。第1の実施の形態に係るシステムは、第1のサーバ3と第2のサーバ4とのそれぞれに関し、トランザクションの処理に関連して発生したイベントに関するイベント情報を記録する機能を備えている。例えば第1のサーバ3は、リクエストメッセージに応じてトランザクションの処理の一部を実行すると、実行した処理の開始イベントに関するイベント情報と、処理の終了イベントに関するイベント情報と生成する。なお第1のサーバ3は、生成したイベント情報に、イベントの発生時刻を示す時刻情報を含める。また第1のサーバ3は、実行したトランザクションを一意に示す識別子を生成し、イベント情報にトランザクションの識別子を含める。そして第1のサーバ3は、生成したイベント情報を内部の記憶装置に格納する。また第1のサーバ3と第2のサーバ4との通信経路上にネットワークタップ6が設けられ、そのネットワークタップ6にキャプチャ装置5が接続されている。ネットワークタップ6は、第1のサーバ3と第2のサーバ4との間で送受信されたパケットのコピーを、キャプチャ装置5に送信する。キャプチャ装置5は、ネットワークタップ6から送信されたパケットを解析して、第1のサーバ3から第2のサーバ4へのリクエストメッセージ、および第2のサーバ4から第1のサーバ3へのレスポンスメッセージを再生する。そしてキャプチャ装置5は、それぞれのメッセージの発生イベントを示すイベント情報を、内部の記憶装置に記憶する。なおキャプチャ装置5は、イベント情報を記憶する際に、イベントの発生時刻を示す時刻情報をイベント情報に付与する。またキャプチャ装置5は、取得したメッセージにトランザクションの識別子が含まれていれば、その識別子をイベント情報に含める。情報処理装置1は、第1の記憶手段1a、第2の記憶手段1b、取得手段1c、関連付け手段1d、および決定手段1eを有する。第1の記憶手段1aは、トランザクションの一部として第1のサーバ3で実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求元イベント情報を記憶する。なお図1の例では、第1のサーバ3で発生したイベントのイベント情報には、イベント内容として、処理内容や、処理の開始イベントなのか終了イベントなのかを示す情報が含まれる。第2の記憶手段1bは、第1のサーバ3からのトランザクションの一部の実行要求に応じて第2のサーバ4で実行された処理に関するイベントの発生時刻を示す時刻情報と、該トランザクションの識別子とを含む要求先イベント情報を記憶する。なお図1の例では、第1のサーバ3で発生したイベントのイベント情報には、さらに処理内容を示す情報がイベント内容として含まれる。なお、第1の記憶手段1aと第2の記憶手段1bとの一部のイベント情報には、トランザクション識別子が付与されていなくてもよい。例えば図1の例では、第1の記憶手段1aには、トランザクション識別子が付与されている要求元イベント情報のみが格納されている。他方第2の記憶手段1bには、トランザクション識別子が付与されている要求先イベント情報と、トランザクション識別子が付与されていないイベント情報トランザクション不明イベント情報とが格納されている。取得手段1cは、キャプチャ装置5から第1のサーバ3で実行された処理に関する要求元イベント情報を取得し、第1の記憶手段1aに格納する。また取得手段1cは、第2のサーバ4から、第2のサーバ4で実行された処理に関する要求先イベント情報を取得し、第2の記憶手段1bに格納する。関連付け手段1dは、第1の記憶手段1aと第2の記憶手段1bとを参照し、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とを関連付ける。決定手段1eは、関連付けられた要求元イベント情報と要求先イベント情報との間で時刻情報を比較する。そして決定手段1eは、第1の記憶手段1aに格納された要求元イベント情報の時刻情報と、第2の記憶手段1bに格納された要求先イベント情報の時刻情報との間の時刻のずれを補正する補正値1fを決定する。例えば決定手段1eは、第1のサーバで実行された処理の開始を示す要求元イベント情報と該処理の終了を示す要求元イベント情報とのイベント情報対を生成する。次に決定手段1eは、生成したイベント情報対を構成する各要求元イベント情報の時刻情報に基づき、処理の実行期間を判断する。さらに決定手段1eは、生成したイベント情報対を構成する要求元イベント情報と同一のトランザクションの識別子を含む要求先イベント情報の時刻情報を補正した場合に、補正後の時刻を該実行期間内とすることができる適合時間幅を決定する。そして決定手段1eは、適合時間幅内の時間を、補正値1fに決定する。例えば決定手段1eは、トランザクションの識別子を含む要求先イベント情報ごとに適合時間幅を計算する。そして決定手段1eは、要求先イベント情報それぞれの適合時間幅の重複範囲内の時間を、補正値1fに決定する。このようなシステムによれば、端末装置2からの処理要求に応じて、第1のサーバ3と第2のサーバ4とでトランザクション処理が実行される。第1のサーバ3で実行された処理に関する要求元イベント情報は、キャプチャ装置5で記録される。第2のサーバ4で実行された処理に関する要求先イベント情報は、第2のサーバ4で記録される。このとき、キャプチャ装置5と第2のサーバ4との間に、内部時計にずれがあれば、それぞれで記録したイベント情報に付与される時刻情報にもずれが生じる。そこで、情報処理装置1によって、時刻ずれの補正値1fが判断される。例えば情報処理装置1の取得手段1cにより、キャプチャ装置5から要求元イベント情報が取得され、第1の記憶手段1aに格納される。また取得手段1cにより、第2のサーバ4から要求先イベント情報が取得され第2の記憶手段1bに格納される。次に関連付け手段1dにより、同一のトランザクションの識別子を含む要求元イベント情報と要求先イベント情報とが関連づけられる。例えば図1の例であれば、第1の記憶手段1a内のトランザクションの識別子tid1を有する上位2つの要求元イベント情報と、第2の記憶手段1b内のトランザクションの識別子tid1を有する最上位の要求先イベント情報とが関連づけられる。同様に、トランザクションの識別子tid2を有する要求元イベント情報と要求先イベント情報とが関連づけられる。さらにトランザクションの識別子tid3を有する要求元イベント情報と要求先イベント情報とが関連づけられる。次に決定手段1eによって、補正値1fが決定される。例えば決定手段1eにより、同一のトランザクションの識別子を含む複数の要求元イベント情報のうちの、処理の開始を示す要求元イベント情報と該処理の終了を示す要求元イベント情報それぞれの時刻情報に基づき、処理の実行期間が判断される。図1の例では、トランザクション識別子tid1に対応する第1のサーバ3の処理の実行期間は3.10~3.20秒である。トランザクション識別子tid2に対応する第1のサーバ3の処理の実行期間は3.30~3.40秒である。トランザクション識別子tid3に対応する第1のサーバ3の処理の実行期間は3.50~3.59秒である。さらに決定手段1eにより、複数の要求元イベント情報と同一のトランザクションの識別子を含む要求先イベント情報の時刻情報の補正後の時刻を、要求元イベント情報に対応する処理の実行期間内とすることができる適合時間幅が判断される。図1の例では、トランザクション識別子tid1の第2のサーバ4のイベント情報の時刻情報は3.05秒である。この時刻情報3.05秒に対して補正を行った後に、トランザクション識別子tid1に対応する処理の実行期間内とする適合時間幅は、0.05~0.15である。同様に、トランザクション識別子tid2の第2のサーバ4のイベント情報の時刻情報3.31秒に対する適合時間幅は、-0.01~0.09である。またトランザクション識別子tid3の第2のサーバ4のイベント情報の時刻情報3.43秒に対する適合時間幅は、0.07~0.16である。そして決定手段1eにより、第2のサーバ4のイベント情報ごとに算出された適合時間幅に基づいて、補正値1fが決定される。例えば複数のトランザクションそれぞれの適合時間幅の重複範囲内の時間が、補正値1fに決定される。図1の例では、適合時間幅の重複範囲は0.07~0.09秒である。そこで、例えば重複範囲の中間値0.08が補正値1fに決定される。このように第1の実施の形態では、第1のサーバ3のイベント情報と第2のサーバ4のイベント情報とがトランザクション識別子で関連付けられ、関連付けられたイベント情報の時刻情報を比較することで、補正値1fが決定される。決定された補正値1fを用いて、第1の記憶手段1a内の要求元イベント情報の第2の記憶手段1b内の要求先イベント情報との時刻のずれを補正すれば、要求元イベント情報と要求先イベント情報とを、対応するイベントの発生順に正しく並べることができる。しかもトランザクションの識別子を持たないイベント情報がある場合でも、イベント情報の時刻のずれを補正することができる。そのため、一つのトランザクションに関連するすべての情報をより正確に収集することができるようになる。個々のトランザクションの情報を正確に収集できれば、トランザクション内の処理ごとの所要時間をアプリケーション本体から外部の通信に至るまでトランザクションごとに計測できるようになる。そのため、システムの不具合や性能の監視、ボトルネックの検出などを、正確に行うことが可能になる。その結果、例えばトランザクション分析の信頼性が向上する。なお図1の例では、第2の記憶手段1b内の要求先イベント情報の時刻情報を補正するための補正値1fを決定しているが、時刻のずれは相対的なものである。そのため、第1の記憶手段1a内の要求先イベント情報の時刻情報を補正するための補正値を決定してもよい。例えば図1に示す補正値1fの値0.08の符号を逆にし、-0.08とすれば、第1の記憶手段1a内の要求先イベント情報の時刻情報を補正するための補正値となる。なお、取得手段1c、関連付け手段1d、および決定手段1eは、情報処理装置1が有するCPUCentralProcessingUnitにより実現することができる。また、第1の記憶手段1aおよび第2の記憶手段1bは、情報処理装置1が有するRAMRandomAccessMemoryやハードディスクドライブHDDHardDiskDriveなどにより実現することができる。また、図1に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。第2の実施の形態次に第2の実施の形態について説明する。第2の実施の形態は、トランザクションの分析を行う分析装置において、トランザクションの分析に先立って時刻情報の補正値を決定するものである。なお、第2の実施の形態では、WWWWorldWideWebを用いたサーバビスを提供するWeb3階層システムの例を用いる。Web3階層システムでは、トランザクションの処理が、WWWによるサービスの入口となるWebレイヤ、各種データ処理を行うアプリケーションレイヤ、およびデータを管理するDBレイヤの3つのレイヤ階層に分かれる。Web3階層システムでは、Webレイヤが最上位である。Webレイヤの下位にアプリケーションレイヤが存在する。さらにアプリケーションレイヤの下位に、DBレイヤが存在する。また第2の実施の形態では、第1の実施の形態のイベント情報の一例として、各サーバに入出力されたメッセージに関する情報メッセージ情報を取得する。例えばサーバにリクエストメッセージが入力されれば、そのサーバでの処理の開始イベントが発生したものと認識できる。また、サーバからレスポンスメッセージが出力されれば、そのサーバでの処理の終了イベントが発生したものと認識できる。図2は、第2の実施の形態のシステム構成の一例を示す図である。図2には、Web3階層システムを用いてサービスを提供するシステムの例が示されている。このシステムでは、端末装置31~33がネットワーク21、スイッチ22を介してWebサーバ41に接続されている。端末装置31~33は、サービスの提供を受けるユーザが使用するコンピュータ、携帯端末装置などの機器である。スイッチ22は、例えばレイヤ2スイッチである。またスイッチ22は、中継するパケットの信号を分岐させて出力するキャプチャポートを備えている。スイッチ22のキャプチャポートには、キャプチャ装置44が接続されている。Webサーバ41は、WWWによる情報通信機能を備えたコンピュータである。Webサーバ41は、端末装置31~33からの要求に応じて、処理を実行し、処理結果を応答する。またWebサーバ41は、処理の実行過程でアプリケーションサーバ42の処理機能を利用する場合、アプリケーションサーバ42に処理要求を送信し、処理結果の応答を受け取る。なおWebサーバ41は、例えば端末装置31~33から処理を要求するリクエストメッセージを受信すると、そのリクエストメッセージに応じて実行するトランザクションを一意に識別するトランザクションIDを生成する。そしてWebサーバ41は、トランザクションの処理の一部をアプリケーションサーバ42に依頼する場合、そのトランザクションのトランザクションIDを付与したリクエストメッセージをアプリケーションサーバ42に送信する。さらにWebサーバ41は、トランザクションの処理結果を示すレスポンスメッセージに、そのトランザクションのトランザクションIDを付与する。アプリケーションサーバ42は、各種アプリケーションソフトウェアを実行するコンピュータである。アプリケーションサーバ42は、Webサーバ41からの要求に応じて処理を実行し、実行結果を応答する。なおアプリケーションサーバ42は、処理の実行過程でDBサーバ43が管理するデータへのアクセス処理が発生した場合、DBサーバ43にデータアクセスの処理要求を送信し、処理結果の応答を受け取る。またアプリケーションサーバ42は、実行した処理に関連して送受信したメッセージアプリケーションメッセージの履歴を、タイムスタンプ時刻情報を付加して記憶する。なおアプリケーションサーバ42は、DBサーバ43に送信するリクエストメッセージの少なくとも一部に、アプリケーションサーバ42からのリクエストメッセージに含まれていたトランザクションIDを付与する。DBサーバ43は、スイッチ23を介してアプリケーションサーバ42に接続されている。DBサーバ43は、データベースを有し、そのデータベースを管理するコンピュータである。DBサーバ43は、Webサーバ41からの要求に応じて処理を実行し、実行結果を応答する。スイッチ23は、例えばレイヤ2スイッチである。またスイッチ23は、中継するパケットの信号を分岐させて出力するキャプチャポートを備えている。スイッチ23のキャプチャポートには、キャプチャ装置45が接続されている。キャプチャ装置44は、スイッチ22を介して端末装置31~33それぞれと、Webサーバ41との間で送受信されたパケットを取得するコンピュータである。そしてキャプチャ装置44は、取得したパケットに含まれるメッセージWebメッセージを解析し、タイムスタンプを付加して記憶する。キャプチャ装置45は、スイッチ23を介してアプリケーションサーバ42とDBサーバ43との間で送受信されたパケットを取得するコンピュータである。そしてキャプチャ装置45は、取得したパケットに含まれるメッセージDBメッセージを解析し、タイムスタンプを付加して記憶する。分析装置100は、ネットワーク24を介してアプリケーションサーバ42、およびキャプチャ装置44,45に接続されている。分析装置100は、Webサーバ41、アプリケーションサーバ42、およびDBサーバ43によって処理が実行された一連のトランザクションを分析するコンピュータである。例えば分析装置100は、キャプチャ装置44から、端末装置31~33それぞれと、Webサーバ41との間で送受信されたメッセージの情報を取得する。また分析装置100は、アプリケーションサーバ42から、Webサーバ41とアプリケーションサーバ42との間で送受信されたメッセージの情報を取得する。さらに分析装置100は、キャプチャ装置45から、アプリケーションサーバ42とDBサーバ43との間で送受信されたメッセージに関するメッセージ情報を取得する。そして分析装置100は、取得したメッセージ情報を解析し、例えばトランザクションの種別毎の各サーバでの平均処理時間などを解析する。分析装置100は、メッセージを解析する際に、同一トランザクションの処理に関するメッセージ同士の関連付けを行う。そして分析装置100は、各トランザクションに関するメッセージを解析することで、例えばトランザクションのレイヤごとの処理時間の分析が可能となる。なお、同一トランザクションの処理であれば、上位レイヤの処理の開始から終了までの実行期間内に、下位レイヤの処理の実行期間は包含される。従って、上位レイヤへのリクエストメッセージとレスポンスメッセージとの間に、同一トランザクションにおける下位レイヤのリクエストメッセージやレスポンスメッセージが発生する。このような条件を満たすメッセージ同士を関連付けることで、同一トランザクションにおいて発生したメッセージの集合を生成することができる。この条件を満たすか否かは、例えば各メッセージを時系列に並べることで判断できる。ここで、各メッセージに付与されたタイムスタンプの時刻が正確であれば、メッセージを正しく時系列で並べることができる。しかし、第2の実施の形態では、Webメッセージのタイムスタンプは、キャプチャ装置44によって付加される。アプリケーションメッセージのタイムスタンプは、アプリケーションサーバ42によって付加される。DBメッセージのタイムスタンプは、キャプチャ装置45によって付加される。するとアプリケーションサーバ42と各キャプチャ装置44,45の内部時計の時刻にずれがある場合、タイムスタンプで示された時刻にもずれが生じる。またアプリケーションサーバ42と各キャプチャ装置44,45との内部時計の時刻が一致していたとしても、タイムスタンプを設定するプロセスの処理タイミングの違いにより、例えば0.01秒単位での微妙な時刻のずれが生じる。このような時刻のずれにより、メッセージを、そのメッセージが送信された順に正しく時系列に並べるのが困難となる。そこで分析装置100では、異なる機器でタイムスタンプが付与されたメッセージ間の時刻を補正する補正値を算出し、時刻の補正を行ったうえでメッセージを時系列に並べる。これにより、上位の処理と、その処理に呼び出されて実行された下位の処理の時間的な包含関係が正しく再現され、同一トランザクションに含まれるメッセージ集合を正しく判定可能となる。このような処理を実現する分析装置100は、例えば以下のようなハードウェアで構成される。図3は、第2の実施の形態に用いる分析装置のハードウェアの一構成例を示す図である。分析装置100は、CPU101によって装置全体が制御されている。CPU101には、バス108を介してRAM102と複数の周辺機器が接続されている。RAM102は、分析装置100の主記憶装置として使用される。RAM102には、CPU101に実行させるOSOperatingSystemのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。バス108に接続されている周辺機器としては、HDD103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、および通信インタフェース107がある。HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、分析装置100の二次記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ11の画面に表示させる。モニタ11としては、CRTCathodeRayTubeを用いた表示装置や液晶表示装置などがある。入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号をCPU101に送信する。なお、マウス13は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。光学ドライブ装置106は、レーザ光などを利用して、光ディスク14に記録されたデータの読み取りを行う。光ディスク14は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク14には、DVDDigitalVersatileDisc、DVD-RAM、CD-ROMCompactDiscReadOnlyMemory、CD-RRecordable/RWReWritableなどがある。通信インタフェース107は、ネットワーク24に接続されている。通信インタフェース107は、ネットワーク24を介して、アプリケーションサーバ42、またはキャプチャ装置44,45との間でデータの送受信を行う。以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、第1の実施の形態に示した情報処理装置1も、図3に示した分析装置と同様のハードウェアにより実現することができる。図4は、分析装置の機能の一例を示すブロック図である。分析装置100は、メッセージ収集部110、Webメッセージ記憶部120、アプリケーションメッセージ記憶部130、DBメッセージ記憶部140、補正値決定部150、補正値記憶部160、トランザクション分析部170、および表示部180を有する。メッセージ収集部110は、アプリケーションサーバ42、および各キャプチャ装置44,45からメッセージを収集する。例えばメッセージ収集部110は、キャプチャ装置44から、キャプチャ装置44が記憶しているWebメッセージを取得し、Webメッセージ記憶部120に格納する。またメッセージ収集部110は、アプリケーションサーバ42から、アプリケーションサーバ42が記憶しているアプリケーションメッセージを取得し、アプリケーションメッセージ記憶部130に格納する。さらにメッセージ収集部110は、キャプチャ装置45から、キャプチャ装置45が記憶しているDBメッセージを取得し、DBメッセージ記憶部140に格納する。Webメッセージ記憶部120は、端末装置31~33とWebサーバ41との間で送受信されたWebメッセージを記憶する。例えばRAM102またはHDD103の記憶領域の一部が、Webメッセージ記憶部120として使用される。アプリケーションメッセージ記憶部130は、Webサーバ41とアプリケーションサーバ42との間で送受信されたアプリケーションメッセージを記憶する。例えばRAM102またはHDD103の記憶領域の一部が、アプリケーションメッセージ記憶部130として使用される。DBメッセージ記憶部140は、アプリケーションサーバ42とDBサーバ43との間で送受信されたDBメッセージを記憶する。例えばRAM102またはHDD103の記憶領域の一部が、DBメッセージ記憶部140として使用される。補正値決定部150は、Webメッセージ、アプリケーションメッセージ、DBメッセージ間の時刻情報の補正値を計算する。補正値決定部150は、算出した補正値を補正値記憶部160に格納する。補正値記憶部160は、Webメッセージ、アプリケーションメッセージ、DBメッセージ間の時刻情報の補正値を記憶する。例えば補正値記憶部160は、Webメッセージとアプリケーションメッセージとの間の補正値、およびアプリケーションメッセージとDBメッセージとの間の補正値とを記憶する。トランザクション分析部170は、補正値記憶部160に格納された補正値に従って各メッセージに付与されたタイムスタンプの時刻を補正し、補正後の時刻に従ってメッセージを時系列に並べる。そしてトランザクション分析部170は、時系列に並べられたメッセージに基づいて、同一トランザクションで送信されたメッセージを関連付ける。そして関連付けられたメッセージの情報に基づいて、トランザクションの各サーバでの処理時間などを分析する。なお、メッセージに基づくトランザクションの分析技術は、例えば、前述の特許文献1に示す特開2006-011683号公報に開示されている。表示部180は、メッセージに付与された時刻の補正値などを表示する。また表示部180は、トランザクション分析部170による分析結果も表示する。なお、図4に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。以上のような機能を有する分析装置100により、Web3階層システムで実行されたトランザクションが再現され、トランザクションの分析が行われる。なお、メッセージ収集部110は、図1に示した第1の実施の形態における取得手段1cの一例である。補正値決定部150は、図1に示した第1の実施の形態における関連付け手段1dと決定手段1eとを合わせた機能の一例である。Webメッセージ記憶部120は、図1に示した第1の実施の形態における第1の記憶手段1aの一例である。アプリケーションメッセージ記憶部130は、Webメッセージとアプリケーションメッセージとの間の時刻補正の補正値を決定する際には、図1に示した第1の実施の形態における第2の記憶手段1bの一例となる。またアプリケーションメッセージ記憶部130は、アプリケーションメッセージとDBメッセージとの間の時刻補正の補正値を決定する際には、図1に示した第1の実施の形態における第1の記憶手段1aの一例となる。DBメッセージ記憶部140は、図1に示した第1の実施の形態における第2の記憶手段1bの一例である。次に、トランザクション分析処理の手順について説明する。図5は、トランザクション分析処理の手順を示すフローチャートである。以下、図5に示す処理をステップ番号に沿って説明する。[ステップS101]メッセージ収集部110は、アプリケーションサーバ42、および各キャプチャ装置44,45からメッセージ情報を収集する。例えばメッセージ収集部110は、管理者の操作などによるトランザクション分析の指示が入力されると、メッセージ情報を収集する。メッセージ収集部110は、キャプチャ装置44から収集したメッセージ情報をWebメッセージ記憶部120に格納する。またメッセージ収集部110は、アプリケーションサーバ42から収集したメッセージ情報をアプリケーションメッセージ記憶部130に格納する。さらにメッセージ収集部110は、キャプチャ装置45から収集したメッセージ情報をDBメッセージ記憶部140に格納する。[ステップS102]補正値決定部150は、レイヤごとのメッセージに付与された時刻の補正値を算出する。例えば補正値決定部150は、Webメッセージの時刻を基準として、アプリケーションメッセージの時刻の補正値を算出する。また補正値決定部150は、アプリケーションメッセージの時刻を基準として、DBメッセージの補正値を算出する。補正値決定部150は、算出した補正値を補正値記憶部160に格納する。なお補正値決定処理の詳細は後述する図9参照。[ステップS103]トランザクション分析部170は、補正値記憶部160を参照し、各メッセージの補正値を認識する。そしてトランザクション分析部170は、Webメッセージ記憶部120、アプリケーションメッセージ記憶部130、およびDBメッセージ記憶部140からメッセージを取り出す際に、タイムスタンプの時刻を補正し、トランザクションの分析を行う。[ステップS104]表示部180は、トランザクション分析の結果を表示する。また表示部180は、補正値決定部150による時刻の補正値および算出根拠を示す情報を表示することもできる。次に、メッセージ収集部110で収集されたメッセージ情報について、図6~図8を参照して説明する。図6は、Webメッセージ記憶部のデータ構造の一例を示す図である。Webメッセージ記憶部120内には、Webメッセージ管理テーブル121が設けられている。Webメッセージ管理テーブル121には、タイムスタンプ、種別、URLUniformResourceLocator、セッションID、およびトランザクションIDの欄が設けられている。Webメッセージ管理テーブル121の各行に、Webメッセージに関する情報が登録されている。タイムスタンプの欄には、Webメッセージをキャプチャ装置44が取得した時刻タイムスタンプが設定される。このタイムスタンプは、キャプチャ装置44の内部時計に基づいて設定されている。種別の欄には、Webメッセージの種別が設定される。種別は、例えばリクエストメッセージとレスポンスメッセージとがある。図6の例では、リクエストメッセージの場合、種別の欄にreqと設定される。またレスポンスメッセージの場合、種別の欄にresと設定される。URLの欄には、リクエストメッセージにおけるアクセス先のURLが設定される。セッションIDの欄には、端末装置31~33とWebサーバ41との間の通信のセッションを一意に示すIDセッションIDが設定される。セッションIDが同じリクエストメッセージとレスポンスメッセージとの対メッセージ対により、そのリクエストメッセージに応じて実行された処理の開始時刻と終了時刻とが示される。トランザクションIDの欄には、端末装置からの要求に応じて実行されるトランザクションを一意に識別するIDトランザクションIDが設定される。メッセージ対のレスポンスメッセージに示されるトランザクションIDにより、そのメッセージ対に対応する処理のトランザクションが一意に示される。図7は、アプリケーションメッセージ記憶部のデータ構造の一例を示す図である。アプリケーションメッセージ記憶部130内には、アプリケーションメッセージ管理テーブル131が設けられている。アプリケーションメッセージ管理テーブル131には、スタート/エンド、トランザクションID、タイムスタンプ、クラス名、およびメソッド名の欄が設けられている。アプリケーションメッセージ管理テーブル131の各行に、アプリケーションメッセージに関する情報が登録されている。スタート/エンドの欄には、アプリケーションサーバ42において、処理開始の契機となるリクエストメッセージを受信したのか、処理の完了により、処理結果を示すレスポンスメッセージを送信したのかを示す情報が設定される。アプリケーションサーバ42がリクエストメッセージを受信したのであれば、処理の開始スタートを示すフラグSが設定される。アプリケーションサーバ42がレスポンスメッセージを送信したのであれば、処理の終了エンドを示すフラグEが設定される。トランザクションIDの欄には、アプリケーションサーバで実行された処理に対応するトランザクションのトランザクションIDが設定される。タイムスタンプの欄には、アプリケーションサーバ42がメッセージを受信または送信した時刻が設定される。クラス名の欄には、トランザクションの処理の一環として、アプリケーションサーバ42で実行された処理のクラス名が設定される。メソッド名の欄には、トランザクションの処理の一環として、アプリケーションサーバ42で実行された処理のメソッド名が設定される。なお、アプリケーションサーバ42における特定の処理の開始のアプリケーションメッセージと終了のメッセージとには、同じトランザクションID、クラス名、メソッド名が設定される。従ってトランザクションID、クラス名、メソッド名が同じ、スタートSのアプリケーションメッセージとエンドEのアプリケーションメッセージとのタイムスタンプにより、そのトランザクションIDに対応する処理の実行期間が求められる。また図7の例では、同じトランザクションIDの複数のスタートのアプリケーションメッセージが存在する。これは、Webサーバ41が、一つのトランザクション中で複数回、アプリケーションサーバ42にリクエストメッセージを送信したためである。図8は、DBメッセージ記憶部のデータ構造の一例を示す図である。DBメッセージ記憶部140内には、DBメッセージ管理テーブル141が設けられている。DBメッセージ管理テーブル141には、タイムスタンプ、トランザクションID、種別プロトコル、SQLコマンド/データの欄が設けられている。DBメッセージ管理テーブル141の各行に、DBメッセージに関する情報が登録されている。タイムスタンプの欄には、キャプチャ装置45によってDBメッセージに付与されたタイムスタンプが設定される。トランザクションIDの欄には、DBメッセージに付与されたトランザクションIDが設定される。種別プロトコルの欄には、DBメッセージがリクエストメッセージなのかレスポンスメッセージなのかの種別と、DBメッセージのプロトコルが設定される。SQLコマンド/データの欄には、DBメッセージに含まれていたSQLコマンドとデータとが設定される。図6~図8に示したレイヤごとのメッセージ情報に基づいて、トランザクション分析が可能となる。第2の実施の形態では、トランザクション分析に先だって、メッセージの時刻の補正値が算出される。以下、補正値の算出処理の手順について詳細に説明する。図9は、補正値決定処理の手順を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。[ステップS111]補正値決定部150は、上下に隣接する2つのレイヤのうち、時刻の補正値を算出していないレイヤの組を選択する。例えば補正値決定部150は、Webレイヤとアプリケーションレイヤの組、またはアプリケーションレイヤとDBレイヤの組を選択する。[ステップS112]補正値決定部150は、時間ウィンドウの範囲を決定する。時間ウィンドウは、補正値決定のための解析対象とする時間幅である。例えば補正値決定部150は、選択したレイヤのメッセージに付与されたタイムスタンプに示される最古の時刻から最新の時刻までの時間帯内の、所定の時間幅例えば1分の時間帯を、時間ウィンドウとする。[ステップS113]補正値決定部150は、選択した2つのレイヤのうちの上位レイヤについて、時間ウィンドウ内の時刻情報を有し、かつトランザクションIDを有するメッセージを選択する。そして補正値決定部150は、選択したメッセージに関連する処理の、開始を示すメッセージと終了を示すメッセージとを関連付ける。関連付けられた2つのメッセージを、メッセージ対とする。例えば図6に示したWebレイヤのメッセージであれば、種別リクエストreqのメッセージが処理の開始を示し、種別レスポンスresのメッセージが処理の終了を示す。また同一のセッションIDが付与されたメッセージが、同じ処理に関するメッセージである。また図7に示したアプリケーションレイヤのメッセージであれば、スタートSのフラグが設定されたメッセージが、処理の開始を示し、エンドEのフラグが設定されたメッセージが、処理の終了を示す。アプリケーションレイヤのメッセージの場合、トランザクションID、クラス名、およびメソッド名が同一の、開始と終了とのメッセージ同士が関連付けられる。関連付けられた開始と終了との各メッセージにタイムスタンプより、それらのメッセージに対応する処理の開始時刻から終了時刻までの時間帯が判別できる。[ステップS114]補正値決定部150は、選択した2つのレイヤのうちの下位レイヤについて、トランザクションIDが付与されたメッセージを、同じトランザクションに関する上位レイヤのメッセージ対に関連付ける。[ステップS115]補正値決定部150は、対応付けられた上位レイヤのメッセージ対の開始から終了までの時間帯内に下位レイヤのメッセージの時刻が入る範囲での、下位のメッセージの時刻の適合時間幅を求める。この処理は、時間ウィンドウ内のトランザクションIDが付与された下位レイヤのメッセージごとに行われる。なお、下位レイヤのメッセージの時刻が、そのメッセージと同じトランザクションIDを有する上位レイヤのメッセージ対の開始から終了の時間帯内に納まることを、トランザクションIDが適合すると呼ぶこととする。[ステップS116]補正値決定部150は、適合率を調査する補正値候補の最小値と最大値とを求める。適合率は、時刻を補正した際に、下位レイヤのトランザクションIDが付与されたメッセージのうち、補正後の時刻が、上位レイヤの同一トランザクションIDの処理の実行期間内に含まれるメッセージの割合である。調査する補正値候補の最小値は、下位レイヤのメッセージごとの適合時間幅のうちの最小値である。調査するずれ量の最小値は、下位レイヤのメッセージごとの適合時間幅のうちの最大値である。例えば、下位レイヤの3つのメッセージそれぞれの適合時間幅が、0.05~0.15、-0.01~0.09、0.07~0.16であるものとする。この場合、最小値は、2つめの時間幅内の-0.01であり、最大値は3つめの時間幅内の0.16である。得られた最小値から最大値の範囲-0.01~0.16が、適合率を調査する範囲となる。適合率は、トランザクションIDが付与された下位レイヤのメッセージのうち、トランザクションIDが適合するメッセージの数である。[ステップS117]補正値決定部150は、ステップS116で得られた最小値から最大値までの時刻の補正幅の範囲で、適合率が最も高くなる補正値候補を、補正値に決定する。例えば補正値決定部150は、最小値から最大値までの時刻の補正幅の範囲で、所定値例えば0.01秒刻みの値を、補正値候補とする。そして補正値決定部150は、補正値候補ごとに、その補正値候補を適合時間幅内に含む下位レイヤのメッセージの割合を求め、適合率とする。そして補正値決定部150は、適合率が最も高い補正値候補を、補正値に決定する。補正値決定部150は、決定した補正値を、上位レイヤと下位レイヤとの組に対応付けて、補正値記憶部160に格納する。[ステップS118]補正値決定部150は、上下に隣接する2つのレイヤの組うち、補正値の決定処理が未処理のレイヤの組があるか否かを判断する。補正値決定部150は、補正値を決定していないレイヤの組があれば、処理をステップS111に進める。また補正値決定部150は、上下に隣接する2つのレイヤの組のすべてについて補正値を決定した場合、補正値決定処理を終了し、図5のステップS103に処理を進める。以上のような処理により、上下に隣接するレイヤ間の補正値が決定される。以下、アプリケーションサーバ42で行われた処理アプリケーションレイヤを上位レイヤとし、DBサーバ43で行われた処理DBレイヤを下位レイヤとする場合の補正値の決定例について説明する。図10は、分析装置で検出されたメッセージの一例を示す図である。図10には、Webサーバ41とアプリケーションサーバ42との間で通信されたメッセージ51~56と、アプリケーションサーバ42とDBサーバ43との間で通信されたメッセージ61~66とが時系列で示されている。トランザクションIDを含むメッセージの上には、トランザクションIDが示されている。以下、Webサーバ41とアプリケーションサーバ42との間で通信されたメッセージ51~56を時系列で並べた情報を、アプリケーションレイヤストリームとする。またアプリケーションサーバ42とDBサーバ43との間で通信されたメッセージ61~66を時系列で並べた情報を、DBレイヤストリームとする。アプリケーションレイヤストリームに含まれるメッセージ51~56は、アプリケーションサーバ42から収集した情報に基づいて再現したものである。アプリケーションレイヤストリームに含まれるメッセージ51~56の左には、そのメッセージに付与されたタイムスタンプの時刻秒単位が示されている。アプリケーションレイヤストリームに含まれるメッセージ51~56に示された時刻は、メッセージ検出時のアプリケーションサーバ42の内部時計の時刻である。DBレイヤストリームに含まれるメッセージ61~66は、キャプチャ装置45から収集した情報に基づいて再現されたものである。DBレイヤストリームに含まれるメッセージ61~66の右には、そのメッセージに付与されたタイムスタンプの時刻秒単位が示されている。DBレイヤストリームに含まれるメッセージ61~66に示された時刻は、メッセージ検出時のキャプチャ装置45の内部時計の時刻である。図10に示す各レイヤのストリームに基づいて、補正値決定部150により、上位レイヤであるアプリケーションレイヤにおける同一トランザクションIDを有する開始と終了との各メッセージが対応付けられる。例えば、時刻3.10のリクエストのメッセージ51と、時刻3.20のレスポンスのメッセージ52とが対応付けられる。さらに補正値決定部150により、下位レイヤであるDBレイヤストリームにおけるトランザクションIDが付与されたメッセージが、アプリケーションレイヤストリームにおける同じトランザクションIDのメッセージに関連付けられる。例えば、DBレイヤストリームにおける時刻3.05のリクエストのメッセージ61が、アプリケーションレイヤストリームにおけるメッセージ51,52に関連付けられる。そして関連付けられた異なるレイヤのメッセージに基づいて、下位レイヤのメッセージの時刻が、同じトランザクションIDの上位レイヤのメッセージの開始から終了までの時間に入るようにするための、適合時間幅が求められる。求められた適合時間幅は、例えば、補正値決定部150によってRAM102内に一時的に格納される。図11は、適合時間幅情報の一例を示す図である。適合時間幅情報151では、アプリケーションレイヤのメッセージ対と同じ行に、そのメッセージ対に関連付けられたDBレイヤのメッセージが示されている。アプリケーションレイヤのメッセージ対は、開始のメッセージに付与された時刻、終了のメッセージに付与された時刻、およびそれらのメッセージのトランザクションIDで表されている。DBレイヤのメッセージは、そのメッセージに付与された時刻、およびそのメッセージのトランザクションIDで示されている。図11に示すように、アプリケーションレイヤにおける開始終了のメッセージ対に対して、そのメッセージ対と同じトランザクションIDを有するDBレイヤのメッセージが関連付けられている。さらに適合時間幅情報151には、DBレイヤのメッセージに対応付けて、そのメッセージの適合時間幅が設定されている。例えば図11に示すトランザクションIDtid1によって関連付けられた各レイヤのメッセージに着目する。この例では、アプリケーションレイヤのメッセージ対の開始-終了時刻が3.10~3.20秒である。またそのメッセージ対に関連付けられたDBレイヤのメッセージに付与された時刻が3.05秒である。この場合、適合時間幅は、0.05~0.15秒となる。すなわち、この時間幅内であれば、下位レイヤのメッセージの時刻を変動させても、変動後の時刻が上位レイヤのメッセージ対の開始-終了の時間帯内に収まる。次にトランザクションIDtid2によって関連付けられた各レイヤのメッセージに着目する。この例では、アプリケーションレイヤのメッセージ対の開始-終了時刻が3.30~3.40秒である。またそのメッセージ対に関連付けられたDBレイヤのメッセージに付与された時刻が3.31秒である。この場合、適合時間幅は、-0.01~0.09秒となる。次にトランザクションIDtid3によって関連付けられた各レイヤのメッセージに着目する。この例では、アプリケーションレイヤのメッセージ対の開始-終了時刻が3.50~3.59秒である。またそのメッセージ対に関連付けられたDBレイヤのメッセージに付与された時刻が3.43秒である。この場合、適合時間幅は、0.07~0.16秒となる。このような場合、適合率調査の最小値は、トランザクションIDtid2の適合時間幅の最小値-0.01となる。適合率調査の最大値は、トランザクションIDtid3の適合時間幅の最小値0.16となる。そこで、補正値決定部150は、適合率調査の最小値から最大値までの時間幅を、所定間隔で刻んだ補正値候補ごとに、トランザクションIDの適合率を計算する。補正値候補ごとの適合率調査結果は、例えばRAM102内に一時的に格納される。図12は、適合率調査結果の一例を示す図である。適合率調査結果152には、補正値候補に対応付けて、適合率と、トランザクションIDの適合の有無を示すフラグとが設定されている。トランザクションIDの適合の有無を示すフラグは、トランザクションIDが割り当てられた列に、そのトランザクションIDが適合する補正値候補に対応付けて、1が設定される。図12の例では、0.01秒間隔の補正値候補ごとに適合率が求められている。例えば適合率調査の最小値の補正値候補-0.01を補正値とした場合の適合率について説明する。この場合、DBレイヤのトランザクションIDが付与されたメッセージ61,63,65図10参照のうち、適合時間幅に-0.01を含むのは、トランザクションIDtid2のメッセージ63のみである。すなわち3つのメッセージ61,63,65のうち1つのメッセージ63のみトランザクションIDが適合する。その結果、補正値候補-0.01の場合の適合率は、1/333.3となる。また、例えばほぼ中間の補正値候補0.08を補正値とした場合、DBレイヤのトランザクションIDが付与されたメッセージ61,63,65のすべてが、適合時間幅に0.08を含む。その結果、補正値候補0.08の場合の適合率は、3/3100となる。同様に補正値候補0.10を補正値とした場合の適合率は66.7であり、補正値候補0.16を補正値とした場合の適合率は33.3である。図12に示したように、最も高い適合率は100である。また適合率100となる補正値候補は0.07~0.09の範囲である。この範囲内であれば、どの補正値候補をメッセージの時刻の補正に利用する補正値に決定してもよい。例えば適合率100となる補正値候補の範囲の中間点の0.08を補正値としてもよい。また、例えば経験則ヒューリスティックにより範囲の先頭付近が適切である場合が多いと分かっていれば、適合率が最大となる範囲の先頭の補正値候補0.07をメッセージの時刻の補正に利用する補正値に決定してもよい。時刻補正に利用する補正値が決定されると、その補正値が補正値記憶部160に格納される。図13は、補正値記憶部のデータ構造の一例を示す図である。図13の例では、補正値記憶部160に補正値管理テーブル161が格納されている。補正値管理テーブル161には、上位レイヤ、下位レイヤ、および補正値の欄が設けられている。上位レイヤの欄には、補正値決定の対象となる上下に隣接するレイヤのうちの上位のレイヤの名称が設定される。下位レイヤの欄には、補正値決定の対象となる上下に隣接するレイヤのうちの下位のレイヤの名称が設定される。補正値の欄には、上位レイヤと下位レイヤとで示されるレイヤの一方のメッセージの時刻を補正するための補正値が設定される。例えば、下位レイヤのメッセージの時刻を補正する補正値が設定される。図13の例では、Webレイヤとアプリケーションレイヤとの間の補正値は0.03である。またアプリケーションレイヤとDBレイヤとの間の補正値は0.07である。トランザクション分析部170は、収集したメッセージに基づいてトランザクションの分析を行う際に、補正値決定部150で決定された補正値でメッセージの時刻を補正する。例えばWebメッセージ記憶部120の時刻情報を基準として補正を行う場合、トランザクション分析部170は、Webメッセージ記憶部120からメッセージ情報を取得した際には、時刻情報の補正を行わない。他方トランザクション分析部170は、アプリケーションメッセージ記憶部130からメッセージ情報を取得した際には、取得したメッセージ情報の時刻情報に0.03秒を加算する。さらにトランザクション分析部170は、DBメッセージ記憶部140からメッセージ情報を取得した際には、取得したメッセージ情報の時刻情報に0.10秒0.030.07を加算する。これにより、上位レイヤのメッセージ対の開始から終了までの時間帯内に、そのメッセージ対と同じトランザクションIDの下位レイヤのメッセージが含まれるようになる。図14は、時刻補正後のメッセージの一例を示す図である。図14の例は、DBレイヤの各メッセージ61~66の時刻を、補正値0.07で補正したものである。すなわち、各メッセージ61~66に付与されたタイムスタンプに示された時刻に対して0.07秒を加算した時刻を、各メッセージの時刻としている。これにより、トランザクションIDtid1のメッセージ61の時刻は、上位レイヤのトランザクションIDtid1のメッセージ対メッセージ51,52の開始から終了の間に含まれる。同様にトランザクションIDtid2のメッセージ63の時刻は、上位レイヤのトランザクションIDtid2のメッセージ対メッセージ53,54の開始から終了の間に含まれる。トランザクションIDtid3のメッセージ65の時刻は、上位レイヤのトランザクションIDtid3のメッセージ対メッセージ55,56の開始から終了の間に含まれる。このように時刻を補正した後のメッセージ情報に基づいて、トランザクションの分析を行えば、同一トランザクションを構成するメッセージの集合を的確に判断することができる。なお表示部180は、例えば補正値決定部150から適合率調査結果152図12参照を取得し、メッセージの時刻の補正に使用した補正値の決定根拠を表す適合率グラフをモニタ11などに表示することができる。図15は、適合率グラフの表示例を示す図である。適合率グラフ81では、横軸に補正値候補、縦軸に適合率を採っている。適合率グラフ81は、補正値の変化に応じた適合率の変化を折れ線によって表している。図15に示した適合率グラフ81を参照すれば、適合率が100となる補正値候補が、0.07~0.09であることを容易に認識できる。これによりトランザクションの分析を行うユーザは、メッセージの時刻の補正値の決定根拠を知ることができる。また表示部180は、図14に示したようなメッセージ間の包含関係を示す包含関係図をモニタ11に表示することもできる。図16は、包含関係図の表示例を示す図である。包含関係図82には、時刻補正前と補正後とのメッセージのストリームが示されている。ユーザは、包含関係図82を参照することで、時刻補正によって、トランザクションIDが付与されている下位レイヤのメッセージの時刻が、同じトランザクションIDの上位レイヤのメッセージ対の開始から終了までの時間帯に包含されたことを確認できる。すなわち、補正値の妥当性を確認することができる。以上のように、適合率が最大となるように補正値を決定することで、レイヤごとに異なる装置でメッセージにタイムスタンプを付加しても、メッセージに付与された時刻情報のずれを適切に補正できる。また、レイヤごとに同一装置内の異なるプロセスでメッセージにタイムスタンプを付加した場合であっても、プロセス間のタイムスタンプ付加タイミングのずれに基づく時刻情報のずれを適切に補正できる。これにより、例えばトランザクション分析において、トランザクションを正しく再現できるようになる。その結果、トランザクション分析の信頼性が向上する。第3の実施の形態次に第3の実施の形態について説明する。第3の実施の形態は、適合率に加え、カバー率を考慮して補正値を決定するものである。カバー率とは、下位レイヤのメッセージのうち、補正後の時刻が、上位レイヤのいずれかのメッセージ対の開始から終了の間の時刻となるメッセージの割合である。カバー率の計算では、トランザクションIDが付与されていないメッセージも判断の対象となる。なお、第3の実施の形態は、図2~図4に示した第2の実施の形態のシステムと同様の構成のシステムで実現できる。そこで図2~図4に示した各要素の符号を用いて、第3の実施の形態における第2の実施の形態との相違点について説明する。第3の実施の形態では、補正値決定処理が第2の実施の形態と異なる。図17は、第3の実施の形態の補正値決定処理の手順の一例を示すフローチャートである。なおステップS201~S206,S211の処理は、それぞれ図9に示した第2の実施の形態の処理のステップS111~S116,S118と同様である。以下第2の実施の形態と異なる処理についてステップ番号に沿って説明する。[ステップS207]補正値決定部150は、ステップS206で求めた最小値から最大値までの範囲で、トランザクションIDの適合率が100となる補正値の範囲を求める。トランザクションIDの適合率が100となる補正値とは、ステップS205で求めた下位レイヤのすべてのメッセージにおける適合時間幅が重なる範囲である。[ステップS208]補正値決定部150は、適合率100となる時間幅がある場合、処理をステップS209に進める。また補正値決定部150は、適合率100となる時間幅がない場合、処理をステップS210に進める。[ステップS209]補正値決定部150は、適合率100となる時間幅があれば、例えばその時間幅内に所定間隔例えば0.01秒で設定された補正値ごとにカバー率を計算する。カバー率は、以下のようにして算出できる。まず、時間ウィンドウ内で下位レイヤのすべてのリクエストメッセージのうち、上位レイヤのいずれかのトランザクション対の開始から終了の時間幅に収まる数をAとする。また時間ウィンドウ内の下位レイヤのリクエストメッセージ数をBとする。このとき、カバー率はA/Bとなる。A/Bの値を100倍すれば、カバー率をパーセンテージで表すことができる。なおカバー率として、下位レイヤのリクエストメッセージに限定せず、下位レイヤのすべてのメッセージのカバー率を計算してもよい。その場合、時間ウィンドウ内で下位レイヤのすべてのメッセージのうち、上位レイヤのいずれかのトランザクション対の開始から終了の時間幅に収まる数をCとする。また時間ウィンドウ内の下位レイヤのメッセージ数をDとする。このとき、カバー率はC/Dとなる。補正値決定部150は、適合率が100の範囲内においてカバー率が最も良い補正値を、メッセージの時刻補正に適用する補正値に決定する。その後、補正値決定部150は、処理をステップS211に進める。[ステップS210]補正値決定部150は、適合率100となる時間幅がなければ、適合率調査の最小値から最大値の範囲で、最もトランザクションIDの適合率が高くなる補正値を選択する。その後、補正値決定部150は、処理をステップS211に進める。このような処理により、適合率とカバー率とに基づいて、メッセージの時刻の補正に適用する補正値を決定することができる。なお補正値決定部150は、ステップS209,S210で求めた適合率とカバー率との調査結果を、例えばRAM102に格納する。図18は、適合率/カバー率調査結果の一例を示す図である。適合率/カバー率調査結果153には、補正値候補に対応付けて、適合率、トランザクションIDの適合の有無を示すフラグ、メッセージの被包含を示すフラグ、およびカバー率が設定されている。この適合率/カバー率調査結果153は、図12に示した適合率調査結果152に対し、補正値候補ごとの、メッセージの被包含を示すフラグとカバー率とを追加したものである。メッセージの被包含を示すフラグは、メッセージの識別子msg1~msg6に対応付けて設定されている。当該フラグは、対応する識別子で示されるメッセージの時刻が、上位レイヤのいずれかのメッセージ対の開始から終了までの範囲に含まれる場合に1が設定される。図18に示すような適合率/カバー率調査結果153が得られた場合、補正値候補0.07~0.09の範囲で適合率が100になっている。そこで、その範囲でのカバー率が調べられる。すると、補正値候補0.07~0.08の範囲におけるカバー率が4/6=66.7、補正値候補0.09でのカバー率が100となっている。そこで補正値決定部150は、下位レイヤのメッセージの時刻の補正値として0.09を選択する。仮にカバー率が100の範囲に幅がある場合0.07~0.09でカバー率100になる場合などは、この間のどの値を選んでもよい。中間点の0.08を使う事や、ヒューリスティックにより、例えば範囲の先頭付近を選ぶ事が考えられる。トランザクション分析部170は、収集したメッセージに基づいてトランザクションの分析を行う際に、補正値決定部150で決定された補正値でメッセージの時刻を補正する。これにより、上位レイヤのメッセージ対の開始から終了までの時間帯内に、そのメッセージ対と同じトランザクションIDのメッセージが含まれるようになる。また、下位レイヤのメッセージの時刻は、上位レイヤのいずれかのメッセージ対の開始から終了までの時間帯に含まれるようになる。図19は、時刻補正後のメッセージの一例を示す図である。図19の例は、DBレイヤの各メッセージ61~66の時刻を、補正値0.09で補正したものである。すなわち、各メッセージ61~66に付与されたタイムスタンプに示された時刻に対して0.09秒を加算した時刻を、各メッセージの時刻としている。これにより、トランザクションIDが付与された下位レイヤのメッセージ61,63,65の時刻は、上位レイヤの同じトランザクションIDのメッセージ対の開始から終了の間に含まれる。また下位レイヤのすべてのメッセージ61~66の時刻が、上位レイヤのいずれかのメッセージ対の開始から終了の間に含まれる。このように時刻を補正した後のメッセージ情報に基づいて、トランザクションの分析を行えば、同一トランザクションを構成するメッセージの集合を的確に判断することができる。また表示部180は、例えば補正値決定部150から適合率/カバー率調査結果153図18参照を取得し、メッセージの時刻の補正に使用した補正値の決定根拠を表す適合率グラフをモニタ11などに表示することができる。図20は、適合率/カバー率グラフの表示例を示す図である。適合率/カバー率グラフ83では、横軸に補正値候補、縦軸に適合率/カバー率を採っている。適合率/カバー率グラフ83は、補正値の変化に応じた適合率とカバー率との変化を、折れ線によって表している。図20に示した適合率/カバー率グラフ83を参照すれば、適合率が100となる補正値が、0.07~0.09であること、およびカバー率が100となる補正値が0.09であることを容易に認識できる。これによりトランザクションの分析を行うユーザは、メッセージの時刻の補正値の決定根拠を知ることができる。また表示部180は、図19に示したようなメッセージ間の包含関係を示す包含関係図をモニタ11に表示することもできる。図21は、包含関係図の表示例を示す図である。包含関係図84には、時刻補正前と補正後とのメッセージのストリームが示されている。ユーザは、包含関係図84を参照することで、時刻補正によって、トランザクションIDが付与されている下位レイヤのメッセージの時刻が、同じトランザクションIDの上位レイヤのメッセージ対の開始から終了までの時間帯に包含されたことを確認できる。またユーザは、時刻補正によって、下位レイヤのメッセージの時刻が、上位レイヤのいずれかのメッセージ対の開始から終了までの時間帯に包含されたことを確認できる。以上のように、適合率が100の範囲内でカバー率が最大となるように補正値を決定することで、レイヤごとに異なる装置でメッセージにタイムスタンプを付加しても、装置間の時刻のずれを適切に補正できる。また、レイヤごとに同一装置内の異なるプロセスでメッセージにタイムスタンプを付加した場合であっても、プロセス間のタイムスタンプ付加タイミングのずれを適切に補正できる。これにより、例えばトランザクション分析において、トランザクションを正しく再現できるようになる。その結果、トランザクション分析の信頼性が向上する。第4の実施の形態次に第4の実施の形態について説明する。第4の実施の形態は、メッセージを収集する際に、メッセージに付与された時刻情報を補正して、格納するものである。図22は、第4の実施の形態に係る分析装置の機能の一例を示すブロック図である。なお第4の実施の形態の要素のうち、第2の実施の形態と同様の機能を有する要素については図4に示した第2の実施の形態の要素と同じ符号を付し、説明を省略する。第4の実施の形態に係る分析装置100aは、メッセージ収集部110aとトランザクション分析部170aとの機能が第2の実施の形態と異なる。メッセージ収集部110aは、キャプチャ装置44,45、およびアプリケーションサーバ42からメッセージ情報を収集した際に、補正値記憶部160に格納されている補正値を参照する。そして、収集したメッセージ情報の時刻情報を、補正値に従って補正して、Webメッセージ記憶部120、アプリケーションメッセージ記憶部130、またはDBメッセージ記憶部140に格納する。例えば、図13に示したような補正値が補正値記憶部160に格納されており、Webレイヤのメッセージの時刻情報を基準にして、他のレイヤのメッセージ情報の時刻情報を補正する場合を想定する。この場合、Webレイヤのメッセージ情報の時刻情報は補正されず、Webメッセージ記憶部120に格納される。アプリケーションレイヤのメッセージ情報の時刻情報は、0.03秒加算する補正が行われた後、アプリケーションメッセージ記憶部130に格納される。DBレイヤのメッセージ情報の時刻情報は、0.10秒0.030.07加算する補正が行われた後、DBメッセージ記憶部140に格納される。第4の実施の形態のトランザクション分析部170aは、各メッセージ情報の時刻情報の補正を行わずに、トランザクション分析を実行する。このように、メッセージ収集段階で時刻情報を補正することで、トランザクション分析の際の処理負荷が軽減される。また、メッセージ情報の時刻情報の補正機能を有していないトランザクション分析用のソフトウェアを用いて、信頼性の高いトランザクション分析を行うことも可能となる。その他の実施の形態第2第3第4の実施の形態では、下位レイヤのメッセージの時刻を補正しているが、時刻のずれ量は相対的なものである。そのため上位レイヤのメッセージを補正してもよい。また上位レイヤと下位レイヤとのそれぞれのメッセージの時刻を補正してもよい。また第2第3第4の実施の形態では、適合率を求める際に、下位レイヤのメッセージについては、レスポンスメッセージを考慮していないが、レスポンスメッセージを考慮して適合率を求めることもできる。例えば補正値決定部150は、下位レイヤのトランザクションIDが付与されたリクエストメッセージと、そのリクエストメッセージに対応するレスポンスメッセージとを関連付け、メッセージ対を生成する。補正値決定部150は、このメッセージ対のリクエストメッセージの時刻を、リクエストメッセージに応じた処理の開始時刻とする。また補正値決定部150は、レスポンスメッセージの時刻を、リクエストメッセージに応じた処理の終了時刻とする。補正値決定部150は、下位レイヤのメッセージ対に対応する処理の開始から終了までの実行期間が、同じトランザクションIDの上位レイヤのメッセージ対に対応する処理の開始から終了までの実行期間に包含される補正の範囲を求める。そして補正値決定部150は、求めた補正の範囲を、下位レイヤのメッセージ対の適合時間幅とする。補正値決定部150は、このようにして算出した適合時間幅に基づいて、適合率を計算する。これにより、レスポンスメッセージを考慮に入れた、より正確な適合率を求めることが可能となる。また第2の実施の形態では、トランザクション分析部170が、分析を行う際に、メッセージ情報の時刻情報を補正値で補正することとしているが、補正値決定部150が、各記憶部内のメッセージ情報の時刻情報を補正値によって予め補正してもよい。これにより、トランザクション分析部170におけるトランザクション分析の際の処理負荷が軽減される。なお、上記の各実施の形態に示した処理機能は、コンピュータによって実現することができる。その場合、情報処理装置1または分析装置100が有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置HDD、フレキシブルディスクFD、磁気テープなどがある。光ディスクには、DVD、DVD-RAM、CD-ROM/RWなどがある。光磁気記録媒体には、MOMagnetoOpticaldiskなどがある。なおプログラムを記録する記録媒体には、一時的な伝搬信号自体は含まれない。プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD-ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、DSPDigitalSignalProcessor、ASICApplicationSpecificIntegratedCircuit、PLDProgrammableLogicDeviceなどの電子回路で実現することもできる。上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。"