(57)【要約】【課題】障害が発生した機器から詳細なログが得られない場合でも、異常発生時の状態が類似する他の機器のログを用いて障害原因の調査ができる。【解決手段】ログ送信装置は、通信網を介してログ収集装置と接続されるログ送信装置であって、ログを出力するアプリケーション実行部と、当該ログ送信装置の状態の変化を示す情報である環境コードを生成する環境変化管理部と、ログおよび環境コードをログ収集装置に送信する送信部とを備え、環境変化管理部は、アプリケーション実行部がログを前回出力してから今回出力するまでの状態の変化を示す環境コードを生成する。【選択図】図２
2018045269.tif 000002
【特許請求の範囲】
【請求項１】
通信網を介してログ収集装置と接続されるログ送信装置であって、
ログを出力するアプリケーション実行部と、
当該ログ送信装置の状態の変化を示す情報である環境コードを生成する環境変化管理部と、
前記ログおよび前記環境コードを前記ログ収集装置に送信する送信部とを備え、
前記環境変化管理部は、前記アプリケーション実行部が前記ログを前回出力してから今回出力するまでの前記状態の変化を示す前記環境コードを生成するログ送信装置。
【請求項２】
請求項１に記載のログ送信装置において、
前記ログ収集装置から詳細ログ指令を受信すると、前記ログよりも詳細な情報を含む詳細ログを送信するログ要求受信部をさらに備えるログ送信装置。
【請求項３】
請求項１に記載のログ送信装置において、
前記環境コードは、変化のあった状態の項目を示す項目コードと、前記項目コードによりあらわされる前記項目の変化後の値を示す値コードとから構成されるログ送信装置。
【請求項４】
請求項１に記載のログ送信装置において、
前記環境コードは、基準となるログ送信装置の状態を示す基準コードと、変化のあった状態の項目を示す項目コードと、前記項目コードによりあらわされる前記項目の変化後の値を示す値コードとから構成され、
前記環境変化管理部は、前記環境コードを初回に生成する場合は、前記基準コードが示す前記ログ送信装置の状態と現在の前記ログ送信装置の状態との差を示す前記項目コードおよび前記値コードを生成し、
前記環境変化管理部は、前記環境コードを２回目以降に生成する場合は、前記アプリケーション実行部が前記ログを前回出力してから今回出力するまでの前記状態の変化を示す前記項目コードおよび前記値コードを生成するログ送信装置。
【請求項５】
請求項１に記載のログ送信装置において、
他のログ送信装置と通信を行う近距離通信部をさらに備え、
前記アプリケーション実行部は、前記他のログ送信装置から受信した前記ログおよび前記他のログ送信装置から受信した前記環境コードを、前記ログとして出力するログ送信装置。
【請求項６】
請求項５に記載のログ送信装置において、
前記ログ収集装置から詳細ログ指令を受信すると、前記他のログ送信装置に前記詳細ログ指令を出力し、前記他のログ送信装置から受信した前記ログよりも詳細な情報を含む詳細ログを前記ログ収集装置へ送信するログ要求受信部をさらに備えるログ送信装置。
【請求項７】
請求項５に記載のログ送信装置において、
前記近距離通信部はオンまたはオフに動作状態が切り替え可能であり、
前記状態の変化には前記近距離通信部の動作状態の切り替えが含まれるログ送信装置。
【請求項８】
通信網を介して接続される複数のログ送信装置、およびログ収集装置を含むログ収集システムであって、
前記ログ送信装置は、
ログを出力するアプリケーション部と、
当該ログ送信装置の状態の変化を示す情報である環境コードを生成する環境変化管理部と、
前記ログおよび前記環境コードを前記ログ収集装置に送信する送信部とを備え、
前記環境変化管理部は、前記アプリケーション部が前記ログを前回出力してから今回出力するまでの前記状態の変化を示す前記環境コードを生成し、
前記ログ収集装置は、
前記ログ送信装置から受信した前記ログを解析し障害を検知する障害検知部と、
前記ログ送信装置から受信した前記環境コードを用いて前記ログ送信装置の状態を復元する環境情報復元部と、
前記環境情報復元部が復元した前記ログ送信装置の状態を用いて、前記障害検知部が障害を検知した前記ログを送信した前記ログ送信装置である被異常検出装置と状態が同一または類似する他のログ送信装置を判定する類似環境判定部と、を備えるログ収集システム。
【請求項９】
請求項８に記載のログ収集システムにおいて、
前記ログ収集装置は、前記類似環境判定部が前記被異常検出装置と状態が同一または類似であると判定した他の前記ログ送信装置に詳細ログ指令を送信するログ要求部をさらに備え、
前記ログ送信装置は、前記ログ収集装置から前記詳細ログ指令を受信すると、前記ログよりも詳細な情報を含む詳細ログを送信するログ要求受信部をさらに備えるログ収集システム。
【請求項１０】
請求項８に記載のログ収集システムにおいて、
前記環境コードは、変化のあった状態の項目を示す項目コードと、前記項目コードによりあらわされる前記項目の変化後の値を示す値コードとから構成されるログ収集システム。
【請求項１１】
請求項８に記載のログ収集システムにおいて、
前記環境コードは、基準となるログ送信装置の状態を示す基準コードと、変化のあった状態の項目を示す項目コードと、前記項目コードによりあらわされる前記項目の変化後の値を示す値コードとから構成され、
前記ログ送信装置の前記環境変化管理部は、前記環境コードを初回に生成する場合は、前記基準コードが示す前記ログ送信装置の状態と現在の前記ログ送信装置の状態との差を示す前記項目コードおよび前記値コードを生成し、
前記ログ送信装置の前記環境変化管理部は、前記環境コードを２回目以降に生成する場合は、前記アプリケーション部が前記ログを前回出力してから今回出力するまでの前記状態の変化を示す前記項目コードおよび前記値コードを生成するログ収集システム。
【請求項１２】
請求項８に記載のログ収集システムにおいて、
前記ログ送信装置は、他のログ送信装置を介して前記通信網に接続されるログ間接送信装置と、他のログ送信装置を介さずに前記通信網に接続されるログ直接送信装置とに分類され、
前記ログ直接送信装置は、
前記ログ間接送信装置と通信を行う近距離通信部と、
前記ログ収集装置から詳細ログ指令を受信すると、前記ログ間接送信装置に詳細ログ指令を出力し、前記ログ間接送信装置から受信した前記ログよりも詳細な情報を含む詳細ログを前記ログ収集装置へ送信するログ要求受信部とをさらに備えるログ収集システム。
【請求項１３】
請求項９に記載のログ収集システムにおいて、
前記ログ要求部は、前記被異常検出装置から前記詳細ログが得られない場合に、前記類似環境判定部が前記被異常検出装置と状態が同一または類似であると判定した他の前記ログ送信装置に前記詳細ログ指令を送信するログ収集システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログ送信装置、およびログ収集システムに関する。
【背景技術】
【０００２】
機器に何らかの障害が発生した場合に、その機器のログ情報を参照して障害原因を調査することが多い。この際に、障害が発生した機器のログ情報だけでは情報が不足していて有効な調査を行えない場合があるため、関連する他の機器のログ情報もあわせて収集して調査することが行われている。
特許文献１には、ログ収集対象の機器および収集するログを操作者に選択させるグラフィカルユーザインタフェースと、前記グラフィカルユーザインタフェース上で選択されたログに関連する他のログを判別し、前記関連する他のログを前記グラフィカルユーザインタフェース上で選択状態にする組合せ管理手段とを備えたことを特徴とするログ収集装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−９９７４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載されている発明では、障害が発生した機器から詳細なログが得られない場合に障害原因の調査が困難である。
【課題を解決するための手段】
【０００５】
本発明の第１の態様によるログ送信装置は、通信網を介してログ収集装置と接続されるログ送信装置であって、ログを出力するアプリケーション実行部と、当該ログ送信装置の状態の変化を示す情報である環境コードを生成する環境変化管理部と、前記ログおよび前記環境コードを前記ログ収集装置に送信する送信部とを備え、前記環境変化管理部は、前記アプリケーション実行部が前記ログを前回出力してから今回出力するまでの状態の変化を示す前記環境コードを生成する。
本発明の第２の態様によるログ収集システムは、通信網を介して接続されるログ送信装置、およびログ収集装置を含むログ収集システムであって、前記ログ送信装置は、ログを出力するアプリケーション部と、当該ログ送信装置の状態の変化を示す情報である環境コードを生成する環境変化管理部と、前記ログおよび前記環境コードを前記ログ収集装置に送信する送信部とを備え、前記環境変化管理部は、前記アプリケーション部が前記ログを前回出力してから今回出力するまでの状態の変化を示す前記環境コードを生成し、前記ログ収集装置は、前記ログ送信装置から受信した前記ログを解析し障害を検知する障害検知部と、前記ログ送信装置から受信した前記環境コードを用いて状態が同一または類似する他のログ送信装置を判定する類似環境判定部と、を備える。
【発明の効果】
【０００６】
本発明によれば、障害の検出と異常発生時の状態の再現に必要な情報が得られるので、障害が発生した機器から詳細なログが得られない場合でも、異常発生時の状態が類似する他の機器のログを用いて障害原因の調査ができる。
【図面の簡単な説明】
【０００７】
【図１】ログ収集システム１の全体構成図
【図２】ログ送信装置の構成図
【図３】ログ収集装置の構成図
【図４】概要ログＤＢの構成と格納された情報を示す図
【図５】詳細ログＤＢの構成と格納された情報を示す図
【図６】環境ＩＤ定義情報の一例を示す図
【図７】アプリケーション実行部が表示操作部に表示する画面の例を示す図
【図８】図８（ａ）は詳細ログの一例を示す図、図８（ｂ）は概要ログの一例を示す図、図８（ｃ）は環境コードの一例を示す図、
【図９】環境変化管理部の動作を示すフローチャート
【図１０】図１０（ａ）は従前に収集した環境情報を示す図、図１０（ｂ）は新たに収集した環境情報を示す図
【図１１】ログ出力部の動作を示すフローチャート
【図１２】ログ送信部の動作を示すフローチャート
【図１３】障害検知部の動作を示すフローチャート
【図１４】環境情報の復元処理の概要を説明する図
【図１５】図１５（ａ）は環境情報一覧表を示す図、図１５（ｂ）は処理結果である類似度計算結果表を示す図
【図１６】詳細ログの一例を示す図
【図１７】変形例１におけるユーザへの送信承諾を求める図
【図１８】変形例１におけるログ要求受信部の動作を表すフローチャート
【図１９】変形例２におけるベースＩＤ定義表の一例を示す図
【図２０】第２の実施の形態におけるログ収集システムの全体構成図
【図２１】ログ間接送信装置およびログ直接送信装置の構成を示す図
【図２２】概要ログＤＢの構成および格納された情報を示す図
【発明を実施するための形態】
【０００８】
（第１の実施の形態）
以下、図１〜図１６を参照して、ログ送信装置およびログ収集システムの第１の実施の形態を説明する。
【０００９】
（全体構成と発明の概要）
図１は、ログ収集システム１の全体構成図である。ログ収集システム１は、１台のログ収集装置２００と、複数のログ送信装置１１００とから構成される。ログ収集装置２００と複数のログ送信装置１１００とは、ネットワーク５００を介して接続される。ネットワーク５００は広域のネットワーク網、たとえばインターネットである。ログ送信装置１１００は、たとえば車両に搭載可能なカーナビゲーションシステム（以下、「カーナビ」と呼ぶ）である。ログ収集装置２００はログ送信装置１１００が出力するログを収集し解析するサーバ装置である。
【００１０】
ログ送信装置１１００が送信するログには、詳細ログと概要ログの２種類がある。概要ログは、詳細ログよりも情報量が少ないが、少なくとも何らかの障害が発生したことがログ収集装置２００により検出可能な情報が含まれる。詳細ログには、概要ログよりも詳細な情報、たとえば障害の原因究明や障害の解決に資する情報が含まれる。
【００１１】
第１の実施の形態の概要は以下のとおりである。ログ収集装置２００は、収集したログ情報から異常を検出すると、その詳細を検討するために、異常が検出されたログを送信したログ送信装置１１００（以下、「被異常検出装置」と呼ぶ）に詳細ログを要求する。しかし、ログ収集装置２００が詳細ログの要求を送信した際に、被異常検出装置の電源がオフの状態である場合など、詳細ログの送信が不可能な場合が想定される。そのためログ収集装置２００は、被異常検出装置だけでなく、被異常検出装置と環境が同一または類似の他のログ送信装置１１００（以下、「代替装置」と呼ぶ）に詳細ログを要求する。ただしログ送信装置１１００の「環境」とは、ハードウエアおよびソフトウエアの少なくとも一方の構成を含むログ送信装置１１００の状態である。ログ収集装置２００は、代替装置から受信する詳細ログを用いて異常の詳細を解析する。以下、詳細を説明する。
【００１２】
（ログ送信装置の構成）
図２は、ログ送信装置１１００の構成図である。ログ送信装置１１００は、概要ログＤＢ６１０および詳細ログＤＢ６２０を格納する記憶部１１０１、ログ送信装置１１００の一連の処理を実行する制御部１１０２、アプリケーションの実行画面等を表示しユーザーの操作を受け付ける表示操作部１１０３、およびログ収集装置２００との通信を行う通信部１１０４を備える。制御部１１０２は、不図示のＲＯＭに格納されたプログラムを不図示のＣＰＵが実行することにより、アプリケーション実行部１１１０と、環境変化管理部１１２０と、ログ出力部１１３０と、ログ送信部１１４０と、ログ要求受信部１１５０として動作する。表示操作部１１０３は、ユーザへの情報提示機能とユーザからの操作を受け付ける入力機能とを備える、たとえば液晶タッチパネルである。表示操作部１１０３は、制御部１１０２の指令に基づき情報を提示し、ユーザの入力を制御部１１０２に伝達する。
【００１３】
アプリケーション実行部１１１０は、１以上のアプリケーション、たとえば目的地検索のアプリケーションを実行し、各アプリケーションの動作ログであるメッセージ６０１をログ出力部１１３０に出力する。メッセージ６０１には、詳細ログと概要ログとが含まれる。アプリケーション実行部１１１０は、概要ログを出力する場合には詳細ログを必ず出力するが、詳細ログを出力する場合に概要ログを出力しないこともある。
【００１４】
環境変化管理部１１２０は、ログ送信装置１１００の環境の変化を監視しており、アプリケーション実行部１１１０により概要ログが出力される毎の環境の変化を、後に詳述する環境コード６０２として出力する。すなわち、詳細ログのみが出力され概要ログが出力されない場合は、環境変化管理部１１２０は環境コード６０２を出力しない。たとえば、ログ送信装置１１００の環境がハードウエア構成およびソフトウエア構成である場合に、ハードウエアの追加や取り外し、ソフトウエアのバージョンアップは環境の変化として環境変化管理部１１２０に検出される。
【００１５】
ログ出力部１１３０は、アプリケーション実行部１１１０が出力する詳細ログを詳細ログＤＢ６２０に格納する。ログ出力部１１３０は、アプリケーション実行部１１１０が出力する概要ログ、および環境変化管理部１１２０が出力する環境コード６０２を概要ログＤＢ６１０に格納する。以下では、概要ログと環境コード６０２をあわせて「概要セット」と呼ぶ。概要ログＤＢ６１０の構成、および詳細ログＤＢ６２０の構成は後述する。
【００１６】
ログ送信部１１４０は、あらかじめ定められた時間周期ごとに概要ログＤＢ６１０に格納された概要セット６０３をログ収集装置２００に送信する。またログ送信部１１４０は、ログ要求受信部１１５０からの動作指令に基づき詳細ログＤＢ６２０に格納された詳細ログをログ収集装置２００に送信する。
ログ要求受信部１１５０は、ログ収集装置２００から詳細ログ要求を受信すると、ログ送信部１１４０に動作指令を出力し、ログ送信部１１４０にログ収集装置２００へ詳細ログを送信させる。
なお、アプリケーション実行部１１１０、環境変化管理部１１２０、ログ出力部１１３０、ログ送信部１１４０、およびログ要求受信部１１５０は、専用のハードウエアとして実現する構成としても良い。
【００１７】
（ログ収集装置の構成）
図３は、ログ収集装置２００の構成図である。ログ収集装置２００は、収集したログが格納される記憶部２０１と、ログ収集装置２００の一連の処理を実行する制御部２０２と、ログ送信装置１１００との通信を行う通信部２０３とを備える。制御部２０２は、不図示のＲＯＭに格納されたプログラムを不図示のＣＰＵが実行することにより、障害検知部２１０と、環境情報復元部２２０と、類似環境判定部２３０として動作する。なお、障害検知部２１０、環境情報復元部２２０、類似環境判定部２３０は、専用のハードウエアとして実現する構成としても良い。
【００１８】
障害検知部２１０は、ログ送信装置１１００から受信した概要ログに基づき障害の発生を検知し、被異常検出装置および代替装置に詳細ログ要求を送信する。障害発生の検知は、たとえば後述するＨＴＴＰレスポンスのステータスコードや、ログの相関関係に基づき判断される。ログの相関関係とは、リクエストのログに対するレスポンスのログ、関数の呼び出しログに対する呼び出された関数のログがそれぞれ存在することである。詳細ログ要求の送信はたとえば、ログ送信装置１１００の通信部１１０４がＳＭＳ（ＳＭＳ：Ｓｈｏｒｔ  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ）等のＰＵＳＨ型の通知機能を利用可能である場合は、ＰＵＳＨ型の通知によって実現できる。ただしログ送信装置１１００からログ収集装置に対してポーリング処理を繰り返すことにより実現してもよい。
【００１９】
環境情報復元部２２０は、ログ情報に含まれる環境コード６０２の履歴、および初期環境情報２２１を用いて、それぞれのログ送信装置１１００の環境（状態）を表す環境情報を復元する。初期環境情報２２１は、それぞれのログ送信装置１１００の初期、すなわち製品出荷時の環境を示す情報である。なお初期環境情報２２１はログ収集装置２００の記憶部２０１に格納されるが、図３では便宜的に環境情報復元部２２０に備えられるように記載している。
類似環境判定部２３０は、環境情報復元部２２０が復元したそれぞれのログ送信装置１１００の環境情報を用いて、障害が発生したログ送信装置１１００と環境が類似する他のログ送信装置１１００を判定する。すなわち類似環境判定部２３０は、障害検知部２１０が障害を検知した被異常検出装置に対する代替装置を特定する。
【００２０】
記憶部２０１には、ログ収集装置２００に接続されるそれぞれのログ送信装置１１００に対応する概要セットの格納領域、および詳細ログの格納領域が確保される。図３には、ログ収集装置２００にＮ個のログ送信装置１１００が接続される場合の記憶部２０１の構成を示している。すなわち記憶部２０１には、それぞれのログ送信装置１１００が送信する概要セットが格納されるＮ個の概要ＤＢと、それぞれのログ送信装置１１００が送信する詳細ログが格納されるＮ個の詳細ＤＢとが格納される。それぞれの概要ＤＢの構成は、対応するログ送信装置１１００の概要ログＤＢ６１０と同様であり、それぞれの詳細ＤＢの構成は詳細ログＤＢ６２０と同様である。
【００２１】
（概要ログＤＢの構成）
図４は、概要ログＤＢ６１０の構成と格納された情報を示す図である。概要ログＤＢ６１０は、時刻６１１、概要メッセージ６１２、および環境コード６１３の３つのフィールドから構成される。時刻６１１のフィールドには、概要ログが出力された時刻が格納される。概要メッセージ６１２のフィールドには、アプリケーション実行部１１１０が出力した概要ログが格納される。環境コード６１３のフィールドには、環境変化管理部１１２０が出力した環境コード６０２が格納される。ただし環境に変化がなく環境コード６１３が出力されなかった場合は、該当する情報がないことを示す「−」が格納される。
【００２２】
図４に示す格納情報の２行目のログには、２０１５年１０月３日の３時１５分３２．７６５秒に、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を用いたリクエスト処理（以下、「ＨＴＴＰリクエスト」と呼ぶ）が行われたことを示している。また、環境コード６１３のフィールドには「−」が格納されており、直前に概要ログが出力されてからの環境の変化がなかったことが示されている。
【００２３】
続く３行目のログには、約０．５秒後である同日の３時１５分３３．４２３秒にＨＴＴＰを用いたレスポンス（以下、「ＨＴＴＰレスポンス」と呼ぶ）を受信し、ステータスコードが２００であったことを示している。ステータスコードとは、ＨＴＴＰレスポンスの概要を示すコードであり、２００番台は処理が正常に行われたことを示し、４００番台は処理を要求したクライアントに起因する問題により処理が正常に行われなかったことを示す。
【００２４】
この３行目のログにおける環境コード６１３のフィールドにも「−」が格納されているので、このときも環境の変化がなかったことが示されている。そして４行目のログには、約０．１秒後に画面遷移が行われたこと、およびログ送信装置１１００の環境が変化しており「１００１−１２」の環境コードが出力されたことが示されている。
【００２５】
続く５行目のログには、翌々日の２０１５年１０月５日１時０分４７．７８６秒にＨＴＴＰリクエストが行われたこと、およびログ送信装置１１００の環境が変化しており「２−１０１」の環境コードが出力されたことが示されている。６行目のログには、約１秒後にＨＴＴＰレスポンスを受信し、ステータスコードが４００であったこと、および環境の変化がなかったことが示されている。７行目のログには、約０．１秒後に画面遷移が行われたこと、およびログ送信装置１１００の環境が変化しており「１００１−１４」の環境コードが出力されたことが示されている。
【００２６】
（詳細ログＤＢの構成）
図５は、詳細ログＤＢ６２０の構成と格納された情報を示す図である。詳細ログＤＢ６２０は、時刻６２１、および詳細メッセージ６２２の２つのフィールドから構成される。時刻６２１のフィールドには、詳細ログが出力された時刻が格納される。詳細メッセージ６２２のフィールドには、アプリケーション実行部１１１０が出力した詳細ログが格納される。
【００２７】
図５に示す格納情報の２行目のログには、２０１５年１０月３日の３時１５分３２．７６５秒に、ＨＴＴＰリクエストが送信され、そのメソッドは「ＧＥＴ」であったことが示されている。さらに、リクエストしたＵＲＬが具体的に示されている。３行目のログには、ステータスコードが２００であるＨＴＴＰレスポンスを受信し、そのステータスコードの意味は「ＯＫ」であること、すなわち正常に処理が行われたことが示されている。４行目のログには、画面遷移が行われ遷移先の画面ＩＤが１２であることが示されている。
５行目および７行目には、いくつかのログの記載が省略されていることが示されている。６行目のログには、翌日の５時１５分３３．４２３秒にソフトウエアがバージョン１００からバージョン１０１にアップデートされたことが示されている。
【００２８】
８行目のログには、２０１５年１０月５日１時０分４７．７８６秒にＨＴＴＰリクエストが送信され、そのメソッドは「ＧＥＴ」であったことが示されている。さらに、リクエストしたＵＲＬが具体的に示されている。９行目のログには、ステータスコードが４００であるＨＴＴＰレスポンスを受信したこと、およびそのステータスコードの意味は「ＢａｄＲｅｑｕｅｓｔ」であること、すなわちログ送信装置１１００が送信したＨＴＴＰリクエストに問題があったことが示されている。１０行目のログには、画面遷移が行われ遷移先の画面ＩＤが１４であることが示されている。
図４に示す概要ログＤＢ６１０と図５に示す詳細ログＤＢ６２０を比較すると、概要ログＤＢ６１０の１０月３日と１０月５日のそれぞれ３つのログは、詳細ログＤＢ６２０の２〜４行目のログと８〜１０行目のログにそれぞれ対応する。すなわち、少なくともソフトウエアのアップデートに関するログは概要ログＤＢ６１０には存在しない。
【００２９】
（環境コード）
環境コードとは、ログ送信装置１１００の環境の変化を示す事前に定められたコードであり、変化した環境の種類を示す環境ＩＤと環境値との組み合わせで表現される。環境値とは、その環境ＩＤであらわされる項目の変化後の状態を示す値である。環境ＩＤは、環境ＩＤ定義情報により定義される。環境ＩＤ定義情報は、ログ送信装置１１００の環境変化管理部１１２０、およびログ収集装置２００の環境情報復元部２２０に格納される。
【００３０】
図６は、環境ＩＤと環境値の意味を示す、環境ＩＤ定義情報６３０の一例を示す図である。図６に示すように、環境ＩＤ「１」はハードウエア構成が変更されたことを示し、その環境ＩＤに付される環境値は変更後のハードウエア構成を特定する情報である。たとえば環境ＩＤ「１」の環境値が「Ｔｙｐｅ−Ａ」の場合は別途定義される「Ｔｙｐｅ−Ａ」のハードウエア構成に変更されたことを示す。同様に、環境ＩＤ「２」はソフトウエアバージョンが変更されたことを示し、環境ＩＤ「２」の環境値は変更後のソフトウエアバージョンを示す。
【００３１】
（動作例）
以上が、ログ収集システム１の構成である。以下では、本システムの動作を説明する。
図７は、図４および図５に示したＨＴＴＰリクエストを行った結果として、アプリケーション実行部１１１０が表示操作部１１０３に表示する画面の例を示す図である。図７（ａ）は２０１５年１０月３日にアクセスした結果を示し、図７（ｂ）は２０１５年１０月５日にアクセスした結果を示す。いずれの画面も同一のＵＲＬである「ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｎｅａｒｂｙ−ｒｅｓｔａｕｒａｎｔ．ｈｔｍｌ」にアクセスしている。このＵＲＬは、ＨＴＴＰリクエストが送信された位置の付近に存在するレストランを検索して表示するものである。
【００３２】
１０月３日にアクセスした場合は、図４や図５でステータスコードが２００となっていることからもわかるように、正常に処理がなされたので、図７（ａ）に示すように表示操作部１１０３にはレストランの位置が表示される。一方、１０月５日にアクセスした場合は、図４や図５でステータスコードが４００となっていることからもわかるように何らかの要因でエラーが発生し、図７（ｂ）に示すようにレストランは表示されず、表示操作部１１０３にはエラーの内容が表示される。
【００３３】
図８は、２０１５年１０月５日の実行画面が表示された際の、アプリケーション実行部が出力するメッセージ６０１および環境変化管理部１１２０が出力する環境コード６０２を示す図である。図８（ａ）に示す詳細ログは、ＨＴＴＰのＧＥＴメソッドにより、図に示したＵＲＬへのリクエストが行われたことを示している。図８（ｂ）に示す概要ログは、ＨＴＴＰリクエストが行われたことを示している。図８（ｃ）に示す環境コード６０２は、環境コードが「２−１０１」であることを示している。図６に示した環境ＩＤ定義情報６３０によれば、「２」は環境ＩＤがソフトウェアバージョンであること、「１０１」は環境ＩＤ「２」に対応する環境値が１０１であることを示している。すなわち「２−１０１」という環境コード６０２は直前に概要ログが出力されてから今回の概要ログが出力されるまでに、ソフトウェアバージョンが「１０１」に変化したことを示している。
【００３４】
（環境変化管理部の動作）
図９は、環境コード６０２を生成する環境変化管理部１１２０の動作を示すフローチャートである。環境変化管理部１１２０は、アプリケーション実行部１１１０が概要ログを出力すると動作が図９により示されるプログラムを実行する。以下に説明する各ステップの実行主体は環境変化管理部１１２０、すなわちログ送信装置１１００が備える不図示のＣＰＵである。
【００３５】
環境変化管理部１１２０は、まず、ログ送信装置１１００の環境情報を収集する（ステップＳ１１２１）。環境情報の収集は、環境ＩＤ定義情報６３０において定義された項目の情報を収集することにより行われる。次に環境変化管理部１１２０は、収集した環境情報の各値について、従前に収集し記憶部１１０１に格納していた環境情報と比較し、前回情報を収集した時から変化があるか否かを判断する（ステップＳ１１２２）。環境情報に変化があると判断する場合は、変化した環境ＩＤと環境値を組み合わせた環境コードを生成し（ステップＳ１１２３）、変化後の環境情報を記憶部１１０１に格納し（ステップＳ１１２４）、図９のフローチャートを終了する。ステップＳ１１２２において環境情報に変化がないと判断する場合は、そのまま図９のフローチャートを終了する。
【００３６】
図１０（ａ）、（ｂ）は、図４および図５に示す２０１５年１０月５日のＨＴＴＰリクエストが行われた際の環境情報の比較を示す図であり、図１０（ａ）は従前に収集し記憶部１１０１に格納していた環境情報を示し、図１０（ｂ）は新たに収集した環境情報を示す。図１０（ａ）と図１０（ｂ）の相違点は環境ＩＤ「２」の環境値であり変化後の環境値は「１０１」なので、環境コード６０２は「２−１０１」となる。
【００３７】
（ログ出力部の動作）
図１１は、アプリケーション実行部１１１０からメッセージ６０１を受け取った際のログ出力部１１３０の動作を示すフローチャートである。以下に説明する各ステップの実行主体はログ出力部１１３０、すなわちログ送信装置１１００が備える不図示のＣＰＵである。
【００３８】
ログ出力部１１３０は、まず、メッセージ６０１に含まれる詳細ログを詳細ログＤＢ６２０に格納する（ステップＳ１１３１）。次に、メッセージ６０１に概要ログが含まれるか否かを判断する（ステップＳ１１３２）。概要ログが含まれると判断する場合は、メッセージ６０１に含まれる概要ログと環境変化管理部１１２０から受信した環境コード６０２とを概要ログＤＢ６１０に格納し（ステップＳ１１３３）、図１１のフローチャートを終了する。ステップＳ１１３２において概要ログが含まれないと判断する場合は、そのまま図１１のフローチャートを終了する。
【００３９】
（ログ送信部の動作）
図１２は、上記のようにして格納された概要ログＤＢ６１０および詳細ログＤＢ６２０の内容をログ収集装置２００に送信する際の、ログ送信部１１４０の動作を示すフローチャートである。以下に説明する各ステップの実行主体はログ送信部１１４０、すなわちログ送信装置１１００が備える不図示のＣＰＵである。
ログ送信部１１４０は、５分毎などの一定の時間間隔、ログ送信部１１４０の起動直後、またはユーザによる動作停止指令による動作停止直前に以下の送信処理を行う。ただし、ユーザーの操作入力に基づき送信処理を実行してもよい。
【００４０】
ログ送信部１１４０は、まず、概要ログＤＢ６１０の内容をログ収集装置２００に送信する（ステップＳ１１４１）。次にログ送信部１１４０は、概要ログＤＢ６１０の内容を消去する（ステップＳ１１４２）。そしてログ送信部１１４０は、ログ収集装置２００から詳細ログ要求を受信しているか否かを確認する（ステップＳ１１４３）。詳細ログ要求を受信していると判断する場合は、詳細ログＤＢ６２０の内容をログ収集装置２００に送信し（ステップＳ１１４４）、詳細ログＤＢ６２０の内容を消去し（ステップＳ１１４５）図１２のフローチャートを終了する。ログ送信部１１４０は詳細ログ要求を受信していないと判断する場合は、そのまま図１２のフローチャートを終了する。
以上が、ログ情報を送信する際の、ログ送信装置１１００の動作である。このようにして送信された概要ログＤＢおよび詳細ログＤＢの内容は、ログ収集装置２００の記憶部２０１に格納される。
【００４１】
（ログ収集装置の動作）
図１３は、障害検知部２１０の動作を示すフローチャートである。以下に説明する各ステップの実行主体は障害検知部２１０、すなわちログ収集装置２００が備える不図示のＣＰＵである。障害検知部２１０は、ログ収集装置２００に接続されたそれぞれのログ送信装置１１００のログごとに、所定時間、たとえば２４時間が経過するたびに以下に説明する処理を実行する。以下では、あるログ送信装置１１００に対応する第１概要ＤＢ６４０と第１詳細ＤＢ６５０を例として説明する。
【００４２】
まず障害検知部２１０は、記憶部２０１に格納されている第１概要ＤＢ６４０を参照し、所定の期間、たとえば最新の２４時間分の概要ログを取得する（ステップＳ２１１）。次に、取得した概要ログに何らかのエラーが含まれているか否かを確認する（ステップＳ２１２）。異常の有無は、たとえばＨＴＴＰレスポンスのステータスコードが、２００番台であれば異常なしと判断され、２００番台以外であれば異常ありと判断することができる。障害検知部２１０は、異常が含まれると判断する場合は、次に説明する環境情報の復元を行い（ステップＳ２１３）、後に説明する類似環境の判定に基づき代替装置を特定する（ステップＳ２１４）。そして障害検知部２１０は、異常が検出されたログを送信したログ送信装置１１００、すなわち被異常検出装置と代替装置とに詳細ログ要求を送信し（ステップＳ２１５）図１３のフローチャートを終了する。障害検知部２１０は異常が含まれないと判断する場合は、そのまま図１３のフローチャートを終了する。
【００４３】
（ログ収集装置の環境情報復元処理）
障害検知部２１０による環境情報の復元処理は、いずれかのログ送信装置１１００から取得した概要ログにおいて異常が検出された際に各ログ送信装置１１００の環境（状態）同士を比較するために、各ログ送信装置１１００の環境情報を復元する処理である。この処理では、処理対象のログ送信装置１１００の初期環境情報２２１を、当該ログ送信装置１１００に対応する概要ＤＢに格納されている概要セットに含まれる環境コード６０２で更新、すなわち上書きする。すなわち、初期環境情報２２１と環境コード６０２とで共通する環境ＩＤに関する記載があれば環境コード６０２の記載が優先され、いずれか片方にしかない環境ＩＤに関する記載はそのまま環境情報として復元される。この処理は、ステップＳ２１２で概要ログから異常が検出されると、全てのログ送信装置１１００を処理対象として順番に行われる。
【００４４】
図１４は、環境情報の復元処理の一例を示す図である。ここでは、図４に示す概要ログが得られ、障害検知部２１０が１０月５日の１時０分４８．５２５秒のログで異常を検出した場合を例として環境情報の復元処理を説明する。たとえば図１４に示すように、初期環境情報２２１に環境コードの「１−ＴｙｐｅＡ」と「２−１００」に相当する情報が含まれ、概要ＤＢに含まれる異常が検出された時刻までの環境コード６０２が「１００１−１２」と「２−１０１」であった場合に、次のように環境情報が復元される。すなわち、「１−ＴｙｐｅＡ」と「２−１０１」と「１００１−１２」を含む環境情報が復元される。環境コード「１」の環境値は概要ＤＢに含まれないので初期値のままであり、環境コード「２」の環境値は「１０１」に変更されており、環境コード「１００１」の環境値は「１２」に変更されているからである。
【００４５】
（ログ収集装置の類似環境判定処理）
障害検知部２１０による類似環境の判定処理は、ステップＳ２１３の環境情報復元処理の結果を用いてたとえば以下のように行われる。すなわち、あらかじめ設定された環境ＩＤの各項目の重みを使用し、異常が検出された被異常検出装置以外の全てのログ送信装置１１００を対象として、被異常検出装置と環境ＩＤの環境値が一致する項目の重みを合計した値を類似度としてそれぞれ算出する。そして類似度の高さに基づき代替装置を決定する。代替装置は、類似度が最も高い１台のログ送信装置１１００としてもよいし、類似度が高い上位の所定数のログ送信装置１１００としてもよい。
【００４６】
図１５は類似環境判定処理の一例を示す図であり、図１５（ａ）は類似環境判定処理の前提となる環境情報の一覧である環境情報一覧表７０６を示す図であり、図１５（ｂ）は処理結果である類似度計算結果表７０７を示す図である。図１５に示す例では、４つのログ送信装置、すなわち第１〜第４ログ送信装置があり、そのうち第１ログ送信装置が被異常検出装置である。図１５（ａ）に示すように、それぞれのログ送信装置の環境情報は異なっており、環境ＩＤごとに第１ログ送信装置と同じ環境値であったり異なる環境値であったりする。
【００４７】
図１５（ｂ）に示す「重み」のフィールドは、あらかじめ設定された環境ＩＤごとの重みを示している。ある環境ＩＤの環境値が、被異常検出装置である第１ログ送信装置と一致する場合には、その環境ＩＤの重みが加算される。たとえば第２ログ送信装置は、環境ＩＤ「１」の環境値が第１ログ送信装置と一致するので、類似度計算結果表７０７における環境ＩＤ「１」の値は、重みの値である「１０」となる。第２ログ送信装置は、環境ＩＤ「２」の環境値も第１ログ送信装置と一致するので、同様に環境ＩＤ「２」の値は、重みの値である「１５」となる。しかし第２ログ送信装置の環境ＩＤ「１００１」の環境値は第１ログ送信装置と一致しないので、類似度計算結果表７０７における環境ＩＤ「１００１」の値は、ゼロとなる。そのため、第２ログ送信装置の重みの合計、すなわち類似度は「２５」である。ただしここでは環境ＩＤ「１」、「２」、「１００１」の値の合計値のみを示している。同様に第３ログ送信装置の類似度は「１５」、第４ログ送信装置の類似度は「１６」である。
したがって、類似度が最も高い装置のみを代替装置とする場合は第２ログ送信装置のみが代替装置となり、類似度が高い上位２装置を代替装置とする場合は第２ログ送信装置と第４ログ送信装置が代替装置となる。
【００４８】
図１６は、代替装置を類似度が高い上位２つのログ送信装置１１００、すなわち第２ログ送信装置と第４ログ送信装置とした場合に、これらの代替装置から受信した詳細ログを示す図である。ただし図１６では、ソフトウエアアップデートのログと、前述のＵＲＬへのアクセスログだけを示している。ログ収集装置２００は、被異常検出装置の詳細ログに加えて図１６に示す代替装置の詳細ログも得られるので、ソフトウエアをバージョン１０１にアップデートした場合にエラーが発生している可能性が高いと推測することができる。このように障害発生環境が類似する他のログ送信装置のログを収集することで、障害発生条件や再現手順の調査を開始することが可能になる。
【００４９】
上述した第１の実施の形態によれば、次の作用効果が得られる。
（１）ログ送信装置１１００は、ネットワーク５００を介してログ収集装置２００と接続される。ログ送信装置１１００は、概要ログを出力するアプリケーション実行部１１１０と、ログ送信装置１１００の状態の変化を示す情報である環境コード６０２を生成する環境変化管理部１１２０と、概要ログおよび環境コードをログ収集装置２００に送信するログ送信部１１４０とを備え、環境変化管理部１１２０は、アプリケーション実行部１１１０が概要ログを前回出力してから今回出力するまでのログ送信装置１１００の状態の変化、すなわち環境変化を示す環境コード６０２を生成する。
ログ送信装置１１００は、ログ送信装置１１００は概要ログだけでなく、この概要ログが生成された際の環境を示す環境コード６０２を送信するので、これを受信したログ収集装置２００は詳細な発生条件や再現手順を表現可能となる。環境コード６０２は、いわばログ送信装置１１００の環境情報の差分情報なので、詳細な情報でありながら、環境情報そのものよりも記録に必要な記憶領域や通信量が削減される。
また、ログ送信装置１１００は障害の検出に必要な概要ログと異常発生時の状態の再現に必要な環境コード６０２を提供できるので、ログ収集装置２００は障害が発生したログ送信装置１１００から詳細ログが得られない場合でも、異常発生時の状態が類似する他のログ送信装置１１００のログを用いて障害原因の調査ができる。
【００５０】
（２）ログ収集装置２００から詳細ログ指令を受信すると、概要ログよりも詳細な情報を含む詳細ログを送信するログ要求受信部、すなわち通信部１１０４を備える。
そのため、平時は限られた通信帯域や少ない消費電力で処理可能な、情報量の少ない概要ログを送信し、ログ収集装置２００からの要求に応じて、詳細を調査するための詳細ログを送信することができる。
【００５１】
（３）環境コード６０２は、変化のあった状態の項目を示す項目コード、すなわち環境ＩＤと、項目コードによりあらわされる項目の変化後の値を示す値コード、すなわち環境値とから構成される。
そのため、ログ送信装置１１００の環境の変化を簡潔に表現できる。
【００５２】
（４）ログ収集システム１は、ネットワーク５００を介して接続されるログ送信装置１１００、およびログ収集装置２００を含む。ログ送信装置１１００は、ログ送信装置１１００は、ログを出力するアプリケーション実行部１１１０と、ログ送信装置１１００の状態の変化を示す情報である環境コード６０２を生成する環境変化管理部１１２０と、概要ログおよび環境コードをログ収集装置２００に送信するログ送信部１１４０とを備え、環境変化管理部１１２０は、アプリケーション実行部１１１０が概要ログを前回出力してから今回出力するまでのログ送信装置１１００の状態の変化、すなわち環境変化を示す環境コード６０２を生成する。ログ収集装置２００は、ログ送信装置１１００から受信した概要ログを解析し障害を検知する障害検知部２１０と、ログ送信装置１１００から受信した環境コード６０２を用いてログ送信装置１１００の状態、すなわち環境情報を復元する環境情報復元部２２０と、環境情報復元部２２０を用いて、障害検知部２１０が障害を検知した概要ログを送信したログ送信装置１１００である被異常検出装置と同一または類似する他のログ送信装置１１００を判定する類似環境判定部２３０と、を備える。
ログ収集装置２００は、受信した概要ログを解析して障害を検出し、被異常検出装置と同一または類似する他のログ送信装置１１００を判定するので、それらの概要ログを比較することにより障害の原因を概要ログの範囲で調査できる。
【００５３】
（５）ログ収集装置２００は、障害検知部２１０が障害を検知した概要ログを送信したログ送信装置である被異常検出装置と環境が同一または類似である他のログ送信装置１１００に詳細ログ指令を送信するログ要求部、すなわち障害検知部２１０を備える。ログ送信装置１１００は、ログ収集装置２００から詳細ログ要求を受信すると、概要ログよりも詳細な情報を含む詳細ログを送信するログ要求受信部１１５０を備える。
そのためログ収集装置２００は、被異常検出装置と状態が同一または類似である他のログ送信装置１１００の詳細ログを取得できる。これによりログ収集装置２００は、環境の相違が障害へ与える影響を調査できる。
【００５４】
（変形例１）
ログ送信装置１１００は、詳細ログ要求を受信するとユーザへ詳細ログを送信することの承諾を求め、ユーザの承諾が得られた場合のみ詳細ログを送信してもよい。ユーザへ詳細ログを送信することの承諾を求める手段は、不図示の音声出力部を用いて音声による問い合わせを行ってもよいし、表示操作部１１０３を用いて表示による問い合わせを行ってもよい。さらに、詳細ログ要求とともに未送信の概要ログを併せて送信してもよい。
【００５５】
図１７は、表示操作部１１０３を用いて表示による問い合わせを行う例を示す図である。図１７に示す図において、ユーザにより「はい」が選択されると詳細ログが送信され、ユーザにより「いいえ」が選択されると詳細ログは送信されない。
図１８は、変形例１におけるログ要求受信部１１５０の動作を表すフローチャートである。以下に説明する各ステップの実行主体は、ログ要求受信部１１５０、すなわちログ送信装置１１００の不図示のＣＰＵである。
【００５６】
ステップＳ１１５１では、ログ送信装置１１００のユーザに送信可否の確認、すなわち送信の承諾を求める問い合わせを行う。続くステップＳ１１５２では送信ＯＫの応答、すなわち承諾が得られたか否かを判断する。肯定的な応答が得られたと判断する場合はステップＳ１１５３に進み概要ログＤＢ６１０から概要セットを取得して送信する。そして、続いて詳細ログＤＢ１１５５から詳細ログを取得して送信して図１８のフローチャートを終了する。ステップＳ１１５２で否定的な応答が得られたと判断する場合は、そのまま図１８のフローチャートを終了する。
【００５７】
なお、ステップＳ１１５２で否定的な応答が得られたと判断する場合に、ログ送信装置１１００がログ収集装置２００にその旨を送信し、これを受信したログ収集装置２００は、他のログ送信装置１１００に詳細ログ要求を送信してもよい。
またログ送信装置１１００は、詳細ログ要求を受信する前にあらかじめ詳細ログの送信可否の確認を行い、その結果を保存してもよい。この場合は、図１７に示す表示を行うことなく保存していた結果に基づき動作する。
【００５８】
（変形例２）
上述した第１の実施の形態では、環境コード６０２は環境ＩＤと環境値とから構成されたが、環境コード６０２がさらにベースＩＤを含んでもよい。ベースＩＤとは、基準となるログ送信装置１１００の状態を示す基準コードであり、ログ送信装置１１００のいくつかの環境ＩＤについて対応する環境値の初期値を定めたものである。ベースＩＤの値とそれに対応する環境情報における環境ＩＤごとの環境値の初期値は、ベースＩＤ定義表７１０により定義される。ベースＩＤ定義表７１０は、ログ収集装置２００およびログ送信装置１１００の両方に格納される。
図１９は、ベースＩＤ定義表７１０の一例を示す図である。図１９に示すように、ベースＩＤ定義表７１０にはベースＩＤごとに環境ＩＤと初期値としての環境値の組み合わせが規定される。なお図１９ではベースＩＤ定義表７１０に２つの環境ＩＤしか含まれていないが、３以上の環境ＩＤを含んでいてもよく、少なくとも１つの環境ＩＤを含めばよい。
【００５９】
変形例２における環境変化管理部１１２０は、環境コード６０２を初回に生成する場合は、基準コードが示すログ送信装置１１００の環境情報と現在のログ送信装置１１００の環境情報との差を示す環境ＩＤおよび環境値を生成する。環境変化管理部１１２０は、環境コード６０２を２回目以降に生成する場合は、アプリケーション実行部１１１０が概要ログを前回出力してから今回出力するまでのログ送信装置１１００の状態の変化を示す環境ＩＤおよび環境値を生成する。
【００６０】
たとえば、ログ送信装置１１００が初回に環境コード６０２を生成する際の環境情報が「１−ＴｙｐｅＡ、２−１０１」である場合に、ベースＩＤとして「０１」を使う場合は環境コード６０２として「０１−２−１０１」を出力する。ベースＩＤ「０１」によりあらわされる環境情報との相違点は、環境ＩＤ「２」の環境値だからである。そして次に環境コード６０２を生成する際の環境情報が「１−ＴｙｐｅＢ、２−１００」である場合は、環境コード６０２として「０１−１−ＴｙｐｅＢ」を出力する。前回の環境コード６０２の生成以降の環境情報の変化が「１−ＴｙｐｅＢ」だからである。
【００６１】
環境情報復元部２２０は、ログ収集装置２００に備えられるベースＩＤ定義表７１０と、受信する環境コード６０２とを用いてログ送信装置１１００の環境情報を復元する。
この変形例２によれば、ログ送信装置１１００の環境情報をベースＩＤにより表される環境情報との差分によって表現するので、ログとして記録する情報量を削減しつつ、詳細な環境情報を復元できる。
【００６２】
（変形例３）
上述した第１の実施の形態では、ログ収集装置２００の障害検知部２１０は、障害を検知すると被異常検出装置および代替装置に詳細ログ要求を送信した。しかし、被異常検出装置から詳細ログが得られない場合のみ代替装置に詳細ログ要求を送信してもよい。被異常検出装置から詳細ログが得られない場合とはたとえば、ログ収集装置２００が障害を検出した時点で被異常検出装置の電源がオフになっている等の理由により、ログ収集装置２００が被異常検出装置との通信を行うことができず、詳細ログ要求が送信できない場合である。また、ログ収集装置２００が詳細ログ要求を送信できたが所定の時間内、たとえば１０秒以内に詳細ログが被異常検出装置から送信されない場合も、詳細ログが得られない場合に含まれる。なお、詳細ログ要求が被異常検出装置に送信できなかった場合には、Ｗａｋｅ  Ｏｎ  ＬＡＮ等の技術を用いて遠隔地から電源をオンにしてもよい。
【００６３】
（変形例４）
上述した第１の実施の形態では、障害の発生を検知するとログ送信装置１１００に詳細ログ要求を送信したが、詳細ログ要求を送信せずに概要ログのみを用いて障害が発生する環境情報を特定してもよい。たとえば、代替装置の概要ログから被異常検出装置と同様の障害が発見されるか否かを判断し、複数の代替装置についてこの判断を行うことにより、障害が発生する環境情報を特定することができる。
【００６４】
（変形例５）
上述した第１の実施の形態では、アプリケーション実行部１１１０が詳細ログおよび概要ログを出力した。しかし、アプリケーション実行部１１１０が出力する詳細ログに基づきログ出力部１１３０が概要ログを生成してもよい。たとえば、詳細ログに対応する概要ログのテンプレートをあらかじめ用意しておき、用意したパターンに該当する詳細ログが出力された場合のみログ出力部１１３０が概要ログを生成する。この場合は、環境変化管理部１１２０は、ログ出力部１１３０が概要ログを生成した場合のみ環境コード６０２を出力する。
【００６５】
（変形例６）
上述した第１の実施の形態では、ログ送信装置１１００の「環境」とは、ハードウエアおよびソフトウエアの少なくとも一方の構成を示すものであった。しかし、ログ送信装置１１００の「環境」にログ送信装置１１００のリソース、すなわち不図示のＣＰＵの負荷率や、不図示の記憶領域の空き容量、不図示のＲＡＭの使用量などを加えてもよい。さらにログ送信装置１１００の温度や稼働時間など、障害発生の原因究明に資する可能性がある情報はさらにログ送信装置１１００の「環境」に加えてよい。
【００６６】
（第２の実施の形態）
図２０〜図２２を参照して、ログ送信装置およびログ収集システムの第２の実施の形態を説明する。以下の説明では、第１の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第１の実施の形態と同じである。本実施の形態では、主に、ログ収集装置２００への直接の通信手段を備えるログ送信装置（以下、「ログ直接送信装置」と呼ぶ）と、ログ収集装置２００への直接の通信手段を備えないログ送信装置（以下、「ログ間接送信装置」と呼ぶ）とを組み合わせて使用する点で、第１の実施の形態と異なる。
【００６７】
図２０は、第２の実施の形態におけるログ収集システム１Ａの全体構成図である。ログ収集システム１Ａは、１台のログ収集装置２００と、複数のログ間接送信装置１２００と、複数のログ直接送信装置１３００とから構成される。ログ直接送信装置１３００は、ネットワーク５００を介してログ収集装置２００と接続される。ログ間接送信装置１２００は、ログ直接送信装置１３００およびネットワーク５００を介してログ収集装置２００と接続される。ログ間接送信装置１２００は、たとえば車両に搭載可能なカーナビである。ログ直接送信装置１３００は、たとえば携帯電話、スマートフォン、または専用の通信モジュールである。
ログ収集装置２００の構成、および動作は第１の実施の形態と同様なので説明を省略する。
【００６８】
図２１は、ログ間接送信装置１２００およびログ直接送信装置１３００の構成を示す図である。ログ間接送信装置１２００およびログ直接送信装置１３００の構成や動作は、特に説明しない点は第１の実施の形態におけるログ送信装置１１００と同様である。すなわちログ間接送信装置１２００は、第１の実施の形態で説明したように、あらかじめ定められた時間周期ごとに概要セット６２３を送信する。この概要セット６２３は、後述するようにログ直接送信装置１３００の環境コード１６３２が付加されてログ収集装置２００へ送信される。
【００６９】
ログ間接送信装置１２００は、第１の実施の形態におけるログ送信装置１１００と比較して、通信部１２０４の通信先が限定される点が異なる。通信部１２０４は、ログ直接送信装置１３００の近距離通信部１３０６と通信を行う。通信部１２０４および近距離通信部１３０６は、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉ−Ｆｉ（登録商標）などによる通信を行う。すなわちログ間接送信装置１２００は、アプリケーション実行部１１１０が出力する概要ログと、環境変化管理部１２２０が出力する環境コード１６２２とをあわせて概要セット６２３としてログ直接送信装置１３００に出力する。
【００７０】
ログ直接送信装置１３００は、第１の実施の形態のログ送信装置１１００と比較して、近距離通信部１３０６をさらに備える点が異なる。またアプリケーション実行部１３１０が実行するアプリケーションは、後述する転送アプリを含む。さらに、通信部１３０４が複数の通信規格に対応し、使用する通信規格の変化が環境コード１６３２に反映される。たとえば、環境ＩＤ「２００１」は通信部１３０４が使用する通信規格が変化したことを示し、その値が「ゼロ」の場合は３Ｇに切り替えられたことを示し、その値が「１」の場合はＬＴＥに切り替えられたことを示す。
【００７１】
近距離通信部１３０６は、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉ−Ｆｉ（登録商標）などによりログ間接送信装置１２００と通信する。近距離通信部１３０６は、ユーザの指示などに基づき動作状態がオンとオフに切り替えられる。近距離通信部１３０６の動作状態がオフに切り替えられると、ログ間接送信装置１２００との通信が不可能になるがログ直接送信装置１３００の電力消費量が抑制される。近距離通信部１３０６の動作状態がオンに切り替えられると、ログ間接送信装置１２００との通信が可能になるがログ直接送信装置１３００の電力消費量が増加する。近距離通信部１３０６の動作状態の変化は、環境コード１６３２に反映される。たとえば、環境ＩＤ「２００２」は近距離通信部１３０６の動作状態が変化したことを示し、その値が「ゼロ」の場合はオフに切り替えられたことを示し、その値が「１」の場合はオンに切り替えられたことを示す。
【００７２】
転送アプリは、ログ間接送信装置１２００が出力する概要セット６２３を取得し、その概要セット６２３の内容を当該アプリケーションの概要ログとしてログ出力部１３３０に出力する。ログ直接送信装置１３００もログ間接送信装置１２００と同様に、アプリケーション実行部１３１０が出力する概要ログに環境変化管理部１３２０が出力する環境コード１６３２を付して概要セットを生成する。すなわち、ログ間接送信装置１２００のアプリケーション実行部１２１０が概要ログを出力すると、ログ間接送信装置１２００の環境コード１６２２、およびログ直接送信装置１３００の環境コード１６３２とが加えられて概要セット６３３となる。ただしアプリケーション実行部１３１０が実行するアプリケーションは概要セット６２３を処理する転送アプリに限定されないので、ログ直接送信装置１３００が出力する概要セット６３３には、ログ間接送信装置１２００の環境コード１６２２を含まないものもある。
【００７３】
ログ要求受信部１３５０は、ログ収集装置２００から詳細ログ要求を受信すると詳細ログＤＢ６２０Ｂに格納された詳細ログをログ収集装置２００に送信するだけでなく、ログ間接送信装置１２００に詳細ログ要求を送信する。そしてこの要求に応じてログ間接送信装置１２００から送信された詳細ログもログ収集装置２００に送信する。ただし、近距離通信部１３０６の動作状態がオフである場合などログ間接送信装置１２００との通信が行えない場合はログ間接送信装置１２００へ詳細ログ要求を送信しない。
【００７４】
図２２は、概要ログＤＢ６１０Ｂの構成および格納された情報を示す図である。図２２には、転送アプリの動作に基づくログ、すなわちログ間接送信装置１２００が出力した概要セット６２３に基づくログを示している。図２２に示すように、ログ間接送信装置１２００のアプリケーション実行部１２１０が出力した概要メッセージに、ログ間接送信装置１２００が生成した環境コード１６２２と、ログ直接送信装置１３００が生成した環境コード１６３２が付されている。たとえば、５行目のログからはＨＴＴＰレスポンスが得られてから画面遷移が行われるまでに、環境コード「２００１−１」すなわちログ直接送信装置１３００の通信部１３０４が使用する通信規格がＬＴＥに切り替えられたことを示している。そのためログ収集装置２００は、ログ間接送信装置１２００だけでなくログ直接送信装置１３００の環境情報も把握することができる。
【００７５】
上述した第２の実施の形態によれば、次の作用効果が得られる。
（１）ログ直接送信装置１３００は、他の１つのログ送信装置、すなわちログ間接送信装置１２００と通信を行う近距離通信部１３０６を備える。アプリケーション実行部１３１０は、ログ間接送信装置１２００から受信した概要ログおよびログ間接送信装置１２００から受信した環境コード１６２２を、概要ログとして出力する。
そのためログ直接送信装置１３００は、ログ間接送信装置１２００から受信した概要ログおよび環境コード１６２２に、環境変化管理部１３２０が出力する環境コード１６３２を加えた概要セット６３３をログ収集装置２００に送信する。これによりログ収集装置２００は、ログ間接送信装置１２００だけでなくログ直接送信装置１３００の環境情報も復元することができる。
【００７６】
（２）ログ直接送信装置１３００は、ログ収集装置２００から詳細ログ指令を受信すると、ログ間接送信装置１２００に詳細ログ指令を出力し、ログ間接送信装置１２００から受信した詳細ログをログ収集装置２００へ送信するログ要求受信部１３５０を備える。
そのためログ収集装置２００は、ログ直接送信装置１３００だけでなくログ間接送信装置１２００の詳細ログを取得できる。
【００７７】
（３）近距離通信部１３０６はオンまたはオフに動作状態が切り替え可能であり、環境変化管理部１３２０が出力する環境コード１６３２には、前記近距離通信部の動作状態の切り替えが反映される。そのため、近距離通信部１３０６の動作状態がオフに切り替えられていたことが原因で問題が生じていた場合に、原因の究明が容易となる。
【００７８】
（第２の実施の形態の変形例１）
ログ間接送信装置１２００は、詳細ログ要求を受信しなくても詳細ログをログ直接送信装置１３００に送信してもよい。ログ間接送信装置１２００が詳細ログをログ直接送信装置１３００に送信するタイミングは、所定の時間周期毎でもよいしアプリケーション実行部１２１０から詳細ログが出力される毎でもよい。
ログ直接送信装置１３００は、詳細ログ要求を受信しないタイミングでログ間接送信装置１２００から詳細ログを受信すると、ログ収集装置２００に送信せず詳細ログＤＢ６２０Ｂに蓄積する。そしてログ収集装置２００から詳細ログ要求を受信した際に、その詳細ログをログ収集装置２００に送信する。
【００７９】
この変形例によれば、ログ収集装置２００が詳細ログ要求を送信した際に、ログ間接送信装置１２００がログ直接送信装置１３００と通信できない場合でも、ログ収集装置２００はログ間接送信装置１２００がログ直接送信装置１３００に送信済みの詳細ログを取得できる。この変形例は、ログ間接送信装置１２００とログ直接送信装置１３００とが常には同一の場所で使われない場合や、ログ間接送信装置１２００の電源がオフにされている機会が多い場合に特に有効である。具体的には、ログ間接送信装置１２００が車両に搭載されるカーナビであり、ログ直接送信装置１３００が携帯端末の場合に特に有効である。
【００８０】
（第２の実施の形態の変形例２）
ログ間接送信装置１２００は、詳細ログ要求を受信するとユーザへ詳細ログを送信することの承諾を求め、ユーザの承諾が得られた場合のみ詳細ログを送信してもよい。このとき、ユーザへ詳細ログを送信することの承諾を求めるために、ログ間接送信装置１２００が備える表示操作部１２０３に問い合わせの表示を行ってもよいし、ログ直接送信装置１３００が備える表示操作部１３０３に問い合わせの表示を行ってもよい。
さらに、詳細ログ要求を送信する際に未送信の概要ログも併せて送信してもよい。
【００８１】
プログラムは不図示のＲＯＭに格納されるとしたが、プログラムは不図示の不揮発性メモリに格納されていてもよい。また、ログ送信装置１１００が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースとログ送信装置１１００が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やＦＰＧＡにより実現されてもよい。
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【００８２】
１、１Ａ  …  ログ収集システム
１１００  …  ログ送信装置
２００  …  ログ収集装置
２１０  …  障害検知部
２２０  …  環境情報復元部
２３０  …  類似環境判定部
６０２、１６２２、１６３２  …  環境コード
６０３、６２３，６３３  …  概要セット
６１２  …  概要メッセージ
６２２  …  詳細メッセージ
６３０  …  環境ＩＤ定義情報
７１０  …  ベースＩＤ定義表
１１００  …  ログ送信装置
１１１０、１２１０、１３１０  …  アプリケーション実行部
１１２０、１２２０、１３２０  …  環境変化管理部
１１４０、１２４０、１３４０  …  ログ送信部
１１５０、１２５０、１３５０  …  ログ要求受信部
１２００  …  ログ間接送信装置
１３００  …  ログ直接送信装置
１３０６  …  近距離通信部
【図１】
2018045269.tif 000003
【図２】
2018045269.tif 000004
【図３】
2018045269.tif 000005
【図４】
2018045269.tif 000006
【図５】
2018045269.tif 000007
【図６】
2018045269.tif 000008
【図７】
2018045269.tif 000009
【図８】
2018045269.tif 000010
【図９】
2018045269.tif 000011
【図１０】
2018045269.tif 000012
【図１１】
2018045269.tif 000013
【図１２】
2018045269.tif 000014
【図１３】
2018045269.tif 000015
【図１４】
2018045269.tif 000016
【図１５】
2018045269.tif 000017
【図１６】
2018045269.tif 000018
【図１７】
2018045269.tif 000019
【図１８】
2018045269.tif 000020
【図１９】
2018045269.tif 000021
【図２０】
2018045269.tif 000022
【図２１】
2018045269.tif 000023
【図２２】
2018045269.tif 000024