(57)【要約】【課題】より正確なシーケンスログの作成を図ること。【解決手段】情報処理装置は、第１内部時刻によってログを記憶する第１装置１１０と、第２内部時刻によってログを記憶する第２装置１２０と、のログに関する処理を行う。情報処理装置は、第１装置１１０が第１信号１０１を送信した第１内部時刻に基づく第１送信時刻１１１と、第１信号１０１を第２装置１２０が受信した第２内部時刻に基づく第１受信時刻１２１と、第２装置１２０が第２信号１０２を送信した第２内部時刻に基づく第２送信時刻１２２と、第２信号１０２を第１装置１１０が受信した第１内部時刻に基づく第２受信時刻１１２と、を取得する。また、情報処理装置は、取得した第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２に基づいて第１内部時刻と第２内部時刻との差を算出する。【選択図】図１
2014102706.tif 000002
【特許請求の範囲】
【請求項１】
装置間で重複する時間範囲のログをそれぞれの装置から取得し、
取得したそれぞれのログから、一方の装置から送信され他方の装置が受信した第１の一対のログおよび該他方の装置から送信して該一方の装置が受信した第２の一対のログを抽出し、
抽出した前記第１および前記第２の一対のログから前記一方の装置および前記他方の装置の時刻のずれを算出する
処理をコンピュータに実行させることを特徴とするプログラム。
【請求項２】
第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置であって、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得する取得部と、
前記取得部によって取得された前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する算出部と、
を備えることを特徴とする情報処理装置。
【請求項３】
前記算出部は、
前記第１受信時刻および前記第１送信時刻の差と、前記第２受信時刻および前記第２送信時刻の差と、の差の半分と、
前記第１受信時刻および前記第１送信時刻の差または前記第２受信時刻および前記第２送信時刻の差と、
の差を示す値を算出することによって前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記取得部は、
前記第１装置によって記憶された所定期間内の第１ログと、前記第２装置によって記憶された前記所定期間内の第２ログと、を取得し、
取得した前記第１ログに含まれる前記第１信号の第１通信記録から前記第１送信時刻を取得し、
取得した前記第２ログの中から、取得した前記第１送信時刻との時間差が閾値以下の第２通信記録を抽出することにより前記第１受信時刻を取得し、
取得した前記第２ログの中から、取得した前記第１受信時刻との時間差が閾値以下の第３通信記録を抽出することにより前記第２送信時刻を取得し、
取得した前記第１ログの中から、取得した前記第２送信時刻との時間差が閾値以下の第４通信記録を抽出することにより前記第２受信時刻を取得することを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記取得部は、
取得した前記第１ログの中から互いに類似する類似文字を抽出し、前記第１ログの中から抽出した類似文字ごとに、前記類似文字に該当するキーワードの前記第１ログにおける出現数を算出し、
取得した前記第２ログの中から互いに類似する類似文字を抽出し、前記第２ログの中から抽出した類似文字ごとに、前記類似文字に該当するキーワードの前記第２ログにおける出現数を算出し、
前記第１ログの中から抽出した類似文字から、算出した前記出現数に基づいて第１類似文字を選択し、選択した前記第１類似文字のキーワードを含む前記第１通信記録を前記第１ログから抽出することにより前記第１送信時刻を取得し、
前記第２ログの中から抽出した類似文字のうちの算出した前記出現数が前記第１類似文字と同じである第２類似文字のキーワードを含む前記第２通信記録を前記第２ログから抽出することにより前記第１受信時刻を取得し、
前記第２ログの中から抽出した類似文字のうちの算出した前記出現数が前記第２類似文字と同じである第３類似文字のキーワードを含む前記第３通信記録を前記第２ログから抽出することにより前記第２送信時刻を取得し、
前記第１ログの中から抽出した類似文字のうちの算出した前記出現数が前記第３類似文字と同じである第４類似文字のキーワードを含む前記第４通信記録を前記第１ログから抽出することにより前記第２受信時刻を取得する、
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記取得部は、前記第１ログの中から抽出した類似文字ごとに、前記類似文字に含まれる各キーワードの類似度を算出し、算出した前記出現数および前記類似度に基づいて前記第１類似文字を選択することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記第１装置によって記憶された所定期間内のログと、前記第２装置によって記憶された前記所定期間内のログと、前記算出部によって算出された差と、に基づいて、前記第１装置および前記第２装置の間で行われた通信の履歴を示すシーケンスログを作成する作成部を備えることを特徴とする請求項２〜６のいずれか一つに記載の情報処理装置。
【請求項８】
前記取得部は、前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻の組を複数取得し、
前記算出部は、前記組ごとに、前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づく前記第１内部時刻と前記第２内部時刻との差を算出し、前記組ごとの算出結果に基づいて前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする請求項２〜７のいずれか一つに記載の情報処理装置。
【請求項９】
第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置に、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得し、
取得した前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する、
処理を実行させることを特徴とするプログラム。
【請求項１０】
第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置により、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得し、
取得した前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する、
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
従来、複数の装置の間でやり取りされる処理のシーケンスログを生成する技術が知られている。たとえば、複数の装置のそれぞれのログを収集して合成することによってシーケンスログが作成される。
【０００３】
また、複数パケットがプロトコルシーケンスの特定状況にあるか否かを判断し、特定状況にある場合に当該複数パケットを圧縮可能と判定し、圧縮可能な複数パケットのやり取りをまとめて出力する技術が知られている（たとえば、下記特許文献１参照。）。
【０００４】
また、監視装置において被監視装置の装置情報をログとして記録・表示するログ管理方式において、被監視装置での発生順にログを格納する技術が知られている（たとえば、下記特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２６４６０９号公報
【特許文献２】特開平１０−３２７２１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では、複数の装置の内部時刻が合致していない場合があり、この場合は正確なシーケンスログを作成することが困難という問題がある。
【０００７】
本発明は、上述した従来技術による問題点を解消するため、より正確なシーケンスログの作成を図ることができるプログラム、情報処理装置および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、本発明の一側面によれば、装置間で重複する時間範囲のログをそれぞれの装置から取得し、取得したそれぞれのログから、一方の装置から送信され他方の装置が受信した第１の一対のログおよび該他方の装置から送信して該一方の装置が受信した第２の一対のログを抽出し、抽出した前記第１および前記第２の一対のログから前記一方の装置および前記他方の装置の時刻のずれを算出するプログラム、情報処理装置および情報処理方法が提案される。
【０００９】
また、本発明の別の側面によれば、第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う場合に、前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得し、取得した前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出するプログラム、情報処理装置および情報処理方法が提案される。
【発明の効果】
【００１０】
本発明の一側面によれば、より正確なシーケンスログの作成を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施の形態にかかる情報処理装置によって取得される各時刻の一例を示す図である。
【図２】図２は、実施の形態にかかる情報処理装置の構成の一例を示す図である。
【図３】図３は、実施の形態にかかる情報処理装置のハードウェア構成の一例を示す図である。
【図４】図４は、ログの処理対象の通信システムの一例を示す図である。
【図５】図５は、自動マージの処理の一例を示すフローチャートである。
【図６】図６は、自動時刻補正の処理の一例を示すフローチャートである。
【図７−１】図７−１は、装置Ａによって記憶されたログの一例を示す図である。
【図７−２】図７−２は、装置Ｂによって記憶されたログの一例を示す図である。
【図７−３】図７−３は、装置Ｃによって記憶されたログの一例を示す図である。
【図７−４】図７−４は、装置Ｄによって記憶されたログの一例を示す図である。
【図８】図８は、ログ形式のパターンファイルの一例を示す図である。
【図９−１】図９−１は、装置Ａのログに基づく類似度の算出結果の一例を示す図である。
【図９−２】図９−２は、装置Ｂのログに基づく類似度の算出結果の一例を示す図である。
【図１０−１】図１０−１は、キーワードの抽出結果の一例を示す図（その１）である。
【図１０−２】図１０−２は、キーワードの抽出結果の一例を示す図（その２）である。
【図１０−３】図１０−３は、キーワードの抽出結果の一例を示す図（その３）である。
【図１０−４】図１０−４は、キーワードの抽出結果の一例を示す図（その４）である。
【図１１−１】図１１−１は、ログの処理時間の算出結果の一例を示す図（その１）である。
【図１１−２】図１１−２は、ログの処理時間の算出結果の一例を示す図（その２）である。
【図１２】図１２は、装置Ｂのログの補正結果の一例を示す図である。
【図１３】図１３は、シーケンスログの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、本発明にかかるプログラム、情報処理装置および情報処理方法の実施の形態を詳細に説明する。
【００１３】
（実施の形態）
（実施の形態にかかる情報処理装置によって取得される各時刻）
図１は、実施の形態にかかる情報処理装置によって取得される各時刻の一例を示す図である。実施の形態にかかる情報処理装置は、たとえば図１に示す第１装置１１０および第２装置１２０のログに関する処理を行う。第１装置１１０および第２装置１２０は、互いに通信可能な通信装置である。
【００１４】
第１装置１１０は、第１内部時刻に基づいて第１装置１１０の通信動作等のログを記憶する。第２装置１２０は、第２内部時刻に基づいて第２装置１２０の通信動作等のログを記憶する。第１内部時刻および第２内部時刻は、それぞれ第１装置１１０および第２装置１２０の内部時計に基づく時刻である。したがって、第１内部時刻および第２内部時刻の間にはずれが存在する場合がある。
【００１５】
図１に示すように、たとえば、第１装置１１０が第２装置１２０へ第１信号１０１を送信したとする。また、第２装置１２０が第１装置１１０へ第２信号１０２を送信したとする。たとえば、第１信号１０１は第１装置１１０から第２装置１２０への要求信号であり、第２信号１０２は第２装置１２０から第１装置１１０への応答信号である。ただし、第１信号１０１と第２信号１０２との間の関係はこれに限らない。たとえば、第１信号１０１は第２信号１０２よりも後に送信された信号であってもよい。
【００１６】
第１送信時刻１１１は、第１装置１１０によって記憶された、第１装置１１０による第１信号１０１の送信時刻である。第１受信時刻１２１は、第２装置１２０によって記憶された、第２装置１２０による第１信号１０１の受信時刻である。
【００１７】
第２送信時刻１２２は、第２装置１２０によって記憶された、第２装置１２０による第２信号１０２の送信時刻である。第２受信時刻１１２は、第１装置１１０によって記憶された、第１装置１１０による第２信号１０２の受信時刻である。
【００１８】
したがって、第１送信時刻１１１および第２受信時刻１１２は、第１装置１１０の第１内部時刻に基づく時刻である。また、第１受信時刻１２１および第２送信時刻１２２は、第２装置１２０の第２内部時刻に基づく時刻である。
【００１９】
実施の形態にかかる情報処理装置は、第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２を取得する。
【００２０】
（実施の形態にかかる情報処理装置の構成）
図２は、実施の形態にかかる情報処理装置の構成の一例を示す図である。実施の形態にかかる情報処理装置２００は、たとえば、図２に示すように、取得部２１０と、算出部２２０と、を備えている。
【００２１】
取得部２１０は、図１に示した第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２を取得する。たとえば、取得部２１０は、第１装置１１０および第２装置１２０によって記憶された各ログの中から第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２を取得する。
【００２２】
または、取得部２１０は、第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２をユーザ入力等によって直接取得してもよい。取得部２１０は、取得した第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２を算出部２２０へ出力する。
【００２３】
算出部２２０は、取得部２１０から出力された第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２に基づいて、第１装置１１０の第１内部時刻と第２装置１２０の第２内部時刻との差（ずれ）を算出する。算出部２２０は、算出した差を示す情報を出力する。
【００２４】
たとえば、算出部２２０は、算出した差を示す情報をユーザへ出力する。これにより、ユーザは、第１装置１１０および第２装置１２０によって記憶された各ログの時刻を、算出部２２０によって出力された情報が示すずれに基づいて補正し、第１装置１１０と第２装置１２０との間の正確なシーケンスログを作成することが可能になる。
【００２５】
または、情報処理装置２００が、第１装置１１０と第２装置１２０との間の正確なシーケンスログを作成する作成部を有していてもよい。この場合は、算出部２２０は、算出した差を示す情報を作成部へ出力する。これにより、作成部において、第１装置１１０および第２装置１２０によって記憶された各ログの時刻を、算出部２２０によって出力された情報が示すずれに基づいて補正し、第１装置１１０と第２装置１２０との間の正確なシーケンスログを作成することができる。作成部は、作成したシーケンスログを出力する。
【００２６】
＜第１内部時刻と第２内部時刻との差の算出＞
算出部２２０による第１内部時刻と第２内部時刻との差の算出について説明する。たとえば、所定の基準時刻に対して、第１装置１１０の第１内部時刻はＤ１だけずれており、第２装置１２０の第２内部時刻はＤ２だけずれているとする。なお、基準時刻は第１内部時刻（すなわちＤ１＝０）または第２内部時刻（すなわちＤ２＝０）であってもよい。
【００２７】
取得部２１０によって取得される第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２は、それぞれたとえば下記（１）〜（４）式によって示すことができる。
【００２８】
第１送信時刻  ＝  基準時刻に基づく第１信号の送信時刻  ＋  Ｄ１  …（１）
第１受信時刻  ＝  基準時刻に基づく第１信号の受信時刻  ＋  Ｄ２  …（２）
第２送信時刻  ＝  基準時刻に基づく第２信号の送信時刻  ＋  Ｄ２  …（３）
第２受信時刻  ＝  基準時刻に基づく第２信号の受信時刻  ＋  Ｄ１  …（４）
【００２９】
第２送信時刻１２２から第１受信時刻１２１を減算すると、上記（３），（２）式により下記（５）式のようになる。また、第２受信時刻１１２から第１送信時刻１１１を減算すると、上記（１），（４）式により下記（６）式のようになる。
【００３０】
（３）−（２）  ＝  基準時刻に基づく第２信号の送信時刻
−  基準時刻に基づく第１信号の受信時刻  …（５）
【００３１】
（４）−（１）  ＝  基準時刻に基づく第２信号の受信時刻
−  基準時刻に基づく第１信号の送信時刻  …（６）
【００３２】
上記（６）式から上記（５）式を減算すると下記（７）式のようになる。
【００３３】
（６）−（５）  ＝  基準時刻に基づく第１信号の受信時刻
−  基準時刻に基づく第１信号の送信時刻
＋  基準時刻に基づく第２信号の受信時刻
−  基準時刻に基づく第２信号の送信時刻
＝  第１信号の送信時刻から受信時刻までの時間
＋  第２信号の送信時刻から受信時刻までの時間  …（７）
【００３４】
ここで、第１装置１１０から第２装置１２０への通信にかかる時間と、第２装置１２０から第１装置１１０への通信にかかる時間と、が同じであると仮定する。この場合は、上記（７）式を半分にすると、下記（８）式のように、第１装置１１０と第２装置１２０との間の片道の通信にかかる時間を算出することができる。
【００３５】
（７）÷２  ＝  通信にかかる時間  …（８）
【００３６】
また、上記（２）式から上記（１）式を減算すると、下記（９）式のようになる。
【００３７】
（２）−（１）  ＝  基準時刻に基づく第１信号の受信時刻  ＋  Ｄ２
−  基準時刻に基づく第１信号の送信時刻  −  Ｄ１
＝  通信にかかる時間  ＋  Ｄ２  −  Ｄ１        …（９）
【００３８】
したがって、上記（９）式から上記（８）式を減算すると、下記（１０）式のように、第１内部時刻の基準時刻からのずれＤ１と、第２内部時刻の基準時刻からのずれＤ２と、の差を算出することができる。
【００３９】
（９）−（８）  ＝  Ｄ２  −  Ｄ１  …（１０）
【００４０】
または、上記（４）式から上記（３）式を減算すると、下記（１１）式のようになる。
【００４１】
（４）−（３）  ＝  基準時刻に基づく第２信号の受信時刻  ＋  Ｄ１
−  基準時刻に基づく第２信号の送信時刻  −  Ｄ２
＝  通信にかかる時間  ＋  Ｄ１  −  Ｄ２        …（１１）
【００４２】
したがって、上記（１１）式から上記（８）式を減算すると、下記（１２）式のように第１内部時刻の基準時刻からのずれＤ１と、第２内部時刻の基準時刻からのずれＤ２と、の差を算出することができる。
【００４３】
（１１）−（８）  ＝  Ｄ１  −  Ｄ２  …（１２）
【００４４】
このように、第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２に基づいて、第１装置１１０と第２装置１２０との間の通信にかかる時間を算出することができる。そして、算出した通信にかかる時間に基づいて、第１内部時刻と第２内部時刻との差を算出することができる。
【００４５】
ただし、第１内部時刻と第２内部時刻との差を算出する手順は、上記の各式の手順に限らず、たとえば上記（１０）式または上記（１２）式の結果と同等の値を算出すればよい。たとえば、算出部２２０は、下記（１３）式または下記（１４）式によって第１内部時刻と第２内部時刻との差を算出することができる。
【００４６】
（２）−（１）−（（２）−（１）＋（３）−（４））÷２  …（１３）
（４）−（３）−（（２）−（１）＋（３）−（４））÷２  …（１４）
【００４７】
すなわち、たとえば算出部２２０は、第１受信時刻１２１および第１送信時刻１１１の差と、第２受信時刻１１２および第２送信時刻１２２の差と、の差の半分と、第１受信時刻１２１および第１送信時刻１１１の差と、の差を示す値を算出すればよい。または、算出部２２０は、第１受信時刻１２１および第１送信時刻１１１の差と、第２受信時刻１１２および第２送信時刻１２２の差と、の差の半分と、第２受信時刻１１２および第２送信時刻１２２の差と、の差を示す値を算出すればよい。
【００４８】
また、情報処理装置２００は、第１装置１１０および第２装置１２０との間で送受信された上記の第１信号１０１および第２信号１０２とは異なる信号の送受信時刻を取得してもよい。そして、情報処理装置２００は、第１送信時刻１１１、第２受信時刻１１２、第１受信時刻１２１および第２送信時刻１２２の組を複数取得し、取得した組ごとに第１装置１１０および第２装置１２０の内部時刻のずれを算出してもよい。
【００４９】
また、情報処理装置２００は、取得した組ごとに算出したずれに基づいて、第１装置１１０および第２装置１２０の内部時刻のずれを算出してもよい。たとえば、情報処理装置２００は、取得した組ごとに算出したずれを平均することによって第１装置１１０および第２装置１２０の内部時刻のずれを算出する。これにより、たとえば突発的な通信の遅延等の影響を小さくし、第１装置１１０および第２装置１２０の内部時刻のずれをより正確に算出することができる。
【００５０】
（情報処理装置のハードウェア構成）
図３は、実施の形態にかかる情報処理装置のハードウェア構成の一例を示す図である。図２に示した情報処理装置２００は、たとえば図３に示す情報処理装置３００によって実現することができる。情報処理装置３００は、ＣＰＵ３０１と、メモリ３０２と、ユーザインタフェース３０３と、通信インタフェース３０４と、を備えている。ＣＰＵ３０１、メモリ３０２、ユーザインタフェース３０３および通信インタフェース３０４は、バス３０９によって接続されている。
【００５１】
ＣＰＵ３０１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）は、情報処理装置３００の全体の制御を司る。メモリ３０２には、たとえばメインメモリおよび補助メモリが含まれる。メインメモリは、たとえばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。メインメモリは、ＣＰＵ３０１のワークエリアとして使用される。補助メモリは、たとえば磁気ディスク、光ディスク、フラッシュメモリなどの不揮発メモリである。補助メモリには、情報処理装置３００を動作させる各種のプログラムが記憶されている。補助メモリに記憶されたプログラムは、メインメモリにロードされてＣＰＵ３０１によって実行される。
【００５２】
ユーザインタフェース３０３は、たとえば、ユーザからの操作入力を受け付ける入力デバイスや、ユーザへ情報を出力する出力デバイスなどを含む。入力デバイスは、たとえばキー（たとえばキーボード）やリモコンなどによって実現することができる。出力デバイスは、たとえばディスプレイやスピーカなどによって実現することができる。また、タッチパネルなどによって入力デバイスおよび出力デバイスを実現してもよい。ユーザインタフェース３０３は、ＣＰＵ３０１によって制御される。
【００５３】
通信インタフェース３０４は、たとえば、無線や有線によって情報処理装置３００の外部（たとえば第１装置１１０や第２装置１２０）との間で通信を行う通信インタフェースである。通信インタフェース３０４は、ＣＰＵ３０１によって制御される。たとえば、通信インタフェース３０４は、第１装置１１０および第２装置１２０のログを、通信インタフェース３０４を介して取得する。
【００５４】
図２に示した取得部２１０は、たとえばＣＰＵ３０１、ユーザインタフェース３０３、通信インタフェース３０４などによって実現することができる。図２に示した算出部２２０は、たとえばＣＰＵ３０１などによって実現することができる。上記の作成部は、たとえばＣＰＵ３０１などによって実現することができる。
【００５５】
（ログの処理対象の通信システム）
図４は、ログの処理対象の通信システムの一例を示す図である。図４に示す通信システムは、装置Ａ〜Ｄを含む。装置Ａは、装置Ｂと接続されており、装置Ｂとの間で通信可能である。装置Ｃは、装置Ｂと接続されており、装置Ｂとの間で通信可能である。装置Ｄは、装置Ｂと接続されており、装置Ｂとの間で通信可能である。
【００５６】
図４に示す例では、装置Ａの内部時刻を基準時刻とする。そして、装置Ｂの内部時刻は、基準時刻に対して５００［ｍｓ］遅れている（＋５００［ｍｓ］）とする。また、装置Ｃの内部時刻は、基準時刻に対して５００［ｍｓ］進んでいる（−５００［ｍｓ］）とする。また、装置Ｄの内部時刻は、基準時刻と一致している（＋０［ｍｓ］）とする。
【００５７】
実施の形態にかかる情報処理装置２００は、たとえば、装置Ａ〜Ｄがそれぞれの内部時刻に基づいて作成したログ４０１〜４０４を取得する。そして、情報処理装置２００は、取得したログに基づいて、装置Ａ〜Ｄのうちの少なくとも２つの装置の各内部時刻の間のずれを算出する。たとえば、情報処理装置２００は、装置Ａ，Ｂの各内部時刻の間のずれ（図４に示す例では＋５００［ｍｓ］）を算出する。これにより、装置Ａ，Ｂの間の正確なシーケンスログを作成することが可能になる。
【００５８】
この場合に、たとえば装置Ａは上記の第１装置１１０に対応する構成であり、装置Ｂは上記の第２装置１２０に対応する構成である。以下、情報処理装置２００が装置Ａ，Ｂの各内部時刻の間のずれを算出し、算出したずれに基づいて装置Ａ，Ｂの間のシーケンスログを作成する場合について説明する。
【００５９】
また、以下の説明において、第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２に対応する各通信記録のキーワードをそれぞれ起句キーワード、承句キーワード、転句キーワードおよび結句キーワードと称する。
【００６０】
（自動マージの処理）
図５は、自動マージの処理の一例を示すフローチャートである。情報処理装置２００は、自動マージの処理として、たとえば以下の各ステップを実行する。まず、取得部２１０が、装置Ａおよび装置Ｂの重複する時間範囲のログを取得する（ステップＳ５０１）。
【００６１】
つぎに、取得部２１０が、ステップＳ５０１によって取得した装置Ａのログから類似文字を抽出する（ステップＳ５０２）。類似文字は、互いに類似するキーワード群を示す文字である。つぎに、取得部２１０が、ステップＳ５０２によって抽出した類似文字ごとに、装置Ａのログでの出現数および類似度を算出する（ステップＳ５０３）。装置Ａのログからの類似文字の抽出や出現数および類似度の算出については後述する（たとえば図９−１参照）。
【００６２】
つぎに、取得部２１０が、ステップＳ５０２によって抽出した類似文字の中から、ステップＳ５０３によって算出した類似度が高く、ステップＳ５０３によって算出した出現数が多い類似文字を特定する。類似度が高く出現数が多い類似文字とは、たとえば、類似度および出現数が閾値以上である類似文字の中から選択された類似文字などである。そして、取得部２１０が、特定した類似文字に該当するキーワードを装置Ａのログの中から起句キーワードとして抽出する（ステップＳ５０４）。起句キーワードの抽出については後述する（たとえば図１０−１参照）。
【００６３】
つぎに、取得部２１０が、ステップＳ５０１によって取得した装置Ｂのログから類似文字を抽出する（ステップＳ５０５）。つぎに、取得部２１０が、ステップＳ５０５によって抽出した類似文字ごとに、装置ＢのログＢでの出現数を算出する（ステップＳ５０６）。装置Ｂのログからの類似文字の抽出や出現数の算出については後述する（たとえば図９−２参照）。
【００６４】
つぎに、取得部２１０が、ステップＳ５０５によって抽出した類似文字の中から、ステップＳ５０４によって抽出した起句キーワードと、時刻が近く、ステップＳ５０６によって算出した出現数が同じ類似文字を特定する。時刻が近い類似文字とは、たとえば、対応時刻の差が閾値以下の類似文字などである。そして、取得部２１０が、特定した類似文字に該当するキーワードを装置Ｂのログの中から承句キーワードとして抽出する（ステップＳ５０７）。承句キーワードの抽出については後述する（たとえば図１０−２参照）。
【００６５】
つぎに、取得部２１０が、ステップＳ５０５によって抽出した類似文字の中から、ステップＳ５０７によって抽出した承句キーワードと、時刻が近く、ステップＳ５０６によって算出した出現数が同じ類似文字を特定する。そして、取得部２１０が、特定した類似文字に該当するキーワードを装置Ｂのログの中から転句キーワードとして抽出する（ステップＳ５０８）。転句キーワードの抽出については後述する（たとえば図１０−３参照）。
【００６６】
つぎに、取得部２１０が、ステップＳ５０２によって抽出した類似文字の中から、ステップＳ５０８によって抽出した転句キーワードと、時刻が近く、ステップＳ５０３によって算出した出現数が同じ類似文字を特定する。そして、取得部２１０が、特定した類似文字に該当するキーワードを装置Ａのログの中から結句キーワードとして抽出する（ステップＳ５０９）。結句キーワードの抽出については後述する（たとえば図１０−４参照）。
【００６７】
そして、取得部２１０は、ステップＳ５０４によって抽出した起句キーワードに対応する装置Ａのログの通信記録の時刻をたとえば上記の第１送信時刻１１１として取得する。また、取得部２１０は、ステップＳ５０７によって抽出した承句キーワードに対応する装置Ｂのログの通信記録の時刻をたとえば上記の第１受信時刻１２１として取得する。
【００６８】
また、取得部２１０は、ステップＳ５０８によって抽出した転句キーワードに対応する装置Ｂのログの通信記録の時刻をたとえば上記の第２送信時刻１２２として取得する。また、取得部２１０は、ステップＳ５０９によって抽出した結句キーワードに対応する装置Ａのログの通信記録の時刻をたとえば上記の第２受信時刻１１２として取得する。
【００６９】
このように、取得部２１０は、装置Ａおよび装置Ｂの各ログから類似文字を自動抽出し、出現数の多いキーワードを起句キーワード、承句キーワード、転句キーワードおよび結句キーワードとして自動マージすることができる。これにより、装置Ａおよび装置Ｂの各ログから第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２を取得することができる。
【００７０】
なお、たとえばステップＳ５０４，Ｓ５０７，Ｓ５０８，Ｓ５０９において、抽出対象のキーワードに複数の候補が存在する場合は、ユーザに複数の候補を提示し、ユーザによって抽出するキーワードを選択させるようにしてもよい。これにより、より高精度なキーワードの抽出が可能になる。
【００７１】
（自動時刻補正の処理）
図６は、自動時刻補正の処理の一例を示すフローチャートである。情報処理装置２００は、自動時刻補正の処理として、たとえば以下の各ステップを実行する。まず、算出部２２０が、図５に示す各ステップによって取得部２１０によって取得された、起句キーワードに対応する装置Ａのログの通信記録の時刻と、結句キーワードに対応する装置Ａのログの通信記録の時刻と、の差を算出する（ステップＳ６０１）。これにより、装置Ａのログの処理時間を算出することができる。
【００７２】
つぎに、算出部２２０が、図５に示す各ステップによって取得部２１０によって取得された、承句キーワードに対応する装置Ｂのログの通信記録の時刻と、転句キーワードに対応する装置Ｂのログの通信記録の時刻と、の差を算出する（ステップＳ６０２）。これにより、装置Ｂのログの処理時間を算出することができる。
【００７３】
つぎに、算出部２２０が、ステップＳ６０１によって算出した差と、ステップＳ６０２によって算出した差と、の差から装置Ａと装置Ｂとの間の通信にかかる時間を算出する（ステップＳ６０３）。たとえば、装置Ａから装置Ｂへの通信にかかる時間と、装置Ｂから装置Ａへの通信にかかる時間と、が同じであると仮定する。この場合は、ステップＳ６０１，Ｓ６０２によって算出された各差の間の差を半分にすることによって装置Ａと装置Ｂとの間の通信にかかる時間を算出することができる。
【００７４】
つぎに、算出部２２０が、起句キーワードに対応する装置Ａのログの通信記録の時刻に、ステップＳ６０３によって算出された時間を加算した時刻と、承句キーワードに対応する装置Ｂのログの通信記録の時刻と、の差を算出する（ステップＳ６０４）。なお、ステップＳ６０４において、算出部２２０が、転句キーワードに対応する装置Ｂのログの通信記録の時刻に、ステップＳ６０３によって算出された時間を加算した時刻と、結句キーワードに対応する装置Ａのログの通信記録の時刻と、の差を算出してもよい。
【００７５】
つぎに、算出部２２０が、ステップＳ６０４によって算出した差を装置Ａと装置Ｂとの間の内部時刻のずれとして出力し（ステップＳ６０５）、一連の処理を終了する。これにより、第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２に基づく装置Ａ，Ｂの内部時刻のずれを得ることができる。
【００７６】
（装置Ａ〜Ｄによって記憶されたログ）
図７−１は、装置Ａによって記憶されたログの一例を示す図である。図７−２は、装置Ｂによって記憶されたログの一例を示す図である。図７−３は、装置Ｃによって記憶されたログの一例を示す図である。図７−４は、装置Ｄによって記憶されたログの一例を示す図である。図７−１〜図７−４に示すログ４０１〜４０４は、それぞれ装置Ａ〜Ｄによって記憶されたログである（たとえば図４参照）。ログ４０１〜４０４のそれぞれには、項目として「日付」、「時刻」、「ホスト名」、「ユーザ名」、「種類」、「通信方向」、「通信相手」および「ログメッセージ」が含まれている。
【００７７】
項目「日付」および項目「時刻」は、内部時刻に基づく、対象通信が行われた時刻である。項目「ホスト名」および項目「ユーザ名」は、対象通信における自装置のホスト名およびユーザ名である。装置Ａ〜Ｄのホスト名はそれぞれ「ｈｏｓｔＡ」〜「ｈｏｓｔＤ」となっている。項目「種類」は、対象通信の種類である。項目「種類」の値「ＩＮＦＯ」はたとえば情報通信を示している。項目「種類」の値「ＥＲＲＯＲ」はたとえばエラー通知を示している。
【００７８】
項目「通信方向」は、対象通信の方向を示している。項目「通信方向」の値「ＳＥＮＤ」は、対象通信が自装置からの送信であることを示している。項目「通信方向」の値「ＲＥＣＶ」は、対象通信が自装置による受信であることを示している。項目「通信相手」は、対象通信の相手の装置を示している。項目「通信相手」の値は、装置Ａ〜Ｄのうちの自装置に接続された装置のホスト名となる。項目「ログメッセージ」は、たとえば、対象通信によって伝送された情報のうちのログとして記憶されたメッセージや、対象通信のその他の情報を示している。
【００７９】
また、ログ４０１〜４０４とともに図示した「ＩＮ」および「ＯＵＴ」は、各装置間の通信の対応関係を示している。たとえば、図７−１の「ＯＵＴ」の「Ａ−１」に対応する装置Ａからの送信にかかる通信（ログ４０１の一行目の通信）は、図７−２の「ＩＮ」の「Ａ−１」に対応する装置Ｂによる受信にかかる通信（ログ４０２の一行目の通信）と対応している。
【００８０】
（ログ形式のパターンファイル）
図８は、ログ形式のパターンファイルの一例を示す図である。図７−１〜図７−４に示したログ４０１〜４０４は、たとえば装置Ａ〜装置Ｂに記憶されたパターンファイル８００の定義にしたがって作成される。パターンファイル８００においては、「データ項目」として「項目１」〜「項目８」が定義されている。「項目１」〜「項目８」はそれぞれ図７−１〜図７−４に示した項目「日付」、「時刻」、「ホスト名」、「ユーザ名」、「種類」、「通信方向」、「通信相手」および「ログメッセージ」に対応する。
【００８１】
また、パターンファイル８００においては、「項目１」〜「項目８」のそれぞれについて「データ型」、「データ形式」および「入力情報」が定義されている。「入力情報」においては、時刻補正する項目として「日付」および「時刻」が指定されている。また、「入力情報」においては、類似度を算出する「キーワード」が指定されている。
【００８２】
（ログに基づく類似度の算出結果）
図９−１は、装置Ａのログに基づく類似度の算出結果の一例を示す図である。図９−１に示す類似度算出テーブル９０１は、装置Ａのログ４０１に基づく類似度の算出結果の一例を示す図である。情報処理装置２００は、装置Ａのログ４０１について、「通信相手」別に、ログメッセージに含まれるキーワードから類似文字を抽出する。なお、キーワード中の「ｘ」や「ｙ」は任意の文字とする。
【００８３】
類似度の抽出は、たとえば、図８に示したパターンファイル８００の「キーワード」を対象に文字列を抽出することによって行うことができる。たとえば、情報処理装置２００は、通信相手別に「キーワード」に対して類似文字数を減らしながらフィルタリングを行い、出現数の変化のあった類似文字で、類似文字数、出現数および類似度を算出する。
【００８４】
たとえば、情報処理装置２００は、ログ４０１のログメッセージの中から複数回出現するキーワードを「類似文字」として抽出する。そして、情報処理装置２００は、抽出した「類似文字」ごとに、「類似文字」の文字数を示す「類似文字数」および「出現数」を導出し、導出した「類似文字数」および「出現数」に基づいて「類似度」を算出する。「類似度」は、たとえば（類似文字数）＊ｌｏｇ（出現数）によって算出することができる。
【００８５】
たとえば、情報処理装置２００は、ログ４０１で２回出現しているキーワード「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を類似文字として抽出する。類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」の文字数は１８文字であるため「類似文字数」は１８となる。また、類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」の出現数は２回であるため「出現数」は２となる。そして、「類似文字数」＊ｌｏｇ（出現数）＝１８＊ｌｏｇ（２）によって「類似度」は約５．４１８５３９９２２と算出される。
【００８６】
図９−２は、装置Ｂのログに基づく類似度の算出結果の一例を示す図である。図９−２に示す類似度算出テーブル９０２は、装置Ｂのログ４０２に基づく類似度の算出結果の一例を示す図である。情報処理装置２００は、装置Ｂのログ４０２についても同様に、「通信相手」別に、ログメッセージに含まれるキーワードから類似文字を抽出する。そして、情報処理装置２００は、抽出した「類似文字」ごとに、「類似文字」の文字数を示す「類似文字数」および「出現数」を導出し、導出した「類似文字数」および「出現数」に基づいて「類似度」を算出する。
【００８７】
たとえば、情報処理装置２００は、ログ４０２で２回出現しているキーワード「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を類似文字として抽出する。類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」の文字数は１８文字であるため「類似文字数」は１８となる。また、類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」の出現数は２回であるため「出現数」は２となる。そして、「類似文字数」＊ｌｏｇ（出現数）＝１８＊ｌｏｇ（２）によって「類似度」は約５．４１８５３９９２２と算出される。
【００８８】
（キーワードの抽出結果）
図１０−１〜図１０−４は、キーワードの抽出結果の一例を示す図である。情報処理装置２００は、図９−１の類似度算出テーブル９０１および図９−２の類似度算出テーブル９０２に基づいて、装置Ａのログ４０１および装置Ｂのログ４０２から、起句キーワード、承句キーワード、転句キーワードおよび結句キーワードを抽出する。
【００８９】
具体的には、情報処理装置２００は、装置Ａのログ４０１から、出現数および類似度が高い類似文字を起句キーワードとして抽出する。たとえば、情報処理装置２００は、図１０−１に示すように、ログ４０１の通信履歴１００１の類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を起句キーワードとして抽出したとする。
【００９０】
つぎに、情報処理装置２００は、装置Ｂのログ４０２から、起句キーワードとして抽出した類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」と出現数が同じであり、通信履歴１００１との時刻差が小さい類似文字を承句キーワードとして抽出する。たとえば、情報処理装置２００は、図１０−２に示すように、ログ４０２の通信履歴１００２の類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を承句キーワードとして抽出したとする。
【００９１】
つぎに、情報処理装置２００は、装置Ｂのログ４０２から、承句キーワードとして抽出した類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」と出現数が同じであり、通信履歴１００２との時刻差が小さい類似文字を転句キーワードして抽出する。たとえば、情報処理装置２００は、図１０−３に示すように、ログ４０２の通信履歴１００３の類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を転句キーワードとして抽出したとする。
【００９２】
つぎに、情報処理装置２００は、装置Ａのログ４０１から、転句キーワードとして抽出した類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」と出現数が同じであり、通信履歴１００３との時刻差が小さい類似文字を結句キーワードして抽出する。たとえば、情報処理装置２００は、図１０−４に示すように、ログ４０１の通信履歴１００４の類似文字「ＳＥＡＲＣＨ  ｘｘｘ０１  ｙｙｙ０１」を結句キーワードとして抽出したとする。
【００９３】
これにより、たとえば上記の第１送信時刻１１１として、通信履歴１００１の時刻「１０：５４：１０．０００」を取得することができる。また、たとえば上記の第１受信時刻１２１として、通信履歴１００２の時刻「１０：５４：１０．５０５」を取得することができる。また、たとえば上記の第２送信時刻１２２として、通信履歴１００３の時刻「１０：５４：１０．６９５」を取得することができる。また、たとえば上記の第２受信時刻１１２として、通信履歴１００４の時刻「１０：５４：１０．２００」を取得することができる。
【００９４】
（ログの処理時間の算出結果）
図１１−１および図１１−２は、ログの処理時間の算出結果の一例を示す図である。情報処理装置２００は、図１１−１に示すように、装置Ａのログ４０１の通信履歴１００１の時刻「１０：５４：１０．０００」（起句キーワード）と、通信履歴１００４の時刻「１０：５４：１０．２００」（結句キーワード）と、の差を算出する。これにより、装置Ａのログの処理時間として２００［ｍｓ］を算出することができる。
【００９５】
また、情報処理装置２００は、図１１−２に示すように、装置Ｂのログ４０２の通信履歴１００２の時刻「１０：５４：１０．５０５」（承句キーワード）と、通信履歴１００３の時刻「１０：５４：１０．６９５」（転句キーワード）と、の差を算出する。これにより、装置Ｂのログの処理時間として１９０［ｍｓ］を算出することができる。
【００９６】
そして、情報処理装置２００は、装置Ａの処理時間である２００［ｍｓ］と、装置Ｂの処理時間である１９０［ｍｓ］と、の差の半分を算出する。これにより、装置Ａと装置Ｂとの間の通信にかかる時間として（２００−１９０）÷２＝５［ｍｓ］を算出することができる。
【００９７】
つぎに、情報処理装置２００は、装置Ａのログ４０１の通信履歴１００１の時刻「１０：５４：１０．０００」（起句キーワード）に、装置Ａと装置Ｂとの間の通信にかかる時間である５［ｍｓ］を加算する。そして、加算結果と、装置Ｂのログ４０２の通信履歴１００２の時刻「１０：５４：１０．５０５」（承句キーワード）と、の差を算出する。これにより、装置Ａの内部時刻と、装置Ｂの内部時刻と、のずれとして５００［ｍｓ］を算出することができる。
【００９８】
（ログの補正結果）
図１２は、装置Ｂのログの補正結果の一例を示す図である。情報処理装置２００は、たとえば、図７−２に示した装置Ｂのログ４０２の「時刻」を、装置Ａ，Ｂの内部時刻のずれとして算出した５００［ｍｓ］によって補正する。具体的には、情報処理装置２００は、ログ４０２の「時刻」の各値から５００［ｍｓ］を減算することによりログ４０２の「時刻」を補正する。
【００９９】
ただし、装置Ａ，Ｂの内部時刻のずれの算出結果によるログの補正はこれに限らない。たとえば、情報処理装置２００は、装置Ａのログ４０１の「時刻」の各値に５００［ｍｓ］を加算することによりログ４０１の「時刻」を補正してもよい。
【０１００】
（シーケンスログ）
図１３は、シーケンスログの一例を示す図である。たとえば図１２に示した補正後の装置Ｂのログ４０２と、図４−１に示した装置Ａのログ４０１と、を用いることにより、ログ４０１，４０２においてそれぞれ基準となっている時刻のずれが解消した状態でシーケンスログ１３００を作成することが可能になる。このため、装置Ａと装置Ｂとの間の通信動作の履歴を示す正確なシーケンスログ１３００を作成することが可能になる。
【０１０１】
シーケンスログ１３００は、たとえば、装置Ａと装置Ｂとの間で行われた各通信を時刻とともに視覚的に示す情報である。シーケンスログ１３００は、情報処理装置２００によって算出された内部時刻のずれに基づいてユーザによって作成される。また、シーケンスログ１３００は、上記の情報処理装置２００の作成部によって作成されてもよい。このとき、たとえばユーザ入力によって、通信履歴１００１によって算出された内部時刻のずれを微調整できるようにしてもよい。
【０１０２】
また、情報処理装置２００が装置Ａおよび装置Ｂの各ログから第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２を自動的（または半自動的）に取得する場合について説明したが、このような構成に限らない。たとえば、図７−１に示した装置Ａのログ４０１と、図７−２に示した装置Ｂのログ４０２と、をユーザに表示し、上記の通信履歴１００１〜１００４をユーザ操作によって選択させるようにしてもよい。
【０１０３】
このとき、たとえばログ４０１とログ４０２の間で時刻の近い通信記録同士を対応付けて（たとえば高さを合わせる等）表示することによって、上記の通信履歴１００１〜１００４をユーザが容易に選択することができる。上記の通信履歴１００１〜１００４をユーザが選択することにより、選択された通信履歴１００１〜１００４に基づいて情報処理装置２００が第１送信時刻１１１、第１受信時刻１２１、第２送信時刻１２２および第２受信時刻１１２を取得することができる。
【０１０４】
また、ここでは装置Ａおよび装置Ｂの間のシーケンスログを作成する場合について説明したが、装置Ｃや装置Ｄも含めたシーケンスログを作成することも可能である。たとえば、情報処理装置２００は、装置Ｃや装置Ｄにおける内部時刻の基準時刻からのずれについても算出する。これにより、算出結果に基づいて装置Ａ〜Ｄのログ４０１〜４０４の時刻を補正し、装置Ａ〜Ｄの間のシーケンスログを作成することが可能になる。
【０１０５】
以上説明したように、プログラム、情報処理装置および情報処理方法によれば、装置間の双方向の各通信について各装置で記憶された送受信時刻から各装置の内部時刻のずれを求めることができる。これにより、装置間の正確なシーケンスログを作成することが可能になる。
【０１０６】
また、各通信装置における同一期間（所定期間）のログを取得し、取得した各ログから装置間の双方向の各通信について各装置で記憶された送受信時刻を自動的に抽出することができる。また、各ログから、互いに時間差の小さい通信記録を抽出することにより、装置間の双方向の各通信について各装置で記憶された送受信時刻を精度よく抽出することができる。また、抽出した送受信時刻にかかる各通信の条件（たとえば通信にかかる時間）が近くなりやすくなり、送受信時刻に基づく内部時刻のずれの算出精度の向上を図ることができる。また、類似文字の類似度を用いて各通信記録を抽出することにより、抽出した送受信時刻にかかる各通信の条件（たとえば通信にかかる時間）が近くなりやすくなり、装置間の双方向の各通信について各装置で記憶された送受信時刻を精度よく抽出することができる。
【０１０７】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１０８】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１０９】
（付記１）装置間で重複する時間範囲のログをそれぞれの装置から取得し、
取得したそれぞれのログから、一方の装置から送信され他方の装置が受信した第１の一対のログおよび該他方の装置から送信して該一方の装置が受信した第２の一対のログを抽出し、
抽出した前記第１および前記第２の一対のログから前記一方の装置および前記他方の装置の時刻のずれを算出する
処理をコンピュータに実行させることを特徴とするプログラム。
【０１１０】
（付記２）第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置であって、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得する取得部と、
前記取得部によって取得された前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する算出部と、
を備えることを特徴とする情報処理装置。
【０１１１】
（付記３）前記算出部は、
前記第１受信時刻および前記第１送信時刻の差と、前記第２受信時刻および前記第２送信時刻の差と、の差の半分と、
前記第１受信時刻および前記第１送信時刻の差または前記第２受信時刻および前記第２送信時刻の差と、
の差を示す値を算出することによって前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする付記２に記載の情報処理装置。
【０１１２】
（付記４）前記算出部は、前記第１装置と前記第２装置との間の通信にかかる時間を算出し、算出した前記通信にかかる時間に基づいて前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする付記２または３に記載の情報処理装置。
【０１１３】
（付記５）前記算出部は、前記第１受信時刻および前記第２受信時刻との和と、前記第１送信時刻および前記第２送信時刻との和と、の差に基づいて前記通信にかかる時間を算出することを特徴とする付記４に記載の情報処理装置。
【０１１４】
（付記６）前記算出部は、前記通信にかかる時間と、前記第１送信時刻および前記第１受信時刻の差または前記第２送信時刻および前記第２受信時刻の差と、の差に基づいて前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする付記４または５に記載の情報処理装置。
【０１１５】
（付記７）前記取得部は、
前記第１装置によって記憶された所定期間内の第１ログと、前記第２装置によって記憶された前記所定期間内の第２ログと、を取得し、
取得した前記第１ログに含まれる前記第１信号の第１通信記録から前記第１送信時刻を取得し、
取得した前記第２ログの中から、取得した前記第１送信時刻との時間差が閾値以下の第２通信記録を抽出することにより前記第１受信時刻を取得し、
取得した前記第２ログの中から、取得した前記第１受信時刻との時間差が閾値以下の第３通信記録を抽出することにより前記第２送信時刻を取得し、
取得した前記第１ログの中から、取得した前記第２送信時刻との時間差が閾値以下の第４通信記録を抽出することにより前記第２受信時刻を取得することを特徴とする付記２〜６のいずれか一つに記載の情報処理装置。
【０１１６】
（付記８）前記取得部は、
取得した前記第１ログの中から互いに類似する類似文字を抽出し、前記第１ログの中から抽出した類似文字ごとに、前記類似文字に該当するキーワードの前記第１ログにおける出現数を算出し、
取得した前記第２ログの中から互いに類似する類似文字を抽出し、前記第２ログの中から抽出した類似文字ごとに、前記類似文字に該当するキーワードの前記第２ログにおける出現数を算出し、
前記第１ログの中から抽出した類似文字から、算出した前記出現数に基づいて第１類似文字を選択し、選択した前記第１類似文字のキーワードを含む前記第１通信記録を前記第１ログから抽出することにより前記第１送信時刻を取得し、
前記第２ログの中から抽出した類似文字のうちの算出した前記出現数が前記第１類似文字と同じである第２類似文字のキーワードを含む前記第２通信記録を前記第２ログから抽出することにより前記第１受信時刻を取得し、
前記第２ログの中から抽出した類似文字のうちの算出した前記出現数が前記第２類似文字と同じである第３類似文字のキーワードを含む前記第３通信記録を前記第２ログから抽出することにより前記第２送信時刻を取得し、
前記第１ログの中から抽出した類似文字のうちの算出した前記出現数が前記第３類似文字と同じである第４類似文字のキーワードを含む前記第４通信記録を前記第１ログから抽出することにより前記第２受信時刻を取得する、
ことを特徴とする付記７に記載の情報処理装置。
【０１１７】
（付記９）前記取得部は、前記第１ログの中から抽出した類似文字ごとに、前記類似文字に含まれる各キーワードの類似度を算出し、算出した前記出現数および前記類似度に基づいて前記第１類似文字を選択することを特徴とする付記８に記載の情報処理装置。
【０１１８】
（付記１０）前記類似度は、前記類似文字の文字数に基づいて算出されることを特徴とする付記９に記載の情報処理装置。
【０１１９】
（付記１１）前記第１装置によって記憶された所定期間内のログと、前記第２装置によって記憶された前記所定期間内のログと、前記算出部によって算出された差と、に基づいて、前記第１装置および前記第２装置の間で行われた通信の履歴を示すシーケンスログを作成する作成部を備えることを特徴とする付記２〜１０のいずれか一つに記載の情報処理装置。
【０１２０】
（付記１２）前記取得部は、前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻の組を複数取得し、
前記算出部は、前記組ごとに、前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づく前記第１内部時刻と前記第２内部時刻との差を算出し、前記組ごとの算出結果に基づいて前記第１内部時刻と前記第２内部時刻との差を算出することを特徴とする付記２〜１１のいずれか一つに記載の情報処理装置。
【０１２１】
（付記１３）第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置に、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得し、
取得した前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する、
処理を実行させることを特徴とするプログラム。
【０１２２】
（付記１４）第１内部時刻によってログを記憶する第１装置と、第２内部時刻によってログを記憶する第２装置と、のログに関する処理を行う情報処理装置により、
前記第１装置が第１信号を送信した前記第１内部時刻に基づく第１送信時刻と、前記第１信号を前記第２装置が受信した前記第２内部時刻に基づく第１受信時刻と、前記第２装置が第２信号を送信した前記第２内部時刻に基づく第２送信時刻と、前記第２信号を前記第１装置が受信した前記第１内部時刻に基づく第２受信時刻と、を取得し、
取得した前記第１送信時刻、前記第１受信時刻、前記第２送信時刻および前記第２受信時刻に基づいて前記第１内部時刻と前記第２内部時刻との差を算出する、
ことを特徴とする情報処理方法。
【符号の説明】
【０１２３】
１０１  第１信号
１０２  第２信号
１１０  第１装置
１１１  第１送信時刻
１１２  第２受信時刻
１２０  第２装置
１２１  第１受信時刻
１２２  第２送信時刻
２００，３００  情報処理装置
２１０  取得部
２２０  算出部
３０１  ＣＰＵ
３０２  メモリ
３０３  ユーザインタフェース
３０４  通信インタフェース
３０９  バス
４０１〜４０４  ログ
８００  パターンファイル
９０１，９０２  類似度算出テーブル
１００１〜１００４  通信履歴
１３００  シーケンスログ
【図１】
2014102706.tif 000003
【図２】
2014102706.tif 000004
【図３】
2014102706.tif 000005
【図４】
2014102706.tif 000006
【図５】
2014102706.tif 000007
【図６】
2014102706.tif 000008
【図７−１】
2014102706.tif 000009
【図７−２】
2014102706.tif 000010
【図７−３】
2014102706.tif 000011
【図７−４】
2014102706.tif 000012
【図８】
2014102706.tif 000013
【図９−１】
2014102706.tif 000014
【図９−２】
2014102706.tif 000015
【図１０−１】
2014102706.tif 000016
【図１０−２】
2014102706.tif 000017
【図１０−３】
2014102706.tif 000018
【図１０−４】
2014102706.tif 000019
【図１１−１】
2014102706.tif 000020
【図１１−２】
2014102706.tif 000021
【図１２】
2014102706.tif 000022
【図１３】
2014102706.tif 000023