(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0018】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。なお、実質的に同一な箇所には同じ符号を付与し、説明を繰り返さないこととする。
【0019】
以下において、本発明の実施例を
図1〜
図17を用いて説明する。
【0020】
図1は、本発明の実施例の車載機器システムの構成の説明図である。
【0021】
車載機器システムは、車載機10及びスマートフォン20を少なくとも備える。車載機10は、例えば、車両に搭載され、目的地までの経路を案内するナビゲーション装置である。また、スマートフォン20は、携帯端末の一例であり、携帯端末はスマートフォン20に限定されない。
【0022】
車載機10とスマートフォン20とは、ネットワーク50を介して通信可能に接続される。車載機10とスマートフォン20とは、USB等による有線により通信可能に接続されてもよいし、無線により通信可能に接続されてもよい。
【0023】
スマートフォン20は、キャリアネットワーク(NW)60を介してデータセンタ30及びアプリ提供サーバ40に通信可能に接続される。キャリアNW60は、スマートフォン20の通信キャリアが提供するネットワークであってもよいし、インターネットサービスプロバイダ(ISP)が提供するISPネットワークであってもよい。アプリ提供サーバ40は、スマートフォン20上で実行されるアプリケーションをスマートフォン20に提供する計算機である。
【0024】
データセンタ30には、サービス提供サーバ31、コールセンタ32、及びログ解析サーバ33が配置される。サービス提供サーバ31は、車載機10及びスマートフォン20のユーザにサービスを提供する計算機である。サービス提供サーバ31は、提供するサービス毎に複数配置されてもよい。コールセンタ32は、ユーザからの電話等による連絡を受け付ける。ログ解析サーバ33は、車載機10、スマートフォン20及びサービス提供サーバ31から動作ログを収集し、収集した動作ログを解析する計算機(収集計算機)である。
【0025】
なお、サービス提供サーバ31、コールセンタ32、及びログ解析サーバ33は、データセンタ30内で相互に接続される。また、
図1では、データセンタ30にサービス提供サーバ31、コールセンタ32、及びログ解析サーバ33が配置される場合を図示したが、サービス提供サーバ31、コールセンタ32、及びログ解析サーバ33は複数のデータセンタに分散されて配置されてもよい。コールセンタ32は必ずしもデータセンタに配置される必要はない。
【0026】
アプリ提供サーバ40が提供するアプリケーションが車載機10を製造するメーカによって開発された場合等には、アプリ提供サーバ40はデータセンタ30内に配置されてもよい。
【0027】
図2は、本発明の実施例の車載機10のブロック図である。車載機10は、ヒューマンマシンインタフェース(HMI)11、制御部15、機器接続コネクタ16、近距離無線通信部17、及び記憶装置18を備える。
【0028】
HMI11は、車載機がユーザにデータを提示し、ユーザからデータの入力を受け付けるインタフェースである。HMI11は、入力部12、表示部13、及び音声入出力部14を有する。入力部12は、ユーザからデータの入力を受け付け、表示部13は、データを表示し、音声入出力部14は、ユーザから音声データの入力を受け付け、音声データを出力する。
【0029】
制御部15は、車載機10の動作を制御する例えばプロセッサ等である。機器接続コネクタ16は、スマートフォン20等の外部機器に車載機10を有線で接続する。近距離無線通信部17は、スマートフォン20等の外部機器に車載機10を無線で接続する。この無線による接続には、例えばIEEE802.15.1等がある。記憶装置18には、車載機10の動作ログ205、及び車載機10の動作を制御する制御プログラム201等が記憶される。制御部15は、記憶装置18に記憶された制御プログラム201を実行することによって、車載機10の動作を制御する。
【0030】
制御プログラム201は、所定状態検出部202、エラー画面表示部203、及びトランザクションID生成部20
4を有する。
【0031】
所定状態検出部202は、車載機10又はネットワーク50で障害等の所定状態が発生したことを検出する。エラー画面表示部203は、所定状態検出部202が所定状態の発生を検出した場合、
図6に示すエラー画面100を表示部13に表示する。トランザクションID生成部204は、車載機10がサービス提供要求を送信してから当該サービス提供要求に対応する応答を受信するまでの通信を一意に識別するためのトランザクションIDを生成する。
【0032】
なお、車載機10は、機器接続コネクタ16及び近距離無線通信部17の両方を必ず備える必要はなく、少なくとも一方を備えていればよい。車載機10とスマートフォン20とが、機器接続コネクタ16を用いて有線(ケーブル)によって接続されていれば、ネットワーク50の構成要素はケーブルである。また、車載機10とスマートフォン20とが、近距離無線通信部17を用いて無線(電波)によって接続されていれば、ネットワーク50の構成要素は電波となる。
【0033】
車載機10とスマートフォン20とが通信可能に接続された車載機器システムでは、スマートフォン20は、インストールされたアプリケーションを実行し、機器接続コネクタ16又は近距離無線通信部17を介して実行画面を車載機10に送信し、車載機10の制御部15が画面サイズ等を制御し、実行画面を表示部13に表示する方式と、車載機10がアプリケーションを実行し、機器接続コネクタ16又は近距離無線通信部17を介してスマートフォン20と連携する方式とが考えられる。本実施例では、前者の方式を例に説明するが、本実施例は後者の方式にも適用できる。
【0034】
図3は、本発明の実施例のスマートフォン20のブロック図である。スマートフォン20は、HMI21、制御部25、機器接続コネクタ26、近距離無線通信部27、記憶装置28、及びキャリアNW通信部29を備える。HMI21は、入力部22、表示部23、及び音声入出力部24を有する。HMI21、機器接続コネクタ26、及び近距離無線通信部27は、車載機10のHMI11、機器接続コネクタ16、及び近距離無線通信部17と同じであるので、説明を省略する。
【0035】
キャリアNW通信部29は、キャリアNW60と通信するインタフェースである。記憶装置28には、車載機10又はネットワーク50に発生した障害を解析するための障害解析アプリケーション(以下、障害解析アプリという)210、不図示のアプリケーション、エラー情報参照テーブル150、及び動作ログ160が記憶される。
【0036】
エラー情報参照テーブル150には、車載機10又はネットワーク50で発生した障害の種類、及びどこまで処理が完了したかを示す情報に対応して障害を復旧するための対策を示す情報が登録される。エラー情報参照テーブル150は、
図11で詳細に説明する。動作ログ160は、
図12で詳細を説明する。
【0037】
制御部25が記憶装置28に記憶された障害解析アプリ210を実行する。障害解析アプリ210は、動作ログ解析部211、動作ログ送信部215、及び画面表示部216を有する。
【0038】
動作ログ解析部211は、スマートフォン20に入力されたエラーコード及びトランザクションIDを用いて、動作ログ160を解析することによって、発生した障害を解析する。動作ログ送信部215は、データセンタ30に配置されたログ解析サーバ33に動作ログ160を送信する。画面表示部216は、
図7〜
図10に示す画面を表示部23に表示する。
【0039】
動作ログ解析部211は、動作ログ取得部212、対策情報取得部213、及び処理完了情報算出部214を有する。
【0040】
動作ログ取得部212は、スマートフォン20に入力されたエラーコード及びトランザクションIDに対応する動作ログ160を取得する。対策情報取得部213は、エラー情報参照テーブル150を参照し、スマートフォン20に入力されたエラーコード及びトランザクションIDに対応する対策を取得する。処理完了情報算出部214は、スマートフォン20に入力されたトランザクションIDに関連付けられる動作ログ160を参照し、どこまで処理が完了したかを示す処理完了情報を算出する。
【0041】
図4は、本発明の実施例の障害解析アプリ210がダウンロードされてからアップデートされるまでのシーケンス図である。
【0042】
データセンタ30を管理するサービス事業者は、車載機10及びスマートフォン20のユーザにサービスを提供するためのアプリ(障害解析アプリ210を含む)を開発して、開発したアプリをアプリ提供サーバ40にアップロードする(S71)。
【0043】
スマートフォン20は、S71の処理でアップロードされたアプリのダウンロード要求をアプリ提供サーバ40へ送信する(S72)。ダウンロード要求には、ダウンロードするアプリを特定可能な情報が含まれる。アプリ提供サーバ40は、S72の処理でスマートフォン20から送信されたアプリダウンロード要求を受信した場合、受信したダウンロード要求に含まれるアプリを特定可能な情報によって特定されるアプリをスマートフォン20に送信する(S73)。スマートフォン20は、S73の処理で送信されたアプリを受信した場合、受信したアプリをインストールする。なお、アプリの種類毎に提供されるサービスが異なるため、障害解析アプリ210は、アプリの種類毎に動作ログの解析方法が異なる。障害解析アプリ210は、アプリと一緒にスマートフォン20にダウンロードされ、アプリに対応する障害解析アプリ210がダウンロードされない事態を防止する。
【0044】
スマートフォン20がアプリをインストールした後、インストールしたアプリで提供されるサービスの利用をユーザが所望する場合、車載機10とスマートフォン20とが通信可能に接続され、スマートフォン20にインストールされたアプリを車載機10上で用いて、車載機10は、サービス提供要求をスマートフォン20を介してサービス提供サーバ31に送信する(S74)。
【0045】
サービス提供サーバ31は、サービス提供要求を受信した場合、受信したサービス提供要求に対応する応答を車載機10に送信することによって、ユーザにサービスを提供する(S75)。
【0046】
車載機10がサービス提供要求を送信する場合、車載機10のトランザクションID生成部204は、当該サービス提供要求を送信してから当該サービス提供要求に対応する応答を受信するまで(当該サービスの提供が終了するまで)の通信を一意に識別するトランザクションID(第1識別情報)を生成する。そして、トランザクションID生成部204は、生成したトランザクションIDをサービス提供要求に含め、サービス提供要求をサービス提供サーバ31に送信する。車載機10、スマートフォン20、及びサービス提供サーバ31は、サービス提供要求に関連して処理を実行した場合には、当該処理のログと当該サービス提供要求に含まれるトランザクションIDとを関連付けて記憶する。例えば、トランザクションIDは、車載機10の識別子と車載機10において何番目に送信されるサービス提供要求であるかを示す数との結合によって生成される。
【0047】
ここで、S74の処理で車載機10がサービス提供要求を送信する場合に、車載機10に記憶される動作ログ205、スマートフォン20に記憶される動作ログ160、及びサービス提供サーバ31に記憶される動作ログについて
図5を用いて説明する。
図5は、本発明の実施例のサービス提供要求送信時に記憶される動作ログの説明図である。
【0048】
まず、車載機10のトランザクションID生成部204は、トランザクションID「A」を生成し、生成したトランザクションIDを含むサービス提供要求をスマートフォン20に送信する(S101)。この場合、トランザクションID生成部204は、トランザクションID「A」と要求送信ログとを関連付けた動作ログ205を記憶する。なお、要求送信ログは、サービス要求を送信した旨を示す動作ログ205である。
【0049】
スマートフォン20は、サービス提供要求を受信した場合、受信したサービス提供要求に含まれるトランザクションID「A」と要求受信ログとを関連付けた動作ログ160を記憶する。そして、スマートフォン20は、受信したサービス提供要求に対するACKを車載機10に送信する(S102)。この場合、スマートフォン20は、トランザクションID「A」とACK送信ログとを関連付けた動作ログ160を記憶する。
【0050】
また、スマートフォン20は、受信したサービス提供要求をサービス提供サーバ31に送信する(S103)。この場合、スマートフォン20は、トランザクションID「A」と要求送信ログとを関連付けた動作ログ160を記憶する。
【0051】
サービス提供サーバ31は、サービス提供要求を受信した場合、受信したサービス提供要求に含まれるトランザクションID「A」と要求受信ログとを関連付けて記憶する。そして、サービス提供サーバ31は、受信したサービス提供要求に対するACKをスマートフォン20に送信する(S104)。この場合、サービス提供サーバ31は、トランザクションID「A」とACK送信ログとを関連付けた動作ログを記憶する。
【0052】
スマートフォン20は、ACKを受信した場合、受信したACKに含まれるトランザクションID「A」とACK受信ログとを関連付けた動作ログ160を記憶する。
【0053】
なお、サービス提供サーバ31がサービス提供要求に対応し、トランザクションID「A」を含む応答を送信した場合にも、サービス提供サーバ31、スマートフォン20、及び車載機10には同様の動作ログが記憶される。
【0054】
このように、車載機10が送信した要求に対する応答を受信するまで、すなわち、要求による一連の処理が終了するまで、車載機10及びスマートフォン20は、同じトランザクションIDと各々の動作ログ205及び160とを関連付けて記憶する。これによって、車載機10の動作とスマートフォン20の動作とが関連する場合には、これらの動作ログ205及び160は同一のトランザクションIDによって関連付けられる。
【0055】
図4に戻り、障害解析アプリ210がダウンロードされてからアップデートされるまでのシーケンスについて説明する。
【0056】
例えば、S74又はS75の処理の実行中に車載機10又はネットワーク50で障害が発生したものとする(S76)。車載機10の所定状態検出部202は、S76の処理で発生した障害を検出する。そして、車載機10のエラー画面表示部203は、所定状態検出部202が障害を検出すると、
図6に示すエラー画面100を表示部13に表示する(S77)。エラー画面100は、障害が発生した場合のトランザクションID、及び障害に対応するエラーコードを含み、
図6で詳細を説明する。なお、車載機10又はネットワーク50で障害が発生した場合に限定されるものではなく、車載機10の所定状態検出部202が車載機10又はネットワーク50が所定状態になったことを検出した場合に、エラー画面表示部203がS77の処理を実行してもよい。
【0057】
スマートフォン20は、障害解析アプリ210を起動する(S78)。障害解析アプリ210は、ユーザによって手動で起動されてもよいし、スマートフォン20が障害を検出した場合に自動で起動されてもよい。
【0058】
障害解析アプリ210の起動後、スマートフォン20は、車載機10に表示されたエラー画面100に含まれるエラーコード及びトランザクションIDの入力を受け付ける(S79)。そして、スマートフォン20の動作ログ解析部211は、S79の処理で入力を受け付けたエラーコード及びトランザクションIDに基づいて、スマートフォン20に記録された動作ログ160を解析することによって、障害を解析し、画面表示部216は、動作ログ解析部211の解析結果をスマートフォン20の表示部に表示する(S80)。スマートフォン20の表示部23に表示される解析結果には、障害に対する対策が含まれるものとする。S78〜S80の処理は、
図15で詳細を説明する。
【0059】
ユーザは、S80でスマートフォン20の表示部23に表示された解析結果を参照し、障害復旧作業をする(S81)。ユーザは、障害を復旧できない場合、障害復旧に関してデータセンタ30内のコールセンタ32に問い合わせる(S82)。ユーザのコールセンタ32への問合せ方法としては、電話又はメール等が考えられる。ユーザからの問合せを受けたコールセンタ32は、障害復旧手順をユーザに連絡する(S83)。コールセンタ32からの障害復旧手順を連絡されたユーザは、障害復旧手順に基づいて障害復旧作業をする(S84)。
【0060】
なお、S81で障害が復旧した場合、又は、S81で障害の復旧が不可能であるとユーザが判断した場合(例えば、S80の処理で修理工場に持ち込む必要がある旨のメッセージが解析として表示された場合)等、S82〜S84は省略してもよい。
【0061】
次に、スマートフォン20の動作ログ送信部215は、自身に記録された動作ログ160並びに入力されたエラーコード及びトランザクションIDを、データセンタ30に配置されたログ解析サーバ33に送信する(S85)。
【0062】
ログ解析サーバ33は、動作ログ160、エラーコード及びトランザクションIDを受信した場合、ログ受信応答をスマートフォン20に送信する(S86)。なお、スマートフォン20に記憶された動作ログ160及び車載機10に記憶された動作ログ205は、異常を検出しなくとも任意のタイミングでログ解析サーバ33に送信される。ログ解析サーバ33は、各ユーザの動作ログを解析する(S87)。そして、サービス事業者は、S87の解析結果を参照しながらアプリを更新し(S88)、更新後のアプリをアプリ提供サーバ40にアップロードする(S89)。
【0063】
アプリ提供サーバ40は、更新後のアプリがアップロードされた場合、スマートフォン20にアプリが更新可能な旨の通知を送信する(S90)。スマートフォン20は、S90の処理で送信された通知を受信した場合、ユーザによる手動又は自動でアプリ更新要求をアプリ提供サーバ40に送信する(S91)。アプリ提供サーバ40は、更新後のアプリをスマートフォン20に送信し(S92)、スマートフォン20は、更新後のアプリを受信すると、当該アプリを更新する。
【0064】
なお、
図4に示すシーケンス図では、スマートフォン20が車載機10の動作ログ205を取得しない前提で処理を説明したが、例えば、スマートフォン20が車載機10の動作ログ205を所定タイミングで取得している場合、又はスマートフォン20が車載機10の動作ログ205を障害の影響を受けずに取得可能な場合等にも、
図4に示すシーケンスは適用できる。
【0065】
例えば、スマートフォン20が車載機10の動作ログ205を所定タイミングで取得している場合について説明する。S76で車載機10に障害が発生した場合、スマートフォン20は、S76の直前までの車載機10の動作ログ205を記憶している。スマートフォン20は、S80の処理で、自身の動作ログ160及び車載機10の動作ログ205に基づいて障害を解析する。また、S85の処理で、スマートフォン20は、自身の動作ログ160及び車載機10の動作ログ205をログ解析サーバ33に送信する。
【0066】
また、
図4では、S87の処理におけるログ解析サーバ33の動作ログ解析処理が、サービス事業者のアプリの更新のトリガとなっているが、動作ログ解析処理とアプリの更新とは互いに異なるタイミングで行われてもよい。
【0067】
図6は、本発明の実施例の車載機10に表示されるエラー画面100の説明図である。
【0068】
エラー画面100は、
図4に示すS77の処理で車載機10の表示部13に表示される。エラー画面100は、エラーコード表示領域101、エラーメッセージ表示領域102、トランザクションID表示領域103、QRコード表示スイッチ104、ログ表示スイッチ105、及びログ送信スイッチ106を含む。
【0069】
エラーコード表示領域101には、検出した障害の種別を示すエラーコードが表示される。エラーコードの所定の桁数を、障害検出時の車載機10の設定情報を示す値にしてもよい。例えば、エラーコードの下一桁によって、車載機10の近距離無線通信部17の障害検出時の通信設定、スマートフォン20との無線による電波強度等を表現してもよい。ユーザは、この車載機10の設定情報を示す値を参照し、障害復旧作業をすることができる。
【0070】
エラーメッセージ表示領域102には、検出した障害の内容を示すエラーメッセージが表示される。トランザクションID表示領域103には、障害が発生した場合のトランザクションIDが表示される。
【0071】
また、QRコード表示スイッチ104が操作されると、車載機10のエラー画面表示部203は、エラーコード、エラーメッセージ、及びトランザクションIDをQRコードで表示する。ログ表示スイッチ105が操作されると、車載機10のエラー画面表示部203は、障害を検出した場合のトランザクションIDと関連付けられている動作ログ205を表示する。ログ送信スイッチ106が操作されると、車載機10のエラー画面表示部203は、障害を検出した場合のトランザクションIDと関連付けられている動作ログ205をスマートフォン20を介してログ解析サーバ33に送信する。
【0072】
例えば、各種スイッチ104〜106の操作は、車載機10の入力部12から入力される。入力方法の例としては、ユーザが車載機10に搭載されたボタンから選択してもよいし、車載機10の表示部13がタッチパネルから構成され、ユーザがタッチパネルを直接タッチしてもよい。
【0073】
なお、エラー画面100に含まれる情報は、サービス提供者が必要とする機能及び情報に応じて増加されてもよい。
【0074】
次に、スマートフォン20上で起動する障害解析アプリ210の画面表示部216によって表示される画面を説明する。
図7は、本発明の実施例のS78で障害解析アプリ210が起動された場合に表示される初期画面110の説明図である。
【0075】
初期画面110は、ログ解析ボタン111、QRコード読み取りボタン112、ログ表示ボタン113、ログ送信ボタン114、及びアプリ固有操作ボタン115を含む。アプリ固有操作ボタン115は、障害解析アプリ210を含むサービス提供アプリの操作ボタンであり、例えば、前画面表示ボタン、次画面表示ボタン、及び設定ボタン等を含む。
【0076】
ログ解析ボタン111、ログ表示ボタン113、又はログ送信ボタン114が操作されると、画面表示部216は、
図9に示すエラーコード入力画面130を表示する。なお、エラーコード入力画面130でエラーコード及びトランザクションIDが入力された場合、操作されたボタンに対応する処理が実行される。具体的には、ログ解析ボタン111が操作された場合、エラーコード入力画面130でエラーコード及びトランザクションIDが入力されると、画面表示部216は、
図10に示すログ解析結果画面140を表示する。ログ表示ボタン113が操作された場合、エラーコード入力画面130でエラーコード及びトランザクションIDが入力されると、画面表示部216は、
図13に示すログ結果画面170を表示する。ログ送信ボタン114が操作された場合、エラーコード入力画面130でエラーコード及びトランザクションIDが入力されると、動作ログ送信部215は、入力されたエラーコード及びトランザクションID並びにトランザクションIDに関連付けられた動作ログ160をログ解析サーバ33に送信する。
【0077】
また、QRコード読み取りボタン112が操作されると、画面表示部216は、
図8に示すQRコード読み取り選択画面120を表示する。なお、画面表示部216は、スマートフォン20自体がQRコード読み取り機能を有していない場合、QRコードを読み取ることができない旨を示すメッセージを表示する。
【0078】
図8は、本発明の実施例のQRコード読み取り選択画面120の説明図である。
【0079】
QRコード読み取り選択画面120は、アプリ固有操作ボタン115、メニューバー121、ログ解析ボタン122、ログ表示ボタン123、及びログ送信ボタン124を含む。アプリ固有操作ボタン115は、
図7に示す初期画面110と同じなので説明を省略する。
【0080】
メニューバー121には、QRコード読み取り選択画面120である旨が表示される。ログ解析ボタン122、ログ表示ボタン123又はログ送信ボタン124が操作されると、制御部25は、車載機10に表示されたQRコードを読み取るためのアプリを起動し、当該QRコードを読み取り、操作されたボタンに対応する処理を実行する。具体的には、初期画面110においてログ解析ボタン111、ログ表示ボタン113、又はログ送信ボタン114が操作された場合と同じ処理を実行するので、説明を省略する。スマートフォン20がQRコード等の特定の画像を読み取り、エラーコード及びトランザクションIDの入力を受け付けることによって、ユーザが手動でエラーコード及びトランザクションIDをスマートフォン20に入力する手間を省略できる。
【0081】
図7及び
図8に示す画面は、エラーコード及びトランザクションIDの入力によって実行される処理をユーザに選択させる画面である。これによって、ユーザは、ユーザの優先順序に応じて所望の処理を障害解析アプリ210に実行させることができる。
【0082】
図9は、本発明の実施例のエラーコード入力画面130の説明図である。
【0083】
エラーコード入力画面130は、
図7に示す初期画面110でログ解析ボタン111、ログ表示ボタン113又はログ送信ボタン114が操作された場合に表示される。
図9に示すエラーコード入力画面130は、初期画面110のログ解析ボタン111が操作された場合に表示される。
【0084】
エラーコード入力画面130は、アプリ固有操作ボタン115、メニューバー131、エラーコード入力フォーム132、トランザクションID入力フォーム133、実行ボタン134、及びクリアボタン135を含む。アプリ固有操作ボタン115は、
図7に示す初期画面110と同じなので説明を省略する。
【0085】
メニューバー131には、エラーコード入力画面130が表示される前に操作されたボタンに対応する処理を特定可能な情報が表示される。
図9に示すエラーコード入力画面130のメニューバー131には、ログ解析ボタン111に対応するログ解析処理を特定可能な情報が表示される。
【0086】
エラーコード入力フォーム132は、
図6に示す車載機10に表示されたエラー画面100のエラーコードが入力される領域である。トランザクションID入力フォーム133は、
図6に示す車載機10に表示されたエラー画面100のトランザクションIDが入力される領域である。
【0087】
実行ボタン134が操作されると、動作ログ解析部211は、メニューバー131に表示される情報に対応する処理を実行する。クリアボタン135が操作されると、エラーコード入力フォーム132及びトランザクションID入力フォーム133に入力された値がクリアされる。
【0088】
図8では、エラーコード入力フォーム132にエラーコードが入力され、トランザクションID入力フォーム133にトランザクションIDが入力され、実行ボタン134が操作されると、動作ログ解析部211は、ログ解析処理を実行する。
【0089】
図10は、本発明の実施例のログ解析結果画面140の説明図である。
【0090】
ログ解析結果画面140は、
図7に示す初期画面110でログ解析ボタン111が操作され、エラーコード及びトランザクションIDが手動で入力された場合、又は、
図8に示すQRコード読み取り選択画面120でログ解析ボタン122が操作され、エラーコード及びトランザクションIDがQRコードを読み取ることによって入力された場合、表示される。
【0091】
ログ解析結果画面140は、アプリ固有操作ボタン115、ログ表示ボタン141、ログ送信ボタン142、及びログ解析結果143を含む。アプリ固有操作ボタン115は、
図7に示す初期画面110のアプリ固有操作ボタン115と同じであるので、説明を省略する。
【0092】
ログ表示ボタン141が操作された場合、
図13に示すログ結果画面170が表示される。
【0093】
ログ送信ボタン142が操作された場合、動作ログ送信部215は、
図7に示す初期画面110でログ送信ボタン114が操作された場合と同じく、入力されたエラーコード及びトランザクションID並びに動作ログ160をログ解析サーバ33に送信する。
【0094】
ログ解析結果143には、入力されたエラーコード、及び入力されたトランザクションIDによる処理がどこまで完了したかを示す処理完了情報に基づく、障害を復旧するための対策をメッセージ(復旧対策メッセージ)が表示される。動作ログ解析部211の処理完了情報算出部214は、入力されたトランザクションIDに関連付けられる動作ログ160を参照して処理完了情報を算出する。そして、対策情報取得部213は、
図11に示すエラー情報参照テーブル150を参照し、入力されたエラーコード及び算出した処理完了情報に対応する復旧対策メッセージを取得する。そして、画面表示部216は、対策情報取得部213が取得した障害復旧メッセージをログ解析結果143に表示する。
【0095】
図11は、本発明の実施例のエラー情報参照テーブル150の説明図である。
【0096】
エラー情報参照テーブル150は、車載機エラーコード151、処理完了情報152、及び復旧対策メッセージ153を含む。
【0097】
車載機エラーコード151には、車載機10が表示するエラーコードが登録される。処理完了情報152には、トランザクションIDによって識別される処理がどこまで完了したかを示す情報が登録される。復旧対策メッセージ153には、障害を復旧するための対策の内容を示す情報が登録される。
【0098】
上記した復旧対策メッセージを取得する処理を詳細に説明する。
【0099】
まず、対策情報取得部213は、エラー情報参照テーブル150の車載機エラーコード151に登録されたエラーコードが入力されたエラーコードと一致するレコードを取得する。そして、動作ログ取得部212は、スマートフォン20に記憶される動作ログ160から入力されたトランザクションIDに関連付けられる動作ログ160を取得する。そして、処理完了情報算出部214は、動作ログ取得部212が取得した動作ログ160を参照し、入力されたトランザクションIDによって識別される処理がどこまで完了したかを示す処理完了情報を算出する。
【0100】
次に、対策情報取得部213は、取得したレコードの処理完了情報152に登録された情報が算出した処理完了情報に対応するレコードを特定する。そして、画面情報表示部217は、特定したレコードの復旧対策メッセージ153に登録されたメッセージをログ解析結果14
3に表示する。
【0101】
これによって、ユーザは、スマートフォン20に表示されたログ解析結果143に表示された復旧対策メッセージを参照しながら、障害復旧作業をすることで、適切な障害復旧作業をすることができ、コールセンタ32に電話かけずとも障害を復旧できる可能性が高くなる。
【0102】
図12は、本発明の実施例のスマートフォン20に記録される動作ログ160の説明図である。
【0103】
動作ログ160は、スマートフォン20がアプリの実行中に記憶装置18に出力される。動作ログ160の出力形式は、サービス事業者が任意に設定してもよいが、動作ログ160は、動作の契機となったトランザクションID161を必ず含むものとする。動作ログ160は、ユーザがアプリ固有操作ボタン115を操作することによってスマートフォン20の表示部23に表示されてもよい。
【0104】
なお、車載機10に記録される動作ログ205の出力形式も、
図12と同じであるので、説明を省略する。
【0105】
図13は、本発明の実施例のログ結果画面170の説明図である。
【0106】
ログ結果画面170は、
図7に示す初期画面110でログ表示ボタン113が操作され、エラーコード及びトランザクションIDが手動で入力された場合、又は、
図8に示すQRコード読み取り選択画面120でログ表示ボタン123が操作され、エラーコード及びトランザクションIDがQRコードを読み取ることによって入力された場合、表示される。
【0107】
ログ結果画面170は、アプリ固有操作ボタン115、ログ解析ボタン171、ログ送信ボタン172、及びログ結果173を含む。アプリ固有操作ボタン115は、
図7に示す初期画面110のアプリ固有操作ボタン115と同じであるので、説明を省略する。
【0108】
ログ解析ボタン171が操作された場合、
図10に示すログ解析結果画面140が表示される。
【0109】
ログ送信ボタン172が操作された場合、動作ログ送信部215は、
図7に示す初期画面110でログ送信ボタン114が操作された場合と同じく、入力されたエラーコード及びトランザクションID並びに動作ログ160をログ解析サーバ33に送信する。
【0110】
ログ結果173には、入力されたトランザクションIDに関連付けられた動作ログ160に基づいて算出された処理完了情報が表示される。処理完了情報の表示方式は、
図13に示すように文章で表示されてもよいし、
図14に示すようにシーケンス図で表示されてもよい。
【0111】
処理完了情報が文章で表示される場合には、例えば、「入力したトランザクションIの動作ログは存在しません」、又は「入力したトランザクションIDの処理は要求受信中にタイムアウトになりました」等のメッセージが表示される。
【0112】
処理完了情報がシーケンス図で表示される場合には、処理がどこまで完了したかが視覚的に表示される。これについては
図14で詳細を説明する。
【0113】
なお、ログ結果173の表示方式は、アプリ固有操作ボタン115の操作によって変更可能としてもよい。
【0114】
図14は、本発明の実施例のログ結果画面170のログ結果173をシーケンス図で表示する方式の説明図である。
【0115】
図14で示す処理は、車載機10がある要求を送信し、当該要求に対応する応答をデータセンタ30に配置されたサービス提供サーバ31から受信するという処理である。
【0116】
スマートフォン20は、サービス提供サーバ31から応答を受信し、当該応答を車載機10に送信しているにもかかわらず、車載機10から当該応答に対するACKを受信していない。このため、スマートフォン20には、応答送信ログに対応するACK受信ログが記憶されない。
【0117】
したがって、処理完了情報算出部214は、動作ログ160を参照することによって、スマートフォン20が応答を送信する処理まで処理が完了し、スマートフォン20が送信した応答を車載機10が受信していないことを、処理完了情報として算出する。
図14では、車載機の応答受信処理を障害発生処理として黒丸で表示している。
【0118】
図13及び
図14に示すように、処理完了情報が表示されるため、ユーザはどこまで処理が完了してどの処理が完了していないかを把握することができる。これによって、ユーザは、表示された処理完了情報を参照して障害復旧作業を行うことができるし、ユーザがコールセンタ32に電話をかける場合であっても、処理完了情報をコールセンタ32に伝えることによって、コールセンタ32は障害について詳細な情報を得ることができる。
【0119】
図15は、本発明の実施例の障害解析アプリ210の動作ログ解析部211による障害解析処理のフローチャートである。障害解析処理は、
図4に示すS78〜S80の処理である。
【0120】
まず、動作ログ解析部211は、
図7に示す初期画面110でログ解析ボタン111の操作を受け付け(S191)、画面表示部216は、
図9に示すエラーコード入力画面130を表示する。そして、動作ログ解析部211は、エラーコード入力画面130のエラーコード入力フォーム132にエラーコードが入力され、トランザクションID入力フォーム133にトランザクションIDが入力されてから、実行ボタン134の操作を受け付ける(S192)。
【0121】
動作ログ解析部211は、S192の処理で、実行ボタン134の操作を受け付けた場合、入力されたエラーコード及びトランザクションIDがそれぞれのフォーマットに適合するか否かを判定する(S193)。
【0122】
S193の処理で、入力されたエラーコード及びトランザクションIDの両方がフォーマットに適合すると判定された場合、動作ログ取得部212は、スマートフォン20に記憶された動作ログ160から、入力されたトランザクションIDと関連付けられた動作ログ160を取得する(S194)。そして、処理完了情報算出部214は、取得した動作ログ160を参照し、トランザクションIDによって識別される処理がどこまで完了したかを示す処理完了情報を算出する(S195)。
【0123】
対策情報取得部213は、エラー情報参照テーブル150を参照し、入力されたエラーコード、及びS195の処理で処理完了情報算出部214が算出した処理完了情報に対応する復旧対策メッセージ153に登録された情報を取得する。そして、画面表示部216は、対策情報取得部213が取得した情報をログ解析結果画面140のログ解析結果143に表示し(S196)、処理を終了する。
【0124】
一方、S193の処理で、入力されたエラーコード及びトランザクションIDの少なくとも一方がフォーマットに適合しないと判定された場合、画面表示部216は、エラーコード又はトランザクションIDの入力エラーを示すメッセージをスマートフォン20に表示し、処理を異常終了する。
【0125】
次に、車載機10及びネットワーク50が正常に動作している場合の動作ログ205及び160の送信について
図16を用いて説明する。
図1〜
図15では、車載機10又はネットワーク50に障害が発生した場合に動作ログ205を送信する場合について説明したが、車載機10又はネットワーク50に障害が発生しなくても、車載機10及びスマートフォン20は動作ログ205及び160を送信することができる。
【0126】
図16は、本発明の実施例の障害が発生しない場合の障害解析アプリ210がダウンロードされてからアップデートされるまでのシーケンス図である。S20
7の処理以外の処理は、
図4に示す処理と同じであるので、同じ符号を付与し、説明を省略する。
【0127】
S20
7の処理について説明する。まず、ユーザは任意のタイミングで車載機10の表示部13を操作することによって、スマートフォン20にインストールされたアプリを操作する。そして、ユーザは、スマートフォン20にインストールされたアプリが有する動作ログ送信部(不図示)を起動する。この動作ログ送信部は、起動された後に車載機10の記憶装置18に記憶された動作ログ205とスマートフォン20に記憶された動作ログ160とをまとめてデータセンタ30内のログ解析サーバ33に送信する。
【0128】
例えば、動作ログ送信部は、車載機10の記憶装置18に記憶された動作ログ205を取得する要求を車載機10に送信し、車載機10から動作ログ205を送信させることによって、車載機10の動作ログ205を取得する。そして、動作ログ送信部は、取得した車載機10の動作ログ205とスマートフォン20の動作ログ160とをまとめてログ解析サーバ33に送信する。スマートフォン20から送信された動作ログ205及び160を受信したデータセンタ30は、S
86でログ受信応答を車載機10及びスマートフォン20へ送信する。
【0129】
上記した実施例では、サービス提供サーバ31によってサービスが提供されるアプリがスマートフォン20にインストールされ、車載機10から当該アプリを操作する例を説明したが、次に、サービス提供サーバ31によってサービスが提供されるプログラムが車載機10にインストールされる例について
図17を用いて説明する。
【0130】
図17は、本発明の実施例のサービス提供サーバ31によってサービスが提供されるプログラムが車載機10にインストールされるシーケンス図である。
【0131】
車載機10にプログラムがインストールされる場合、スマートフォン20にアプリがインストールされる場合と異なり、当該プログラムはアプリ提供サーバ40からダウンロードされず、データセンタ30に配置される図示しないプログラム提供サーバから車載機10にダウンロードされる。
【0132】
まず、車載機10は、ユーザから所定の操作を受け付けると、データセンタ30が提供するサービスのプログラム確認要求をスマートフォン20を介してデータセンタ30の図示しないプログラム提供サーバに送信する(S201)。
【0133】
データセンタ30は、S201の処理で車載機10から送信されたプログラム確認要求を受信した場合、車載機10で使用可能なプログラムの一覧をプログラム確認応答として車載機10に送信する(S202)。
【0134】
車載機10は、S202の処理で送信されたプログラム確認応答を受信した場合、利用可能なプログラム一覧を表示部13に表示する(S203)。
【0135】
車載機10は、表示部13に表示されたプログラム一覧から利用するプログラムの選択操作をユーザから受け付けると、ユーザが選択したプログラムの送信要求(プログラム送信要求)をスマートフォン20を介してデータセンタ30の図示しないプログラム提供サーバに送信する(S204)。
【0136】
データセンタ30の図示しないプログラム提供サーバは、S204の処理で送信されたプログラム送信要求を受信した場合、受信したプログラム送信要求のプログラムを応答として車載機10に送信する(S205)。
【0137】
車載機10は、S205の処理で応答として送信されたプログラムを受信した場合、受信したプログラムをインストールする(S206)。
【0138】
図17では、プログラム確認要求について説明したが、更新されたプログラムをダウンロードする要求であるプログラム更新確認要求等にも適用可能である。
【0139】
このように、サービス提供サーバ31によってサービスが提供されるプログラムが車載機10にインストールされる場合には、当該プログラムに障害解析プログラム(障害解析アプリ210に相当)が含まれ、車載機10が障害解析プログラムを実行してもよい。
【0140】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0141】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、DVD等の記録媒体に置くことができる。