(57)【要約】 【課題】  履歴情報に基づいて外部機器での動作を再現することができる履歴情報の動作制御装置および方法を提供する。【解決手段】  ログ再生制御部２８は、受信したログがターゲット機１０の各通信部の出力ログであると、受信した出力ログの入出力部番号によって特定される通信部に対応するサポート機２０の再現用通信部によって、再現用外部デバイスにデータ、すなわち出力ログに含まれる外部デバイスに動作を行わせるためのデータを送信する。そして、受信したログがターゲット機１０の各通信部の入力ログであると、対応する再現用通信部によって、再現用外部デバイスからデータの受信を待つ。データを受信し、受信したデータと入力ログとが一致しないと、その旨を表示部Ｓ２５に警告表示する。【選択図】      図１
2009098896.tif 000002
【特許請求の範囲】
【請求項１】
外部機器を動作させるための動作情報を外部機器に対して送信する送信手段と、
前記送信手段によって送信した動作情報に対する外部機器の動作を表す履歴情報を受信する受信手段と、
前記受信手段によって受信した履歴情報が示す動作の動作情報を、前記外部機器に対応した動作を行う対応外部機器に送信させる制御手段とを含むことを特徴とする履歴情報の動作制御装置。
【請求項２】
前記履歴情報は、前記外部機器での動作の結果を表す結果情報を含み、
前記対応外部機器での動作の結果を表す第２の結果情報を受信する第２の受信手段と、
情報を表示する表示手段とをさらに含み、
前記制御手段は、前記受信手段によって受信した履歴情報に含まれる結果情報と、前記第２の受信手段によって受信した第２の結果情報とが一致するか否かを判定し、前記結果情報と前記第２の結果情報とが一致しない場合、一致しないことを表す情報を前記表示手段に表示させることを特徴とする請求項１に記載の履歴情報の動作制御装置。
【請求項３】
情報を表示する第２の表示手段をさらに含み、
前記履歴情報は、前記外部機器で行われた操作を表す操作情報を含み、
前記制御手段は、前記受信手段によって受信した履歴情報から操作情報を抽出し、抽出した操作情報が示す操作を、前記対応外部機器に対して操作するように要求する情報を前記第２の表示手段に表示させることを特徴とする請求項１または２に記載の履歴情報の動作制御装置。
【請求項４】
外部機器を動作させるための動作情報を外部機器に送信して外部機器を動作させ、かつ送信した動作情報を表す送信履歴情報を含む履歴情報を生成する対象装置から、生成された履歴情報を受信する受信工程と、
受信工程で対象装置から受信した履歴情報が示す動作情報を、前記外部機器に対応した動作を行う対応外部機器に送信する制御工程とを含むことを特徴とする履歴情報の動作制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置で行われる動作を履歴情報に基づいて制御することができる履歴情報の動作制御装置および方法に関する。
【背景技術】
【０００２】
ＰＯＳ（Point Of Sales）端末、ＡＴＭ（automated teller machine）、あるいは自動販売機などの装置は、従業員あるいはユーザなどの操作者によって操作される。操作者は、間違った操作あるいは不正な操作を行うことがあり、その操作に起因して装置に障害が発生することがある。発生した障害の原因を究明するために、操作者に操作手順を確認することがあるが、時間が経過している場合、あるいは特に多くの操作を伴う場合は、行なわれた操作手順を正確に把握することは極めて困難である。したがって、考えられる操作手順すべてについて検討する必要があり、原因を究明するために多大の時間を要することになる。
【０００３】
原因究明を短時間で行うために、操作などの履歴を記憶しておいて再生することによって、装置に対して行われた操作を正確に把握することを可能にする履歴情報の再生装置がある。たとえば第１の従来の技術として、映像に対するユーザのクリック操作ログから、ユーザがクリックした映像の位置を特定することができるユーザ操作ログ可視化装置がある。このユーザ操作ログ可視化装置は、ユーザがクリック操作を行った映像を再生し、ユーザがその映像に対して行ったクリック操作のログデータが示す再生時間の映像の中に、ログデータが示すクリック位置を示すマークを重畳して表示する（たとえば特許文献１参照）。
【０００４】
第２の従来の技術として、故障発生の原因究明のために、ユーザが行った操作を再現することができる故障解析支援装置がある。この故障解析支援装置は、ユーザの操作履歴および操作パネル上での表示等の履歴を記録し、発生した故障の原因究明時に、ユーザから入力された操作を記録に基づいて操作パネル上に自動的に再現する（たとえば特許文献２参照）。
【０００５】
第３の従来の技術として、プラントの運転制御操作を表示装置の画面上のタッチ操作によって実行するプラント制御監視装置がある。このプラント制御監視装置は、タッチ操作が行われた画面の種類、その画面のタッチ座標、時刻、および操作内容を保存し、行われた操作を画面上に再現可能とするものである（たとえば特許文献３参照）。
【０００６】
第４の従来の技術として、記録再生装置がある。この記録再生装置は、操作された内容を、その動作継続時間も含めてメモリに記憶することによって、エラー発生までの動作を、操作されたタイミングも含めて再現するものである（たとえば特許文献４参照）。
【０００７】
第５の従来の技術として、コンピュータシステム、特にアプリケーションの障害を解析することができる障害解析支援装置がある。この障害解析支援装置は、客先側のシステムで、アプリケーションの操作手順をログファイルとして記録し、記録されたログファイルに基づいて、開発側システムで操作手順を再現するものである。ログファイルに記録される情報は、画面データ、ユーザの操作、処理の履歴、および処理の時間である（たとえば特許文献５参照）。
【０００８】
【特許文献１】特開２００４−１１００９６号公報
【特許文献２】特開２００２−１５７１４７号公報
【特許文献３】特開平８−２０２４４０号公報
【特許文献４】特開平９−１３４２１４号公報
【特許文献５】特開２０００−１０８２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、いずれの従来の技術も、履歴情報に基づいて装置の動作を再現するものであるが、操作パネルで行われた操作が擬似的に行われたものとして動作を再現するものであり、外部機器での動作を再現することはできないという問題がある。
【００１０】
本発明の目的は、履歴情報に基づいて外部機器での動作を再現することができる履歴情報の動作制御装置および方法を提供することである。
【課題を解決するための手段】
【００１１】
本発明は、外部機器を動作させるための動作情報を外部機器に対して送信する送信手段と、
前記送信手段によって送信した動作情報に対する外部機器の動作を表す履歴情報を受信する受信手段と、
前記受信手段によって受信した履歴情報が示す動作の動作情報を、前記外部機器に対応した動作を行う対応外部機器に送信させる制御手段とを含むことを特徴とする履歴情報の動作制御装置である。
【００１２】
本発明に従えば、送信手段によって、外部機器を動作させるための動作情報が外部機器に対して送信され、受信手段によって、前記送信手段によって送信した動作情報に対する外部機器の動作を表す履歴情報が受信され、制御手段によって、前記受信手段によって受信した履歴情報が示す動作の動作情報が、前記外部機器に対応した動作を行う対応外部機器に送信されるので、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができる。
【００１３】
また本発明は、前記履歴情報は、前記外部機器での動作の結果を表す結果情報を含み、
前記対応外部機器での動作の結果を表す第２の結果情報を受信する第２の受信手段と、
情報を表示する表示手段とをさらに含み、
前記制御手段は、前記受信手段によって受信した履歴情報に含まれる結果情報と、第２の受信手段によって受信した第２の結果情報とが一致するか否かを判定し、前記結果情報と前記第２の結果情報とが一致しない場合、一致しないことを表す情報を表示手段に表示させることを特徴とする。
【００１４】
本発明に従えば、前記履歴情報は、前記外部機器での動作の結果を表す結果情報を含み、第２の受信手段によって、前記対応外部機器での動作の結果を表す第２の結果情報が受信され、表示手段によって、情報が表示される。そして、前記制御手段によって、前記受信手段によって受信した履歴情報に含まれる結果情報と、第２の受信手段によって受信した第２の結果情報とが一致するか否かが判定され、前記結果情報と前記第２の結果情報とが一致しない場合、一致しないことを表す情報が表示手段に表示されるので、外部機器での動作が正常であるか否かをリアルタイムで監視することができる。
【００１５】
また本発明は、情報を表示する第２の表示手段をさらに含み、
前記履歴情報は、前記外部機器で行われた操作を表す操作情報を含み、
前記制御手段は、前記受信手段によって受信した履歴情報から操作情報を抽出し、抽出した操作情報が示す操作を、前記対応外部機器に対して操作するように要求する情報を前記第２の表示手段に表示させることを特徴とする。
【００１６】
本発明に従えば、第２の表示手段によって、情報が表示され、前記履歴情報は、前記外部機器で行われた操作を表す操作情報を含み、前記制御手段によって、前記受信手段によって受信した履歴情報から操作情報が抽出され、抽出された操作情報が示す操作を、前記対応外部機器に対して操作するように要求する情報が前記第２の表示手段に表示されるので、履歴情報に基づいて外部機器での操作による動作を対応する対応外部機器でリアルタイムで再現することができる。
【００１７】
また本発明は、外部機器を動作させるための動作情報を外部機器に送信して外部機器を動作させ、かつ送信した動作情報を表す送信履歴情報を含む履歴情報を生成する対象装置から、生成された履歴情報を受信する受信工程と、
受信工程で対象装置から受信した履歴情報が示す動作情報を、前記外部機器に対応した動作を行う対応外部機器に送信する制御工程とを含むことを特徴とする履歴情報の動作制御方法である。
【００１８】
本発明に従えば、受信工程では、外部機器を動作させるための動作情報を外部機器に送信して外部機器を動作させ、かつ送信した動作情報を表す送信履歴情報を含む履歴情報を生成する対象装置から、生成された履歴情報を受信し、制御工程では、受信工程で対象装置から受信した履歴情報が示す動作情報を、前記外部機器に対応した動作を行う対応外部機器に送信するので、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができる。
【発明の効果】
【００１９】
本発明によれば、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができるので、遠隔地での外部機器での動作に伴う障害をリアルタイムで解析して対応することができる。
【００２０】
また本発明によれば、外部機器での動作が正常であるか否かをリアルタイムで監視することができるので、異常がある場合の対応を迅速に行うことができる。
【００２１】
また本発明によれば、履歴情報に基づいて外部機器での操作による動作を対応する対応外部機器でリアルタイムで再現することができるので、遠隔地での外部機器での操作による動作に伴う障害をリアルタイムで解析して対応することができる。
【００２２】
また本発明によれば、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができる、本発明に係る履歴情報の動作制御方法を用いれば、遠隔地での外部機器での動作に伴う障害をリアルタイムで解析して対応することができる。
【発明を実施するための最良の形態】
【００２３】
図１は、本発明の実施の一形態であるサポート機２０を含むログ表示システム１の概略の構成を模式的に示す図である。ログ表示システム１は、ターゲット機１０と、履歴情報の動作制御装置であるサポート機２０とを含む。履歴情報の動作制御方法は、サポート機２０によって処理される。
【００２４】
ターゲット機１０は、たとえば流通あるいはガソリンスタンドなどで用いられるＰＯＳ（Point Of Sales）端末によって構成され、入出力部１１およびログファイル部Ｔ１５を含む。サポート機２０は、たとえばパーソナルコンピュータによって構成され、表示部Ｓ２５を含む。ターゲット機１０とサポート機２０とは、ネットワークたとえばＬＡＮ（
Local Area Network）３０あるいは公衆回線などによって接続される。図１には、理解を容易にするために、サポート機２０に１台のターゲット機１０が接続される場合を示しているが、本実施の形態ではサポート機２０に複数台のターゲット機１０が接続される。
【００２５】
ターゲット機１０の入出力部１１は、たとえば操作者がターゲット機１０を操作するタッチパネルおよび操作者への情報を表示する液晶ディスプレイを含む。ログファイル部Ｔ１５は、たとえばハードディスク装置によって構成され、操作者が入出力部１１に対して行った操作などの履歴情報（以下「ログ」という）を記憶する。サポート機２０の表示部Ｓ２５は、たとえばサポート機２０の操作者への情報を表示する液晶ディスプレイによって構成される。
【００２６】
ターゲット機１０は、操作者が入出力部１１を操作すると、操作者が行った操作を表すログを生成し、生成したログをログファイル部Ｔ１５に記憶する。あるいは、生成したログを、ログファイル部Ｔ１５に記憶することなく、サポート機２０に送信する。サポート機２０は、ログファイル部Ｔ１５から読み出されて送信されるログ、あるいはログファイル部Ｔ１５に記憶することなく送信されたログを受信すると、受信したログに基づいて、ターゲット機１０で行われた操作を解析し、解析結果を表示部Ｓ２５に表示する。表示部Ｓ２５には、たとえばターゲット機１０の入出力部１１のタッチパネルが画像として表示され、そのタッチパネルを操作する操作者の手が重畳して表示され、ターゲット機１０で行われた操作が表示部Ｓ２５上で再現される。
【００２７】
図２は、図１に示したターゲット機１０の外観を示す斜視図である。図２に示したターゲット機１０は、ガソリンスタンドに設置されるＰＯＳ端末の例であり、従業員が操作を行い、ガソリンの給油指定あるいは決済に用いられる。
【００２８】
図２に示したターゲット機１０は、情報入力のためのタッチパネル部１１１およびキー部１１２、情報表示のための表示部Ｔ１１３、プリンタ３１、ならびに磁気カードリーダライタ３３を含む。プリンタ３１および磁気カードリーダライタ３３は、ターゲット機１０に組み込まれている必要はなく、外付けであってもよい。
【００２９】
図３は、図１に示したターゲット機１０の構成の一例を示すブロック図である。ターゲット機１０は、入出力部１１、ログ記録制御部１２、システムタイマ部１３、アプリケーション部１４、ログファイル部Ｔ１５、表示制御部１６、制御部１７、図示しないＣＰＵ（Central Processing Unit）、および図示しないメモリを含む。ターゲット機１０には、プリンタ３１、スキャナ３２、磁気カードリーダライタ３３、暗証番号入力装置３４、計量機３５、釣銭機３６、油面計３７、および洗車機３８が接続される。
【００３０】
入出力部１１は、ターゲット機１０に内蔵されるデバイスおよび外付けのデバイスとデータの送受信を行う通信部であり、タッチパネル部１１１、キー部１１２、表示部Ｔ１１３、ＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ（Service Station）−ＬＡＮ通信部１１８を含む。内蔵されるデバイスは、たとえばタッチパネル部１１１、キー部１１２、および表示部Ｔ１１３であり、外付けのデバイス（以下「外部デバイス」ともいう）は、たとえばプリンタ３１、スキャナ３２、磁気カードリーダライタ３３、暗証番号入力装置３４、計量機３５、釣銭機３６、油面計３７、および洗車機３８である。
【００３１】
タッチパネル部１１１は、操作者が画面にタッチすることによって情報を入力するタッチパネルである。キー部１１２は、操作者がキーを押下することによって情報を入力するキー入力装置である。表示部Ｔ１１３は、液晶ディスプレイなどの表示装置であり、情報を表示する。
【００３２】
ＬＡＮ通信部１１４は、ＬＡＮ３０に接続される機器たとえばサポート機２０とデータを送受信する通信部である。パラレル通信部１１５は、パラレルインタフェースによってターゲット機１０に接続されるプリンタなどの装置と、パラレル通信によってデータを送受信する通信部である。シリアル通信部１１６は、シリアルインタフェースによってターゲット機１０に接続されるスキャナ３２および磁気カードリーダライタ３３と、シリアル通信によってデータを送受信する通信部である。無線通信部１１７は、無線によってターゲット機１０に接続される暗証番号入力装置３４と、無線通信によってデータを送受信する通信部である。ＳＳ−ＬＡＮ通信部１１８は、ＳＳ−ＬＡＮによってターゲット機１０に接続される計量機３５、釣銭機３６、油面計３７、および洗車機３８とデータを送受信する通信部である。ターゲット機１０と外部デバイスとの通信は有線でも無線でもかまわない。
【００３３】
ログ記録制御部１２は、ログ生成部１２１、文字列変換テーブル部Ｔ１２２、ログ記録部１２３、およびログ設定部１２４を含み、入出力部１１あるいは表示制御部１６からの情報に基づいて、ログを生成し記録する。ログ生成部１２１は、入出力部１１あるいは表示制御部１６からログ指示つまりログの生成指示を受け取ると、または入出力部１１にログ対象の動作が発生したか否かを監視し、ログ対象の動作が発生すると、ログ指示または発生したログ対象の動作に基づくログを生成する。ログ対象の動作は、たとえば操作者がターゲット機１０に取付けられたデバイスを直接指などで触ったり押したりしたことによってターゲット機１０上に入力が発生すること、各通信部と接続される外部デバイスとの通信が発生すること、通信路の状態が変わること、各部でエラーが発生することなどの動作である。
【００３４】
文字列変換テーブル部Ｔ１２２は、たとえば図示しないメモリに含まれ、ログ生成部１２１がログを生成するために用いる後述する変換テーブルを記憶する。ログ記録部１２３は、ログ生成部１２１が生成したログを、ログファイル部Ｔ１５に記憶する。ログ設定部１２４は、たとえば図示しないメモリに含まれ、ログを生成するログ対象およびログを記憶させるログファイルの指定などが設定されている。
【００３５】
システムタイマ部１３は、ターゲット機１０の時刻を計時するタイマである。ログ生成部１２１は、ログを生成する際、システムタイマ部１３が示す時刻を参照して、時刻をログに残す。アプリケーション部１４は、ターゲット機１０の用途に応じた機能を実現する部位であり、画像データ部１４１およびアプリケーション制御部１４２を含む。画像データ部１４１は、たとえば図示しないメモリに含まれ、表示部Ｔ１１３に表示する画像イメージとその画像イメージを管理するための後述する画像管理テーブル５１を記憶する。アプリケーション制御部１４２は、ターゲット機１０の用途に応じて実行されるプログラムによって実現される機能である。
【００３６】
ログファイル部Ｔ１５は、たとえば図示しないメモリに含まれ、標準ログファイル１５１および指定ログファイル１５２を含む。ログファイルは、複数のログをまとめてファイル化したものである。１台のターゲット機１０が出力するログをログファイルに記録する場合、ログファイルは１つだけではなく複数のファイルに分割することが可能である。たとえば、入出力デバイス毎あるいは動作毎に分割することができる。図３に示した例では、まず、大きく２つのログファイル、つまり標準ログファイル１５１と指定ログファイル１５２とに分割している。標準ログファイル１５１は、要求のあったデバイス別にログを記憶するためのログファイルであり、指定ログファイル１５２は、デバイス共通にログを記憶するためのログファイルである。そして、標準ログファイル１５１の中は、デバイス別のログファイルに分割されている。さらに、ファイルの分割は、ログファイルのファイルサイズがシステム上の制限あるいは任意に指定した最大値まで達した場合にも行われる。
【００３７】
表示制御部１６は、表示部Ｔ１１３を制御する。たとえばアプリケーション制御部１４２から指示された画像イメージを表示部Ｔ１１３に表示する。制御部１７は、図示しないメモリによって記憶されるプログラムが、図示しないＣＰＵによって実行されることによって実現される機能であり、入出力部１１、ログ記録制御部１２、アプリケーション部１４、および表示制御部１６を制御する。入出力部１１、ログ記録制御部１２、アプリケーション部１４、および表示制御部１６も、図示しないメモリによって記憶されるプログラムが、図示しないＣＰＵによって実行されることによって実現される機能である。図示しないメモリは、たとえばＲＯＭ（Read Only Memory）あるいはＲＡＭ（Random Access
Memory）などの半導体メモリあるいはハードディスク装置によって構成される記憶装置である。
【００３８】
プリンタ３１は、たとえば印刷装置であり、スキャナ３２は、たとえば原稿読取装置あるいはバーコード読取装置であり、磁気カードリーダライタ３３は、磁気カードの読み込みおよび書き込みを行う装置であり、暗証番号入力装置３４は、暗証番号を入力するための入力装置である。計量機３５、釣銭機３６、油面計３７、および洗車機３８は、ガソリンスタンドで用いられる装置であり、計量機３５は、ポンプによる給油量を計量する装置であり、釣銭機３６は、釣銭を払い出す装置であり、油面計３７は、タンクに貯蔵されている油量を計量する装置であり、洗車機３８は、車の洗車を行う装置である。
【００３９】
入出力部１１は、タッチパネル部１１１、キー部１１２、表示部Ｔ１１３、ＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ−ＬＡＮ通信部１１８からのハードウェアまたはソフトウェアによる割込みによって処理を開始する。割込み要因に基づいて、ログの生成を指示するログ指示を作成し、作成したログ指示をログ生成部１２１に送る。
【００４０】
図４は、図３に示した画像データ部１４１が管理する画像管理テーブル５１の一例を示す図である。画像管理テーブル５１は、表示部Ｔ１１３に表示する表示画面を特定する表示画面番号ごとのデータを示すテーブルである。このデータは、表示部Ｔ１１３の画面全体に表示する画像そのもののデータ、表示部Ｔ１１３の画面の一部に表示する画像の、あるいは画像を生成するためのメタデータである。図４には、表示画面番号「０００１」について、データ「開始画像データ」が示され、表示画面番号「０００２」について、データ「業務画像１データ」が示され、表示画面番号「０００３」について、データ「業務画像２データ」が示されている。
【００４１】
アプリケーション制御部１４２は、表示制御部１６に対して表示画面番号を指示すると、表示制御部１６は、アプリケーション制御部１４２から指示された表示画面番号の画像を表示部Ｔ１１３に表示させる。そして、表示制御部１６は、指示された表示画面番号を示すログ指示を作成し、作成したログ指示をログ生成部１２１に送る。
【００４２】
ログ記録制御部１２は、入出力部１１内で、割り込み以外のログ対象の動作が発生しているか否かを監視する。ログ対象の動作が発生していると、そのログ対象の動作のログを生成し、生成したログをログファイル部Ｔ１５に記憶する。さらに、入出力部１１あるいは表示制御部１６から、ログ設定部１２４に設定されているログ対象のログ指示を受け取ると、ログ指示に基づくログを生成し、ログファイル部Ｔ１５に記憶する。ログファイル部Ｔ１５のうちの標準ログファイルに記憶するか指定ログファイルに記憶するか否かは、ログ設定部１２４の設定に基づいて判断される。
【００４３】
図５は、図３に示した入出力部１１または表示制御部１６からログ生成部１２１に通知されるログ指示例５２を示す図である。ログ指示は、基本的には、１行で１つのログ指示を示し、図５には、６つのログ指示が示されている。１つのログ指示は、カンマで区切られた複数の数値または文字列から構成される。最初の数値は、図６で後述する入出力部番号を示し、２番目の数値は、図７で後述する動作番号を示し、３番目以降の数値または文字列は、動作の詳細である。
【００４４】
たとえば、１行目のログ指示「１，１，１４２，２４４」は、入出力番号「１」つまりタッチパネル部１１１で、動作番号「１」の動作つまり「触れる」動作が発生し、動作詳細が「１４２，２４４」つまり触れた位置が座標（１４２，２４４）であったことを示している。２行目のログ指示は「１，２，１４５，２４２」であり、３行目のログ指示は「１１，１１，０１Ｆ４５ＣＣＤ４ＥＦ１０Ｅ０４２」であり、４行目のログ指示は「２１，３１，１３０」であり、５行目のログ指示は「１，１，５８２，２８９」であり、６行目のログ指示は「１，２，５７３，２９５」である。
【００４５】
図６は、図３に示した文字列変換テーブル部Ｔ１２２に記憶される入出力部名定義テーブル５３である。入出力部名定義テーブル５３は、入出力部を特定するための「入出力部番号」ごとに、対応する「入出力部名ログ文字列」を示すテーブルである。入出力部名定義テーブル５３の右側に備考として、それぞれの入出力部名を記載する。テーブルの入出力部名ログ文字列欄の文字列は任意に設定することができるので、入出力部名ログ文字列を、全く関係のない文字列に設定してもよい。
【００４６】
たとえば、入出力部番号「００１」は、入出力部名ログ文字列が「“ｏｐｅｒａｔｉｏｎ”」であり、備考が「タッチパネル」つまりタッチパネル部１１１であることを示している。同様に、入出力部番号に対する入出力部名ログ文字列および備考は、それぞれ「０１１」については、「“ｓｅｒｉａｌ１”」つまりシリアル通信部１であり、「０１２」については、「“ｓｅｒｉａｌ２”」つまりシリアル通信部２であり、「０１３」については、「“ｅｘｔｓｅｒｉａｌ”」つまりシリアル通信部３であり、「０２１」については、「“ｄｉｓｐｌａｙ”」つまり表示部であり、「０３１」については、「“ｓｓｌａｎ”」つまりＳＳ−ＬＡＮ通信部であり、「１００」については、「“ｃｏｒｅ”」つまりアプリケーションである。
【００４７】
「シリアル通信部１」、「シリアル通信部２」、および「シリアル通信部３」は、いずれもシリアル通信部１１６であり、同一デバイスで複数の入出力チャネルを利用している場合を示している。複数の入出力チャネルのそれぞれに入出力部番号を割り当てて区別している。
【００４８】
図７は、図３に示した文字列変換テーブル部Ｔ１２２に記憶される動作名定義テーブル５４である。動作名定義テーブル５４は、動作を特定するための「動作番号」ごとに、対応する「動作名ログ文字列」を示すテーブルである。動作名定義テーブル５４の右側に「備考：対応する動作」として、それぞれの動作名が記載されている。テーブルの動作名ログ文字列欄の文字列は任意に設定することができるので、動作名ログ文字列を、全く関係のない文字列に設定してもよい。
【００４９】
たとえば、動作番号「０００」は、動作名ログ文字列が「“ｍｅｓｓａｇｅ” 」であり、備考が「情報」であることを示している。同様に、動作番号に対する動作名ログ文字列および備考は、それぞれ「００１」については、「“  ｐｒｅｓｓｅｄ” 」および「触れる」であり、「００２」については、「“ｒｅｌｅａｓｅｄ” 」および「離す」であり、「０１１」については、「“ｒｅａｄ” 」および「入力」であり、「０１２」については、「“ｗｒｉｔｅ” 」および「出力」であり、「０２１」については、「“ｅｒｒｏｒ” 」および「エラー」であり、「０３１」については、「“ｃｈａｎｇｅ” 」および「画面変更」である。
【００５０】
図８は、図３に示した文字列変換テーブル部Ｔ１２２に記憶される動作詳細作成ルールテーブル５５である。動作詳細作成ルールテーブル５５は、「入出力部」と「動作」との組合せごとに、「動作詳細のログ作成ルール」を示すテーブルである。動作詳細作成ルールテーブル５５の右側に「備考：意味」として、それぞれの組合せの意味が記載されている。
【００５１】
たとえば、入出力部「００１」と動作「００１」との組合せについては、タッチパネルに触れたことを意味し、動作詳細のログ作成ルールが「第３、第４引数を座標“ｘ＝％０４ｄ，ｙ＝％０４ｄ”形式にする」を行なったことを意味している。同様に、入出力部と動作との各組合せについての動作詳細のログ作成ルールおよび備考は、入出力部「００１」と動作「００２」との組合せについては、タッチパネルを離したことを意味し、「第３、第４引数を座標“ｘ＝％０４ｄ，ｙ＝％０４ｄ”形式にする」を行なった、入出力部「０１１」と動作「０１１」との組合せについては、シリアル通信部１で入力を意味し、「第３引数を１６進数にする」を行なった、入出力部「０１１」と動作「０１２」との組合せについては、シリアル通信部１で出力を意味し、「第３引数を１６進数にする」を行なった、入出力部「０１１」と動作「０２１」との組合せについては、シリアル通信部１でエラーを意味し、「第３引数を１０進数にする」を行なったである。
【００５２】
入出力部「０２１」と動作「０３１」との組合せについては、表示部で画面変化を意味し、「第３引数を“ｄｉｓｐｌａｙ＝％０４ｄ”形式にする」を行なった、入出力部「０３１」と動作「０１１」との組合せについては、ＳＳ−ＬＡＮ通信部で入力を意味し、「第３引数を１６進数にする」を行なった、入出力部「０３１」と動作「０１２」との組合せについては、ＳＳ−ＬＡＮ通信部で出力を意味し、「第３引数を１６進数にする」を行なった、入出力部「１００」と動作「０００」との組合せについては、アプリケーション情報を意味し、「第３引数を文字のまま出力する」を行なったである。
【００５３】
ログ生成部１２１は、入出力部１１あるいは表示制御部１６から、ログ設定部１２４に設定されているログ対象のログ指示を受け取ると、まず、システムタイマ部１３から日時を取得し、日時を表す日時ログ文字列を生成する。次に、受け取ったログ指示の１番目の数値に基づいて、図６に示した入出力部名定義テーブル５３から入出力部名ログ文字列、そして２番目の数値に基づいて、図７に示した動作名定義テーブル５４から動作名ログ文字列を取得する。さらに、受け取ったログ指示の１番目の数値、２番目の数値、および３番目以降の数値または文字列に基づいて、図８に示した動作詳細作成ルールテーブル５５
の動作詳細のログ作成ルールによって、動作の詳細を表す動作詳細ログを作成する。取得した日時ログ文字列、入出力部名ログ文字列、および動作名ログ文字列、ならびに作成した動作詳細ログを合成して、ログ指示に対応するログを生成する。生成したログは、ログファイル部Ｔ１５に記憶する。
【００５４】
たとえば、操作者がタッチパネルに触れたことを示すログを生成する場合、指示ログは、図５に示した指示ログ例５２の１行目の指示ログ「１，１，１４２，２４４」である。第１引数「１」が示す入出力部「タッチパネル」を表す番号「００１」と、第２引数「１」が示す動作「触れる」を表す番号「００１」との組合せについて、図８に示した動作詳細作成ルールテーブル５５を参照すると、動作詳細のログ作成ルール「第３、第４引数を座標“ｘ＝％０４ｄ，ｙ＝％０４ｄ”形式にする」が得られる。ここで「％０４ｄ」とは、４桁の１０進数を示し、Ｃ言語を使用するプログラムにおいて文字出力に関する標準的な出力形式を示す一例である。日時を２００６年５月１８日１５時１５分０１．１２０秒とすると、第３引数「１４２」および第４引数「２４４」から、ログは、「２００６／０５／１８，１５：０５：０１．１２０，“ｏｐｅｒａｔｉｏｎ”，“ｐｒｅｓｓｅｄ”，“ｘ＝０１４２，ｙ＝０２４４”」となる。
【００５５】
図９は、図３に示したログファイル部Ｔ１５に記憶されたログ例５６を示す図である。ログ例５６は、基本的には、１行で１つのログつまりターゲット機１０上での１動作についてのログを示し、図９には、６つのログが示されている。１つのログは、カンマで区切られた複数の数値または文字列から構成される。最初の数値または文字列は、ログ対象の動作があった日時、２番目の数値または文字列は、入出力部名、３番目の数値または文字列は、動作名、４番目の数値または文字列は、各動作の内容を詳細に示す動作詳細である。図９に示した例では、４つの項目を例示したが、これら以外に、ログには関連するプログラム名、ユーザ名、ログの文字数、あるいはマシン名などターゲット機１０に関連する情報、および使用状況あるいは場所を特定する情報などを含めてもよい。さらに、１つのログの情報量が多くなる場合、２行以上にログを分割してもよい。
【００５６】
図９には、図５に示した指示ログ例５２に対応するログ例５６が示されている。１行目には、「２００６／０５／１８，１５：０５：０１．１２０，“ｏｐｅｒａｔｉｏｎ”，“ｐｒｅｓｓｅｄ”，“ｘ＝０１４２，ｙ＝０２４４”」と示され、２行目には、「２００６／０５／１８，１５：０５：０１．５４１，“ｏｐｅｒａｔｉｏｎ”，“ｒｅｌｅａｓｅｄ”，“ｘ＝０１４５，ｙ＝０２４２”」と示され、３行目には、「２００６／０５／１８，１５：０５：０２．９５１，“ｓｅｒｉａｌ１”，“ｒｅａｄ”，“０１Ｆ４５ＣＣＤ４ＥＦ１０Ｅ０４２”」と示され、４行目には、「２００６／０５／１８，１５：０５：０４．０９２，“ｄｉｓｐｌａｙ”，“ｃｈａｎｇｅ”，“ｄｉｓｐｌａｙ＝０１３０”」と示され、５行目には、「２００６／０５／１８，１５：０５：０８．７３５，“ｏｐｅｒａｔｉｏｎ”，“ｐｒｅｓｓｅｄ”，“ｘ＝０５８２，ｙ＝０２８９”」と示され、６行目には、「２００６／０５／１８，１５：０５：０９．０８９，“ｏｐｅｒａｔｉｏｎ”，“ｒｅｌｅａｓｅｄ”，“ｘ＝０５７３，ｙ＝０２９５”」と示されている。
【００５７】
図９に示した例では、ログに日時を特定する情報を含んでいる例を示したが、ログに日時を特定するための情報を含まない場合、ログファイル部Ｔ１５のログファイルにログを記録する際、ログが生成された順またはログ対象の動作が発生した順に記憶する。ログに日時を特定するための情報を含む場合は順不同でもよい。
【００５８】
図１０は、図３に示したアプリケーション部１４がログ指示作成のために用いるログ事象変換テーブル５７である。ログ事象変換テーブル５７は、アプリケーション制御部１４２において発生した「事象」ごとに、対応する「ログ文字列」を示すテーブルである。ログ文字列欄には、事象に合わせて任意のログ文字列を設定することができる。したがって、アプリケーションについては、入出力部１１とは独立したログとして、つまりアプリケーションのみの情報をログとして記録することができる。
【００５９】
図１０には、事象「プログラムＡの開始」について、ログ文字列「“プログラムＡ開始”」が示され、事象「プログラムＡの終了」について、ログ文字列「“プログラムＡ終了（終了コード＝％０３ｄ）”」が示され、事象「操作する従業員の指定」について、ログ文字列「“従業員コード＝％０６ｄ”」が示され、事象「精算処理の開始」について、ログ文字列「“精算処理開始”」が示されている。
【００６０】
図１１は、図３に示したアプリケーション部１４からログ生成部１２１に通知するログ指示例５８およびそれに基づくログ例５９を示す図である。たとえば、ターゲット機１０が複数の従業員で構成される飲食店で使用する端末である場合、端末の操作者を特定するために、アプリケーションは、従業員情報たとえば従業員コードを用いて従業員を管理する。タッチパネルの操作は、端末を使用する従業員が関連する動作であり、タッチパネルで行われた入出力操作と従業員情報とを関連付けてログに記録しておきたいケースが発生する。ログ記録制御部１２がこの従業員情報に関知する構成となっていない場合、ログに記録するため、アプリケーション制御部１４２は、アプリケーションにのみ存在する情報、たとえば従業員情報を、任意の文字列として、ログ指示でログ生成部１２１に指示する。
【００６１】
ログ指示例５８に示した個々のログ指示は、図５に示した例と同様に、カンマで区切られた複数の数値または文字列から構成される。最初の数値は、図６に示した入出力部番号を示し、２番目の数値は、図７に示した動作番号を示し、３番目以降の数値または文字列は、動作の詳細である。動作の詳細は、図１０に示した事象に対応する情報である。たとえば、１行目のログ指示「１００，０，“プログラムＡ開始”」は、入出力番号「１００」つまりアプリケーションで、動作番号「０」の動作つまり「情報」を生成し、動作詳細が「プログラムＡ開始」つまりプログラムＡが開始されたことを示している。２行目のログ指示は「１００，０，“従業員コード＝％０６ｄ”，１３８」であり、３行目のログ指示は「１００，０，“プログラムＡ終了（終了コード＝％０３ｄ）”，０」である。
【００６２】
ログ例５９に示した個々のログは、それぞれログ指示例５８に示したログ指示に対応するログであり、図９に示した例と同様に、カンマで区切られた複数の数値または文字列から構成される。最初の数値または文字列は、ログ対象の動作があった日時、２番目の数値または文字列は、入出力部名、３番目の数値または文字列は、動作名、４番目の数値または文字列は、各動作の内容を詳細に示す動作詳細である。たとえば、１行目には、「２００６／０５／２６，１０：１３：５９．０２２，“ｃｏｒｅ”，“ｍｅｓｓａｇｅ”，“プログラムＡ開始”」と示され、２行目には、「２００６／０５／２６，１０：１４：２１．９２４，“ｃｏｒｅ”，“ｍｅｓｓａｇｅ”，“従業員コード＝０００１３８”」と示され、３行目には、「２００６／０５／２６，１０：２０：１１．３１１，“ｃｏｒｅ”，“ｍｅｓｓａｇｅ”，“プログラムＡ終了（終了コード＝０００）”」と示されている。
【００６３】
図１２は、図１に示したサポート機２０の構成の一例を示すブロック図である。サポート機２０は、ログ読取部２１、バッファ部２２、ログ解析部２３、画面イメージファイルＤＢ（database）２４、表示部Ｓ２５、操作部２６、文字列変換テーブル部Ｓ２７、ログ再生制御部２８、再現用入出力部８０、図示しないＣＰＵ、および図示しないメモリを含む。サポート機２０は、ＬＡＮ５を介して、ターゲット機１０に接続され、再現用に用いる再現用外部デバイスが接続される。
【００６４】
ログ読取部２１は、ターゲット機１０に含まれるログファイル部Ｔ１５からログを読み取る。バッファ部２２は、ログ読取部２１に読み取られたログを記憶する。ログ解析部２３は、ログの解析を行う。画面イメージファイルＤＢ（以下「画面イメージファイルデータベース」ともいう）２４は、ログを記録したターゲット機１０の表示画面と同じまたは同等の複数の画面の画像イメージ（以下「画面イメージ」ともいう）およびその画像イメージを管理するための後述する画面テーブルを記憶する。表示部Ｓ２５は、たとえば液晶ディスプレイなどで構成され、画像を表示する。操作部２６は、たとえばキーボードあるいはマウスなどよって構成され、ログ再生および表示内容について指示を入力するための入力装置である。文字列変換テーブル部Ｓ２７は、たとえば図示しないメモリに含まれ、ログ文字列から動作を特定するためにログ解析部２３によって参照される後述する変換テーブルを記憶する。
【００６５】
ログ再生制御部２８は、図示しないメモリによって記憶されるプログラムが、図示しないＣＰＵによって実行されることによって実現される機能であり、ログ読取部２１、バッファ部２２、ログ解析部２３、画面イメージファイルＤＢ２４、表示部Ｓ２５、操作部２６、および再現用入出力部８０を制御する。ログ解析部２３も、図示しないメモリによって記憶されるプログラムが、図示しないＣＰＵによって実行されることによって実現される機能である。図示しないメモリは、たとえばＲＯＭあるいはＲＡＭなどの半導体メモリあるいはハードディスク装置によって構成される記憶装置である。バッファ部２２および画面イメージファイルＤＢ２４は、図示しないメモリに含まれる。
【００６６】
再現用入出力部８０は、サポート機２０に内蔵されるデバイスおよび外付けのデバイスとデータの送受信を行う通信部であり、ターゲット機１０の入出力部１１に相当する機能を有する。再現用入出力部８０は、再現用タッチパネル部８０１、再現用キー部８０２、再現用表示部８０３、再現用ＬＡＮ通信部８０４、再現用パラレル通信部８０５、再現用シリアル通信部８０６、再現用無線通信部８０７、および再現用ＳＳ−ＬＡＮ通信部８０８を含む。再現用タッチパネル部８０１、再現用キー部８０２、再現用表示部８０３、再現用ＬＡＮ通信部８０４、再現用パラレル通信部８０５、再現用シリアル通信部８０６、再現用無線通信部８０７、および再現用ＳＳ−ＬＡＮ通信部８０８は、それぞれターゲット機１０のタッチパネル部１１１、キー部１１２、表示部Ｔ１１３、ＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ−ＬＡＮ通信部１１８に対応し、重複を避けるために説明は省略する。
【００６７】
内蔵されるデバイスは、たとえば再現用タッチパネル部８０１、再現用キー部８０２、および再現用表示部８０３であり、外付けのデバイスすなわち再現用外部デバイスは、たとえば再現用プリンタ８１、再現用スキャナ８２、再現用磁気カードリーダライタ８３、再現用暗証番号入力装置８４、再現用計量機８５、再現用釣銭機８６、再現用油面計８７、および再現用洗車機８８である。再現用プリンタ８１、再現用スキャナ８２、再現用磁気カードリーダライタ８３、再現用暗証番号入力装置８４、再現用計量機８５、再現用釣銭機８６、再現用油面計８７、および再現用洗車機８８は、それぞれターゲット機１０のプリンタ３１、スキャナ３２、磁気カードリーダライタ３３、暗証番号入力装置３４、計量機３５、釣銭機３６、油面計３７、および洗車機３８に対応し、重複を避けるために説明は省略する。
【００６８】
図１３は、図１２に示した表示部Ｓ２５に表示される再生画面７０を示す図である。再生画面７０は、画面表示部７１、キー操作表示部７２、入出力表示部７３、および再生ポインタ７４を含む。画面表示部７１は、ターゲット機１０の表示部Ｔ１１３に表示される画像と同じ画像を表示する領域である。キー操作表示部７２は、ターゲット機１０のキー部１１２を表す画像を表示する領域である。入出力表示部７３は、ターゲット機１０の入出力部１１に入出力された情報のうちタッチパネル部１１１およびキー部１１２によって入力された情報を除く入出力情報、たとえば入出力部１１に含まれる各通信部によって入出力された情報を表示するための領域である。再生ポインタ７４は、すべてのログを再生する場合、現在再生しているログの相対位置を示すポインタである。
【００６９】
ログ再生制御部２８は、ログ再生を行う際、ターゲット機１０上の表示部Ｔ１１３に表示されていた画面を、画面表示部７１に表示する。ターゲット機１０上でタッチパネルあるいはマウスによって座標指定が行なわれた場合、指定された座標位置を指、矢印、あるいは記号などのポインタによって特定する。ターゲット機１０のキー部１１２で入力されたキーが操作された場合、入力値がポインタによって特定されるようにキー操作表示部７２に表示する。さらに、ターゲット機１０の入出力部１１に含まれる各通信部で通信された情報を、入出力表示部７３に文字列化して表示する。
【００７０】
図１４は、図１２に示したログ再生制御部２８で用いられる検索方法定義テーブル６０を示す図である。検索方法定義テーブル６０は、指定された再生条件に基づいて、ログの検索方法を決定するためのテーブルであり、「再生条件指定」ごとに「検索方法」が示されている。図１４には、再生条件指定「再生開始日時の指定」について、検索方法「ログ行の日時と指定日時の比較」が示され、再生条件指定「特定従業員の指定」について、検索方法「"従業員コード="文字列との一致を検索」が示され、再生条件指定「外部デバイスの特定通信内容」について、検索方法「入出力部ログ文字列と動作詳細文字列との一致を検索」が示されている。
【００７１】
操作者が操作部２６からログの再生を指示すると、ログ再生制御部２８は、表示部Ｓ２５に再生させるログのログファイル名を選択させる画面を、表示部Ｓ２５に表示する。操作部２６によってログファイル名が選択されると、選択されたログファイルを、ログ読取部２１によって、ターゲット機１０に含まれるログファイル部Ｔ１５からバッファ部２２に読み込む。選択されたログファイルが複数である場合、選択された全ログファイルをバッファ部２２に読み込み、日時によってログをソートする。
【００７２】
次に、ログ再生制御部２８は、再生条件を入力させる画面を、表示部Ｓ２５に表示する。再生条件には、図１４に示した再生条件があり、たとえばログの開始から終了までのうちの任意の日時のログを再生するという条件、あるいはログ中で指定の文字列と一致するログを再生するという条件を指定することができる。再生条件が指定されると、指定された再生条件を満たすログを検索する。
【００７３】
ログ再生制御部２８は、ログ解析部２３によって、検索した各ログについて、ログが示す動作がどのようなものであったかを解析する。ログの示す動作が画面表示に関係するものである場合、画面イメージファイルＤＢ２４から、ログに含まれる画面表示についての情報が示す画面イメージを取得し、取得した画面イメージを画面表示部７１に表示する。操作が伴っていれば、表示されている画面イメージに重畳して、その操作の操作位置を示すための指などのポインタを表示する。ログ再生制御部２８は、検索したログを時系列に順次再生する。
【００７４】
ユーザは、操作部２６によって、順次再生されているログを任意の時点で停止することができ、さらに停止時点から再開することができる。１つのログを表示してから次のログを表示する時間を、ログの日時に基づいて調整することによって、実時間での動作として再現することができる。その時間を短くすることによって高速再生、あるいはその時間を長くすることによってスロー再生も可能である。
【００７５】
図１５は、図１２に示した画面イメージファイルＤＢ２４に記憶される画面テーブル６１の一例を示す図である。画面テーブル６１は、画面を特定するための情報である画面情報と、画面イメージを格納するファイルを特定するための画面イメージファイル名とを対にして構成したテーブルであり、ログに基づいて、ログ記録時に表示されていた画面を特定して、再生イメージを生成するために使用される。画面イメージファイル名は、予め画面イメージ毎に定められたファイルの名称であり、画面イメージファイル名が示すファイルに、ターゲット機１０上で表示される画面と同じまたは同等の画面の画像イメージが記録される。
【００７６】
図１５に示した画面情報を、図４に示した画像管理テーブル５１における表示画像番号と同じ画像番号にすることによって、ログ記録時の表示画面とログ再生時の表示画面とを一致させることができる。ログに含まれる画面表示についての情報は、ログが記録された時点でターゲット機１０の画面に表示されていた画面イメージを導き出せる一意の情報であり、画面テーブル６１における画面情報のいずれかの画面情報を特定している。ログが記録された時点でターゲット機１０の画面に表示されていた画面イメージを収めたファイルのファイル名、またはそのイメージを特定することができるなんらかの情報を収めたファイルのファイル名が、画面テーブル６１の画面イメージファイル名に示されている。したがって、特定された画面情報に対応する画面イメージファイル名の画面イメージを、画面イメージファイルＤＢ２４から読み出して、表示部Ｓ２５に表示すれば、ログが記録された時点でターゲット機１０の画面に表示されていた画面イメージを再生することができる。
【００７７】
画面イメージファイル名の画面イメージのイメージ形式は、たとえばＰＮＧ（Portable
Network Graphics）形式、ＧＩＦ（Graphic Interchange Format）形式、あるいはＪＰＥＧ（Joint Photographic Experts Group）形式など様々なフォーマットを利用することができる。
【００７８】
図１５には、画面情報「画面０００１」の画面イメージファイルとして「０００１．ＰＮＧ」が示され、画面情報「画面０００２」の画面イメージファイルとして「０００２．ＧＩＦ」が示され、画面情報「画面０００３」の画面イメージファイルとして「０００３．ＪＰＧ」が示されている。
【００７９】
図１６は、図１３に示した画面表示部７１に表示される再生画面７０の生成手順の一例を模式的に示す図である。ログ再生制御部２８は、図１５に示した画面テーブル６１を使用して、ターゲット機１０からバッファ部２２に読み込んだログファイルのログから、ログが記録された際に表示されていたターゲット機１０上の画面を導き出す。
【００８０】
図１６には、ログファイル１５ａ、画面イメージファイルデータベース２４ａ、および再生イメージ７０ａ、および再生イメージ７０ｂが示されている。ログファイル１５ａには、２つのログ「 ２００６／０５／２２，１４：４９：４２．７８９，“ｄｉｓｐｌａｙ”，“ｃｈａｎｇｅ”，“ｄｉｓｐｌａｙ＝画面０００１”」および「２００６／０５／２２，１４：５３：０２．０２４，“ｄｉｓｐｌａｙ”，“ｃｈａｎｇｅ”，“ｄｉｓｐｌａｙ＝画面０００２”」が記録されている。画面イメージファイルデータベース２４ａには、画面テーブル６１、画面イメージ「０００１．ＰＮＧ」、画面イメージ「０００２．ＧＩＦ」、および画面イメージ「０００３．ＪＰＧ」が記憶されている。
【００８１】
ログ再生制御部２８は、たとえばバッファ部２２に読み込んだログファイル１５ａの最初のログを、ログ解析部２３によって解析すると、「２００６年５月２２日１４時４９分４２．７８９秒」に「画面０００１」を表示したことが判明する。画面情報「画面０００１」をキーとして、画面イメージファイルデータベース２４ａで検索を行い、関連する画面イメージファイル名「０００１．ＰＮＧ」を得る。すなわち、当該ログ記録時にターゲット機１０上で表示された画面はファイル「０００１．ＰＮＧ」の画像イメージであることが導かれる。ログ再生制御部２８は、画面イメージファイル名「０００１．ＰＮＧ」の画像イメージを、画面イメージファイルデータベース２４ａから取得し、再生イメージ７０ａとして表示部Ｓ２５に表示する。同様に、２つ目のログについて、再生イメージ７０ｂを表示部Ｓ２５に表示する。
【００８２】
再生イメージ７０ａは、「２００６年５月２２日１４時４９分４２．７８９秒」にターゲット機１０の表示部Ｔ１１３に表示された画像イメージ「画面０００１」であり、再生イメージ７０ｂは、「２００６年５月２２日１４時５３分０２．０２４秒」にターゲット機１０の表示部Ｔ１１３に表示された画像イメージ「画面０００２」である。
【００８３】
図１７は、図１２に示した画面イメージファイルＤＢ２４に記憶される他の画面テーブル６２の例を示す図である。画面テーブル６２は、画面のうち背景を特定するための情報、または部品となるウィンドウを特定するための情報によって定義される画面情報と、画面イメージを格納するファイルを特定するための画面イメージファイル名とを対にして構成したテーブルであり、図１５に示した画面テーブル６１と同様に、ログからログ記録時に表示されていた画面を特定して、再生イメージを生成するために使用される。画面イメージファイル名は、予め画面イメージ毎に定められたファイルの名称であり、画面イメージファイル名が示すファイルに、ターゲット機１０上で表示される画面の背景またはウィンドウ・ボタン・テキストなどの部品と同じまたは同等の画像イメージが記録される。
【００８４】
図１７には、画面情報「背景０００１」の画面イメージファイルとして「Ｂ０００１．ＰＮＧ」が示され、画面情報「背景０００２」の画面イメージファイルとして「Ｂ０００２．ＰＮＧ」が示され、画面情報「背景０００３」の画面イメージファイルとして「Ｂ０００３．ＰＮＧ」が示され、画面情報「ウィンドウ０００１」の画面イメージファイルとして「Ｗ０００１．ＰＮＧ」が示され、画面情報「ウィンドウ０００２」の画面イメージファイルとして「Ｗ０００２．ＰＮＧ」が示されている。
【００８５】
画面テーブル６２が、図１５に示した画面テーブル６１と異なる点は、画面テーブル６２のイメージファイル名が指すイメージファイルは、画面に表示される画像イメージ全体のうち一部を示す構成要素となっているところである。再生イメージの生成は、背景として使用される画像イメージと背景の前方に表示するウィンドウの画像イメージとを組み合わせて生成される。すなわち、ログに記録される複数の画面情報から得られる複数の画像イメージが重畳されたものである。したがって、画像イメージを共通に利用することができるので、画面イメージファイルデータベース２４に記憶する画像イメージの数の削減あるいは各データのデータサイズを減少させることができる。
【００８６】
図１８は、図１３に示した画面表示部７１に表示される再生画面の生成手順の他の例を模式的に示す図である。ログ再生制御部２８は、図１７に示した画面テーブル６２を使用して、ターゲット機１０からバッファ部２２に読み込んだログファイルのログから、ログが記録された際に表示されていたターゲット機１０上の画面を導き出す。
【００８７】
図１８には、ログファイル１５ｂ、画面イメージファイルデータベース２４ｂ、および再生イメージ７０ｃ、および再生イメージ７０ｄが示されている。ログファイル１５ｂには、２つのログ「２００６／０５／２２，１４：４９：４２．７８９， “ｄｉｓｐｌａｙ”，“ｄｉｓｐｌａｙ＝背景０００１，ウィンドウ０００１（ｘ＝０１３２，ｙ＝００２４”」および「２００６／０５／２２，１４：５３：０２．０２４， “ｄｉｓｐｌａｙ”，“ｄｉｓｐｌａｙ＝背景０００１，ウィンドウ０００２（ｘ＝０１３２，ｙ＝００２４”」が記録されている。画面イメージファイルデータベース２４ｂには、画面テーブル６２、画面イメージ「Ｂ０００１．ＰＮＧ」、画面イメージ「Ｗ０００１．ＰＮＧ」、および画面イメージ「Ｗ０００２．ＰＮＧ」が記憶されている。
【００８８】
ログ再生制御部２８は、たとえばバッファ部２２に読み込んだログファイル１５ｂの最初のログを、ログ解析部２３によって解析すると、「２００６年５月２２日１４時４９分４２．７８９秒」に「背景０００１」と「ウィンドウ０００１」とを表示したことがわかる。画面情報「背景０００１」をキーとして、画面イメージファイルデータベース２４ｂで検索を行い、関連する画面イメージファイル名「Ｂ０００１．ＰＮＧ」を得る。同様に、画面情報「ウィンドウ０００１」をキーとして検索し、画面イメージファイル名「Ｗ０００１．ＰＮＧ」を得る。ログ再生制御部２８は、画面イメージファイル名「Ｂ０００１．ＰＮＧ」の画像イメージと、画面イメージファイル名「Ｗ０００１．ＰＮＧ」の画像イメージとを、画面イメージファイルデータベース２４ｂから取得し、２つの画像イメージを重畳して、再生イメージ７０ｃとして表示部Ｓ２５に表示し、該ログ記録時にターゲット機上で表示された画面を再生する。同様に、２つ目のログについて、再生イメージ７０ｄを表示部Ｓ２５に表示する。
【００８９】
再生イメージ７０ｃは、「２００６年５月２２日１４時４９分４２．７８９秒」にターゲット機１０の表示部Ｔ１１３に表示された画像イメージ「背景０００１」および「ウィンドウ０００１」であり、再生イメージ７０ｄは、「２００６年５月２２日１４時５３分０２．０２４秒」にターゲット機１０の表示部Ｔ１１３に表示された画像イメージ「背景０００１」および「ウィンドウ０００２」である。
【００９０】
図１９は、図１２に示した文字列変換テーブル部Ｓ２７に記憶される入出力部特定テーブル６３を示す図である。入出力部特定テーブル６３は、「入出力部名ログ文字列」に対応する「入出力部番号」を示すテーブルである。入出力部特定テーブル６３の右側に備考として、それぞれの入出力部名を記載する。入出力部特定テーブル６３は、ログ解析部２３が解析を行う際に用いるテーブルであり、図７に示した入出力部名定義テーブル５３による変換と逆の変換を行うためのテーブルである。
【００９１】
図１９には、「タッチパネル」を意味する、入出力部名ログ文字列「“ｏｐｅｒａｔｉｏｎ”」に対して、入出力部番号「００１」、「シリアル通信部１」を意味する、入出力部名ログ文字列「“ｓｅｒｉａｌ１”」に対して、入出力部番号「０１１」、「シリアル通信部２」を意味する、入出力部名ログ文字列「“ｓｅｒｉａｌ２”」に対して、入出力部番号「０１２」、「シリアル通信部３」を意味する、入出力部名ログ文字列「“ｅｘｔｓｅｒｉａｌ”」に対して、入出力部番号「０１３」、「表示部」を意味する、入出力部名ログ文字列「“ｄｉｓｐｌａｙ”」に対して、入出力部番号「０２１」、「ＳＳ−ＬＡＮ通信部」を意味する、入出力部名ログ文字列「“ｓｓｌａｎ”」に対して、入出力部番号「０３１」、「アプリケーション」を意味する、入出力部名ログ文字列「“ｃｏｒｅ”」に対して、入出力部番号「１００」が示されている。
【００９２】
図２０は、図１２に示した文字列変換テーブル部Ｓ２７に記憶される動作特定テーブル６４を示す図である。動作特定テーブル６４は、「動作名ログ文字列」に対応する「動作番号」を示すテーブルである。動作特定テーブル６４の右側に備考として、それぞれの動作名を記載する。動作特定テーブル６４は、図８に示した動作名定義テーブル５４による変換と逆の変換を行うためのテーブルである。
【００９３】
図２０には、「情報」を意味する、動作名ログ文字列「“ｍｅｓｓａｇｅ”」に対して、動作番号「０００」、「触れる」を意味する、動作名ログ文字列「“ｐｒｅｓｓｅｄ”」に対して、動作番号「００１」、「離す」を意味する、動作名ログ文字列「“ｒｅｌｅａｓｅｄ”」に対して、動作番号「００２」、「入力」を意味する、動作名ログ文字列「“ｒｅａｄ”」に対して、動作番号「０１１」、「出力」を意味する、動作名ログ文字列「“ｗｒｉｔｅ”」に対して、動作番号「０１２」、「エラー」を意味する、動作名ログ文字列「“ｅｒｒｏｒ”」に対して、動作番号「０２１」、「画面変更」を意味する、動作名ログ文字列「“ｃｈａｎｇｅ”」に対して、動作番号「０３１」が示されている。
【００９４】
図２１は、図１２に示した文字列変換テーブル部Ｓ２７に記憶される動作解析テーブル６５を示す図である。動作解析テーブル６５は、「入出力部」と「動作」との組合せごとに、「動作詳細ログの意味」を示すテーブルであり、ログに動作詳細文字列として記録されたものから、各入出力部でどのような動作が行われたかを特定するために用いられる。動作解析テーブル６５の右側に備考として、それぞれのログの意味を記載している。動作解析テーブル６５は、ログ解析部２３が解析を行う際に用いるテーブルであり、図８に示した動作詳細作成ルールテーブル５５で行われた変換と逆の変換を行うためのものである。
【００９５】
図２１には、入出力部「００１」と動作「００１」との組合せについては、「タッチパネル座標（Ｘ，Ｙ）に触れた」を意味し、動作詳細ログの意味が「“ｘ＝％０４ｄ，ｙ＝％０４ｄ”形式で数値は座標Ｘ、Ｙ」である。同様に、入出力部と動作との各組合せについての動作詳細ログの意味は、入出力部「００１」と動作「００２」との組合せについては、「タッチパネル座標（Ｘ，Ｙ）で離した」を意味し、動作詳細は「“ｘ＝％０４ｄ，ｙ＝％０４ｄ”形式で数値は座標Ｘ、Ｙ」であり、入出力部「０１１」と動作「０１１」との組合せについては、「シリアル通信部１において外部機器との通信で入力があった」を意味し、動作詳細は「１６進数形式で通信内容」であり、入出力部「０１１」と動作「０１２」との組合せについては、「シリアル通信部１において外部機器に通信で出力した」を意味し、動作詳細は「１６進数形式で通信内容」であり、入出力部「０１１」と動作「０２１」との組合せについては、「シリアル通信部１においてエラー発生」を意味し、動作詳細は「１０進数形式でエラーコード」である。
【００９６】
入出力部「０２１」と動作「０３１」との組合せについては、「表示部で画面を表示した」を意味し、動作詳細は「“ｄｉｓｐｌａｙ＝％０４ｄ”形式で数値は画面番号Ｄ」であり、入出力部「０３１」と動作「０１１」との組合せについては、「ＳＳ−ＬＡＮ通信部において外部機器との通信で入力があった」を意味し、動作詳細は「１６進数形式で通信内容」であり、入出力部「０３１」と動作「０１２」との組合せについては、「ＳＳ−ＬＡＮ通信部において外部機器に通信で出力した」を意味し、動作詳細は「１６進数形式で通信内容」であり、入出力部「１００」と動作「０００」との組合せについては、「アプリケーション情報」を意味し、動作詳細は「文字のまま出力する」である。
【００９７】
ログ解析部２３は、ログの入出力名に対応する入出力部番号を図１９に示した入出力部特定テーブル６３から抽出し、ログの動作名に対応する動作番号を図２０に示した動作特定テーブル６４から抽出し、さらに抽出した入出力部番号および動作番号の組合せに対応する動作を図２１に示した動作解析テーブル６５によって特定する。
【００９８】
ログ再生制御部２８は、ターゲット機１０の入出力部１１に含まれる各通信部で通信された情報の場合、ログの動作詳細に示された情報を、入出力表示部７３に文字列化して表示する。画面の表示が行われたログである場合、図１６または図１８に示したように、ログの動作詳細に対応する画面番号を画面イメージファイルＤＢ２４から取得し、取得した表示画面を表示部Ｓ２５に再生表示する。
【００９９】
さらに、タッチパネル部１１１またはキー部１１２に対する操作のログの場合、ログの動作詳細が示す位置をポインタによって特定して示すことによって、表示部Ｓ２５に表示された画面イメージの中の操作ボタンまたはキーのうち、操作された操作ボタンまたはキーを示すことができる。１つの操作を行った後次の操作を行う場合、１つの操作の位置と次の操作の位置とを結ぶ経路上に、ポインタの残像を１つの操作の位置から次の操作の位置まで順次移動させて表示することによって、ポインタの移動の追尾を可能にする。
【０１００】
図２２は、図３に示したサポート機２０を含むログ表示システムの他の例であるログ表示システム２の概略の構成を示す図である。ログ表示システム２は、ログファイルをターゲット機外の記憶装置に記憶するものであり、ＬＡＮ３０でそれぞれ接続されるターゲット機１０ａ、サポート機２０、およびネットワークディスク４０を含む。サポート機２０は、図３に示したサポート機２０と同じであり、図示していない。ターゲット機１０ａは、図３に示したターゲット機１０のログファイル部Ｔ１５をなくしたものである。ログ送信部１８は、図３に示したＬＡＮ通信部１１４と同じであり、ログ生成部１２１で生成されたログを、ＬＡＮ３０などのネットワークあるいは公衆回線に接続されているネットワークディスク４０に送信する。
【０１０１】
ネットワークディスク４０は、ＬＡＮ３０に接続され、ログファイル部Ｎ４１およびログ通信部Ｎ４２を含む。ログファイル部Ｎ４１は、たとえばハードディスク装置などの記憶装置によって構成され、ログ通信部Ｎ４２がターゲット機１０ａから受信したログを記憶する。ログ通信部Ｎ４２は、ＬＡＮ３０に接続される他の機器たとえばターゲット機１０ａおよびサポート機２０と、データを送受信する通信部である。これによって、ターゲット機１０ａ内部に記憶領域を設けなくても、ログ記録を行うことができる。
【０１０２】
図２３は、本発明の実施の他の形態であるサポート機２０ａを含むログ表示システム３の概略の構成を模式的に示す図である。ログ表示システム３は、ログファイルをなくしたシステムであり、ＬＡＮ３０によってそれぞれ接続されるターゲット機１０ｂおよび履歴情報の動作制御装置であるサポート機２０ａを含む。履歴情報の動作制御方法は、ログ表示システム３によって処理される。ターゲット機１０ｂは、図２２に示したターゲット機１０ａと同じであり説明は省略する。サポート機２０ａは、図２４で詳述するが、図１２に示したサポート機２０のログ読取部２１およびバッファ部２２の代わりにログ受信部Ｓ２９を設けたものである。ターゲット機１０ｂは、生成したログを記憶することなく、ログ送信部１８によってサポート機２０ａに送信する。
【０１０３】
図２４は、図２３に示したサポート機２０ａの構成の一例を示すブロック図である。サポート機２０ａは、図１２に示したサポート機２０のログ読取部２１およびバッファ部２２の代わりにログ受信部Ｓ２９を設けたものである。サポート機２０ａは、再現用入出力部８０を含むが、記述は省略している。サポート機２０ａのログ受信部Ｓ２９は、ターゲット機１０ｂから送信されたログを受信し、ログ解析部２３に送る。ログ解析部２３は、ログ受信部Ｓ２９から受け取ったログを解析し、解析結果をログ再生制御部２８に送る。ログ再生制御部２８は、ログ解析部２３から受け取った解析結果に基づいて表示を行う。すなわち、ログ表示システム３は、ターゲット機１０ｂで行われた操作を、リアルタイムでサポート機２０ａの表示部Ｓ２５に表示することができる。したがって、ターゲット機１０ｂと離れた場所で、ターゲット機１０ｂでの動作を監視することができる。ログを監視する用途に使用することが簡単になる。
【０１０４】
図２５は、図３に示した入出力部１１の入出力ログ指示作成処理のフローチャートである。入出力部１１がログ指示に関する処理を行うとき、ステップＡ１に移る。ステップＡ１では、ハードウェアまたはソフトウェア割込みを待つ。ステップＡ２では、割込みがあったか否かを判定する。割込みがあると、ステップＡ３に進み、割込みがないと、ステップＡ１に戻る。ステップＡ３では、割込みについて処理を行う。ステップＡ４では、割込みを発生した処理内容に基づいてログ指示を作成する。ステップＡ５では、ログ指示をログ生成部１２１に通知して終了する。
【０１０５】
図２６は、図３に示したアプリケーション部１４のログ指示作成処理のフローチャートである。アプリケーション部１４が、表示部Ｔ１１３の画面に表示を行うとき、ステップＢ１に移る。画面表示を行うには、表示制御部１６に対して表示画像番号を通知することによって、表示する画面を指定する。この指定は、ターゲット機１０上で動作する任意のアプリケーションによって行われる。
【０１０６】
ステップＢ１では、表示画像番号を基に画像データ部１４１から、図４に示した画像管理テーブル５１によって特定される画像データを取得する。ステップＢ２では、表示部Ｔ１１３に合わせて画像データを調整する。調整とは、画像は、全体または一部であり、表示部Ｔ１１３の表示能力に合わせて、画像を拡大、縮小、あるいは重ね合せることである。ステップＢ３では、調整した画像データを表示部Ｔ１１３に表示する。ステップＢ４では、表示画像番号に基づいてログ指示を作成する。ステップＢ５では、生成したログ指示をログ生成部１２１へ通知して終了する。
【０１０７】
図２７は、図３に示したログ記録制御部１２のログ監視処理のフローチャートである。ログ記録制御部１２は、入出力部１１内の各部を監視し、ログ対象の動作のログを生成するために、ステップＣ１に移る。
【０１０８】
ステップＣ１では、ログ設定部１２４からログ設定を取得する。ログ設定には、ログの対象、たとえば入出力部１１に関する動作全て、あるいはエラーが設定されており、ログ設定にログ対象を設定しておくことによって、ログ対象の動作を選択することができる。ステップＣ２では、入出力部１１の動作を確認する。すなわち、入出力部１１内の各部の動作を監視する。ステップＣ３では、ログ対象動作があったか否かを判定する。ログ対象動作があると、ステップＣ４に進み、ログ対象動作がないと、ステップＣ２に戻る。
【０１０９】
ステップＣ４では、ログ対象の動作について、ログを生成する。ステップＣ５では、ログ設定に記録先ログファイルの指定があるか否かを判定する。指定があると、ステップＣ７に進み、指定がないと、ステップＣ６に進む。ステップＣ６では、生成したログを標準ログファイル１５１に記録して終了する。ステップＣ７では、生成したログを指定ログファイル１５２に記録して終了する。
【０１１０】
図２８は、図３に示したログ記録制御部１２のログ記録処理のフローチャートである。入出力部１１または表示制御部１６からのログ指示を監視するとき、ステップＤ１に移る。ステップＤ１では、ログ指示を待つ。ステップＤ２では、ログ指示があったか否かを判定する。ログ指示があると、ステップＤ３に進み、ログ指示がないと、ステップＤ１に戻る。ステップＤ３では、ログ設定部１２４からログ設定を取得する。ステップＤ４では、ログ指示がログ対象のログ指示か否かを判定する。ログ対象であると、ステップＤ５に進み、ログ対象でないと、ステップＤ１に戻る。
【０１１１】
ステップＤ５では、検出したログ対象の動作について、ログを生成する。ステップＤ６では、ログ設定に記録先ログファイルの指定があるか否かを判定する。指定があると、ステップＤ８に進み、指定がないと、ステップＤ７に進む。ステップＣ７では、生成したログを標準ログファイル１５１に記録して終了する。ステップＣ８では、生成したログを指定ログファイル１５２に記録して終了する。
【０１１２】
図２７と図２８とに示した両フローチャートは、ともにログ記録制御部１２による処理であるが、別々のタスクで動作する。しかし、各フローチャートの開始を他のフローチャートの終了に繋げて１つのタスクとして連続して動作してもよい。
【０１１３】
図２９は、図３に示したログ生成部１２１のログ生成処理のフローチャートである。
図２７に示したステップＣ４または図２８に示したステップＤ５でログを生成する際に、呼び出され、ステップＥ１に移る。したがって、ログ対象のログ指示またはログ対象の動作が特定された状態で処理が開始される。
【０１１４】
ステップＥ１では、システムタイマ部１３から現在の日時を取得する。日時は、必ずしもシステムタイマ部１３による日時である必要はなく、ログの対象となる動作が発生した日時を特定することができる何らかの一意な日時を使用してもよい。一意な日時とは、たとえばターゲット機１０が動作を開始してからの経過時間、同一ネットワーク上のサーバ機の時計による日時あるいはそのサーバの稼動時間である。
【０１１５】
ステップＥ２では、取得した日時から日時ログ文字列を作成する。ステップＥ３では、図６に示した入出力部名定義テーブル５３を参照して、入出力部番号に対応する入出力部ログ文字列を取得する。ステップＥ４では、図７に示した動作名定義テーブル５４を参照して、動作番号に対応する動作ログ文字列を取得する。ステップＥ５では、図８に示した動作詳細作成ルールテーブル５５を参照して、入出力部番号と動作番号との組合せに対応する動作詳細ログ文字列の作成ルールつまり動作詳細のログ作成ルールを取得する。
【０１１６】
ステップＥ６では、取得した動作詳細のログ作成ルールに基づき、動作詳細のログ文字列を作成する。ステップＥ７では、ステップＥ２で作成した日時ログ文字列、ステップＥ３で取得した入出力部ログ文字列、ステップＥ４で取得した動作ログ文字列、およびステップＥ６で作成した動作詳細ログ文字列を結合してログを生成し、終了する。
【０１１７】
図３０は、図１２に示したログ再生制御部２８の画面表示ログ再生処理のフローチャートである。たとえば操作部２６によって、ログの再生を行う機能が選択されると、ステップＦ１に移る。
【０１１８】
ステップＦ１では、表示部Ｓ２５に、再生するログファイル名を選択させるためのログファイル名選択画面を表示する。ステップＦ２では、操作部２６によってログファイル名が選択されるのを待つ。ステップＦ１に移る前に、たとえばログの再生を行う機能が選択される前に、再生するログファイルが指定されていれば、ステップＦ１およびステップＦ２をスキップしてもよい。
【０１１９】
ステップＦ３では、複数のログファイルが選択されたか否かを判定する。複数のログファイルが選択されると、ステップＦ１９に進み、１つのログファイルが選択されると、ステップＦ４に進む。ステップＦ４では、選択されたログファイルをバッファ部２２に読み込む。ステップＦ５では、バッファ部２２から、ログの記録が開始された日時と終了した日時つまり最後に記録された日時とを取得する。バッファ部２２内のログは、日時順にソートされているので、それぞれ先頭行の日時と最終行の日時とを取得する。
【０１２０】
ステップＦ６では、再生条件を入力させるための再生条件入力画面を表示する。再生条件は、たとえばログの開始から終了までのうちの入力された日時のログを再生するという条件、あるいは入力された文字列と一致するまたは含むログを再生するという条件である。ステップＦ７では、再生条件の指定があるか否かを判定する。再生条件の指定があると、ステップＦ８に進み、再生条件の指定がないと、ステップＦ２０に進む。ステップＦ８では、バッファ部２２内のログから指定された再生条件に合致するログを検索し、バッファ部２２の先頭のログを第１行としたとき、検索されたログの行番号の値から「１」引いた値をカウンタ「ｎ」に代入する。
【０１２１】
ステップＦ９では、カウンタ「ｎ」に「１」を加え、ポインタを次の行に進める。ステップＦ１０では、バッファ部２２から「ｎ」行目のログを１行分読取る。ステップＦ１１では、読み取ったログをログ解析部２３で解析する。解析によって、ログが示す動作がどのようなものであったかを明らかにする。ステップＦ１２では、再生に別の行のログが必要であるか否かを判定する。１つの動作が２行以上のログに分割記録されていることがあるので、別の行が必要であるか否かを判定する。ログが不足すると再生することができないケースがある。別の行のログが必要であると、ステップＦ９に戻り、別の行のログが必要でないと、ステップＦ１３に進む。
【０１２２】
ステップＦ１３では、画面表示のログか否か、つまりログの示す動作が画面表示に関係するものである否かを判定する。画面表示のログの場合、ステップＦ１４に進み、画面表示のログでない場合、ステップＦ１５に進む。ステップＦ１４では、ログに画面イメージについての情報が含まれているので、その情報が示す画面イメージを画面イメージファイルＤＢ２４から取得する。ステップＦ１５では、取得した画面イメージとログが示す動作とから表示する再生画面イメージを生成する。ステップＦ１６では、生成した再生画面イメージを表示部Ｓ２５に表示する。
【０１２３】
ステップＦ１７では、バッファ部２２内のログを全て読み取ったか否かを判定する。ログを全て読み取っていない場合、ステップＦ１８に進み、ログを全て読み取った場合、終了する。終了と同時に開始に戻り、ログファイル選択画面の表示を行うこともできる。ステップＦ１８では、ウェイトｗ秒待ち、ステップＦ９に戻る。ステップＦ１９では、選択された全ログファイルをバッファ部２２に読み込み、ログ各行の日時をキーとしてログをソートし、ステップＦ５に進む。ステップＦ２０では、カウンタ「ｎ」に「０」を代入して、ステップＦ９に進む。
【０１２４】
図３０に示した処理は、操作部２６による操作によって任意の場面で終了することができ、さらに一時的に停止および一時停止からの再実行を行うことができる。さらに、ログファイルの選択とともに、ログファイル内のログをファイルサイズ、行数、またはログに記録された日時によって指定することができ、ログファイルからのログの読み取りを、ログファイル中の任意のログから開始することも可能である。
【０１２５】
再生速度については、図３０に示した各ステップ間、ループ中、あるいはジャンプ前後に、操作部２６によって指定した任意時間または一定時間、たとえばウェイトｗ秒を挿入することも可能であり、これによって再生速度の調整を行うことができる。ウェイトに使用する時間ｗを、ログに記録された日時に基づいて設定することによって、ログの実時間再生も可能である。ｗの値は、フローチャートの処理を開始する時に、またはステップＦ９からステップＦ１８のループ処理中に、操作部２６によって任意に変更することができる。
【０１２６】
図３１は、図２４に示したログ再生制御部２８の外部機器ログ再生処理のフローチャートである。操作部２６によって、ログの再生を行う機能が選択されると、ステップＧ１に移る。
【０１２７】
ステップＧ１では、操作部２６での操作、またはログ受信部Ｓ２９でのログの受信を待つ。ステップＧ２では、操作部２６で操作があったか否かを判定する。操作部２６で操作があると、ステップＧ１２に進み、操作部２６で操作がないと、ステップＧ３に進む。ステップＧ３では、ログ受信部Ｓ２９がログを受信したか否かを判定する。ログ受信部Ｓ２９がログを受信すると、ステップＧ４に進み、ログ受信部Ｓ２９がログを受信しないと、ステップＧ１に戻る。ステップＧ４では、受信したログをログ解析部２３で解析する。ステップＧ５では、ログの解析に次の行のログが必要か否かを判定する。次の行のログが必要であると、ステップＧ１に戻り、次の行のログが必要でないと、ステップＧ６に進む。
【０１２８】
ステップＧ６では、受信したログがターゲット機１０の各通信部、たとえばＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ−ＬＡＮ通信部１１８のいずれかの通信部の出力ログであるか否かを判定する。出力ログは、通信部が外部デバイスに送信したデータを含むログであり、図２０に示した動作特定テーブル６４の動作番号が「０１２」であるログである。受信したログが各通信部の出力ログであると、ステップＧ１４に進み、各通信部の出力ログでないと、ステップＧ７に進む。
【０１２９】
ステップＧ７では、受信したログがターゲット機１０の各通信部の入力ログか否かを判定する。入力ログは、各通信部が外部デバイスから受信したデータを含むログであり、図２０に示した動作特定テーブル６４の動作番号が「０１１」であるログである。各通信部の入力ログであると、ステップＧ８に進み、各通信部の入力ログでないと、ステップＧ１に戻る。ステップＧ８では、対応する再現用通信部、すなわちターゲット機１０の通信部つまりＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ−ＬＡＮ通信部１１８のうち、受信した入力ログの入出力部番号によって特定される通信部に対応するサポート機２０の再現用通信部によって、再現用外部デバイスからのデータの受信を待つ。ステップＧ９では、データを受信したか否かを判定する。データを受信すると、ステップＧ１０に進み、データを受信しないと、ステップＧ８に戻る。
【０１３０】
ステップＧ１０では、受信したデータは入力ログのデータと一致するか否かを判定する。再現用外部デバイスから受信したデータが入力ログに含まれるログの元データと一致すると、受信したデータと入力ログのデータとが一致すると判定し、ステップＧ１に戻り、再現用外部デバイスから受信したデータが入力ログに含まれるログの元データと一致しないと、受信したデータと入力ログのデータとが一致しないと判定し、ステップＧ１１に進む。ステップＧ１１では、受信したデータと入力ログのデータとが一致しないことを、再生画面つまり表示部Ｓ２５の画面に警告表示して、ステップＧ１に戻る。ユーザは、受信したデータと入力ログのデータとが一致しないことから、ターゲット機１０の外部デバイスでの動作の結果と、サポート機２０の再現用外部デバイスでの動作の結果とが一致しないことを知ることができる。
【０１３１】
ステップＧ１２では、操作部２６で行われた操作が、ログ再生終了の操作か否かを判定する。ログ再生終了の操作であると、外部機器ログ再生処理を終了し、ログ再生終了の操作でないと、ステップＧ１３に進む。ステップＧ１３では、操作部２６で行われた操作に対する処理を行った後、ステップＧ１に戻る。ステップＧ１４では、対応する再現用通信部、すなわちターゲット機１０の通信部つまりＬＡＮ通信部１１４、パラレル通信部１１５、シリアル通信部１１６、無線通信部１１７、およびＳＳ−ＬＡＮ通信部１１８のうち、受信した出力ログの入出力部番号によって特定される通信部に対応するサポート機２０の再現用通信部によって、再現用外部デバイスにデータ、すなわち出力ログに含まれる外部デバイスに動作を行わせるためのデータを送信して、ステップＧ１に戻る。
【０１３２】
図３１に示した外部機器ログ再生処理では、出力ログに含まれる外部デバイスに動作を行わせるためのデータを送信して、外部デバイスに動作を行わせ、その動作の結果を表すデータを受信して、動作が正常か否かを判定したが、ユーザが外部デバイスに対して行った操作による動作の場合、たとえばユーザがスキャナ３２に対して行った原稿の読み取り操作よる動作の場合、操作が行われたことを示す入力ログに基づいて、その操作を行うことをユーザに要求する情報を表示し、ユーザに操作を行わせることによって、再現用外部デバイスに動作を行わせる。具体的には、入力ログが人手操作による動作の結果を表すログであると、図３１に示したフローチャートのステップＧ７とステップＧ８との間で、その操作を行うようにユーザに要求する情報を、表示部Ｓ２５に表示して、ユーザに再現用外部デバイスに対する操作を行わせる。ステップＧ８では、その操作による動作の結果を表すデータの受信を待つ。
【０１３３】
さらに、図３１に示した外部機器ログ再生処理は、図２４に示したサポート機２０ａでの処理、つまりリアルタイムでの処理を示したが、リアルタイムが要求されない場合は、図３に示したサポート機２０に処理させてもよい。
【０１３４】
このように、送信手段である再現用入出力部８０によって、外部機器である外部デバイスを動作させるための動作情報が外部機器に対して送信され、受信手段である再現用入出力部８０によって、前記送信手段によって送信した動作情報に対する外部機器の動作を表す履歴情報であるログが受信される。
【０１３５】
そして、制御手段であるログ再生制御部２８によって、前記受信手段によって受信した履歴情報が示す動作の動作情報が、前記外部機器に対応した動作を行う対応外部機器に送信されるので、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができる。したがって、遠隔地での外部機器での動作に伴う障害をリアルタイムで解析して対応することができる。
【０１３６】
さらに、前記履歴情報は、前記外部機器での動作の結果を表す結果情報を含み、第２の受信手段である再現用入出力部８０によって、前記対応外部機器での動作の結果を表す第２の結果情報が受信され、表示手段である表示部Ｓ２５によって、情報が表示される。そして、前記制御手段によって、前記受信手段によって受信した履歴情報に含まれる結果情報と、第２の受信手段によって受信した第２の結果情報とが一致するか否かが判定される。
【０１３７】
前記結果情報と前記第２の結果情報とが一致しない場合、一致しないことを表す情報が表示手段に表示されるので、外部機器での動作が正常であるか否かをリアルタイムで監視することができる。したがって、異常がある場合の対応を迅速に行うことができる。
【０１３８】
さらに、第２の表示手段である表示部Ｓ２５によって、情報が表示され、前記履歴情報は、前記外部機器で行われた操作を表す操作情報を含み、制御手段であるログ再生制御部２８によって、前記受信手段によって受信した履歴情報から操作情報を抽出し、抽出した操作情報が示す操作を、前記対応外部機器に対して操作するように要求する情報を前記第２の表示手段に表示させるので、遠隔地での外部機器での操作による動作に伴う障害をリアルタイムで解析して対応することができる。
【０１３９】
さらに、受信工程である外部機器ログ再生処理のステップＧ１〜ステップＧ５では、外部機器である外部デバイスを動作させるための動作情報を外部機器に送信して外部機器を動作させ、かつ送信した動作情報を表す送信履歴情報である出力ログを含む履歴情報であるログを生成する対象装置であるターゲット機１０から、生成された履歴情報を受信し、制御工程である外部機器ログ再生処理のステップＧ６およびステップＧ１４では、受信工程で対象装置から受信した履歴情報が示す動作情報を、前記外部機器に対応した動作を行う対応外部機器である再現用外部デバイスに送信するので、履歴情報に基づいて外部機器での動作を対応する対応外部機器でリアルタイムで再現することができる。したがって、本発明に係る履歴情報の動作制御方法を用いれば、遠隔地での外部機器での動作に７伴う障害をリアルタイムで解析して対応することができる。
【図面の簡単な説明】
【０１４０】
【図１】本発明の実施の一形態であるサポート機２０を含むログ表示システム１の概略の構成を模式的に示す図である。
【図２】図１に示したターゲット機１０の外観を示す斜視図である。
【図３】図１に示したターゲット機１０の構成の一例を示すブロック図である。
【図４】図３に示した画像データ部１４１が管理する画像管理テーブル５１の一例を示す図である。
【図５】図３に示した入出力部１１または表示制御部１６からログ生成部１２１に通知されるログ指示例５２を示す図である。
【図６】図３に示した文字列変換テーブル部Ｔ１２２に記憶される入出力部名定義テーブル５３である。
【図７】図３に示した文字列変換テーブル部Ｔ１２２に記憶される動作名定義テーブル５４である。
【図８】図３に示した文字列変換テーブル部Ｔ１２２に記憶される動作詳細作成ルールテーブル５５である。
【図９】図３に示したログファイル部Ｔ１５に記憶されたログ例５６を示す図である。
【図１０】図３に示したアプリケーション部１４がログ指示作成のために用いるログ事象変換テーブル５７である。
【図１１】図３に示したアプリケーション部１４からログ生成部１２１に通知するログ指示例５８およびそれに基づくログ例５９を示す図である。
【図１２】図１に示したサポート機２０の構成の一例を示すブロック図である。
【図１３】図１２に示した表示部Ｓ２５に表示される再生画面７０を示す図である。
【図１４】図１２に示したログ再生制御部２８で用いられる検索方法定義テーブル６０を示す図である。
【図１５】図１２に示した画面イメージファイルＤＢ２４に記憶される画面テーブル６１の一例を示す図である。
【図１６】図１３に示した画面表示部７１に表示される再生画面７０の生成手順の一例を模式的に示す図である。
【図１７】図１２に示した画面イメージファイルＤＢ２４に記憶される他の画面テーブル６２の例を示す図である。
【図１８】図１３に示した画面表示部７１に表示される再生画面の生成手順の他の例を模式的に示す図である。
【図１９】図１２に示した文字列変換テーブル部Ｓ２７に記憶される入出力部特定テーブル６３を示す図である。
【図２０】図１２に示した文字列変換テーブル部Ｓ２７に記憶される動作特定テーブル６４を示す図である。
【０１４１】
【図２１】図１２に示した文字列変換テーブル部Ｓ２７に記憶される動作解析テーブル６５を示す図である。
【図２２】図３に示したサポート機２０を含むログ表示システムの他の例であるログ表示システム２の概略の構成を示す図である。
【図２３】本発明の実施の他の形態であるサポート機２０ａを含むログ表示システム３の概略の構成を模式的に示す図である。
【図２４】図２３に示したサポート機２０ａの構成の一例を示すブロック図である。
【図２５】図３に示した入出力部１１の入出力ログ指示作成処理のフローチャートである。
【図２６】図３に示したアプリケーション部１４のログ指示作成処理のフローチャートである。
【図２７】図３に示したログ記録制御部１２のログ監視処理のフローチャートである。
【図２８】図３に示したログ記録制御部１２のログ記録処理のフローチャートである。
【図２９】図３に示したログ生成部１２１のログ生成処理のフローチャートである。
【図３０】図１２に示したログ再生制御部２８の画面表示ログ再生処理のフローチャートである。
【図３１】図２４に示したログ再生制御部２８の外部機器ログ再生処理のフローチャートである。
【符号の説明】
【０１４２】
１〜３  ログ表示システム
１０  ターゲット機
１１  入出力部
１２  ログ記録制御部
１３  システムタイマ部
１４  アプリケーション部
１５  ログファイル部Ｔ
１６  表示制御部
１７  制御部
１８  ログ送信部
２０  サポート機
２１  ログ読取部
２２  バッファ部
２３  ログ解析部
２４  画面イメージファイルＤＢ
２５  表示部Ｓ
２６  操作部
２７  文字列変換テーブル部Ｓ
２８  ログ再生制御部
２９  ログ受信部Ｓ
３０  ＬＡＮ
３１  プリンタ
３２  スキャナ
３３  磁気カードリードライタ
３４  暗証番号入力装置
３５  計量機
３６  釣銭機
３７  油面計
３８  洗車機
４０  ネットワークディスク
４１  ログファイル部Ｎ
４２  ログ受信部Ｎ
５１  画像管理テーブル
５３  入出力部名定義テーブル
５４  動作名定義テーブル
５５  動作詳細作成ルールテーブル
５７  ログ事象変換テーブル
６０  検索方法定義テーブル
６１，６２  画面テーブル
６３  入出力部特定テーブル
６４  動作特定テーブル
６５  動作解析テーブル
７０  再生画面
７１  画像表示部
７２  キー操作表示部
７３  入出力表示部
７４  再生ポインタ
８０  再現用入出力部
８１  再現用プリンタ
８２  再現用スキャナ
８３  再現用磁気カードリードライタ
８４  再現用暗証番号入力装置
８５  再現用計量機
８６  再現用釣銭機
８７  再現用油面計
８８  再現用洗車機
１１１  タッチパネル部
１１２  キー部
１１３  表示部Ｔ
１１４  ＬＡＮ通信部
１１５  パラレル通信部
１１６  シリアル通信部
１１７  無線通信部
１１８  ＳＳ−ＬＡＮ通信部
１２１  ログ生成部
１２２  文字列変換テーブル部Ｔ
１２３  ログ記録部
１２４  ログ設定部
１４１  画像データ部
１４２  アプリケーション制御部
１５１  標準ログファイル
１５２  指定ログファイル
８０１  再現用タッチパネル部
８０２  再現用キー部
８０３  再現用表示部Ｔ
８０４  再現用ＬＡＮ通信部
８０５  再現用パラレル通信部
８０６  再現用シリアル通信部
８０７  再現用無線通信部
８０８  再現用ＳＳ−ＬＡＮ通信部
【図１】
2009098896.tif 000003
【図２】
2009098896.tif 000004
【図３】
2009098896.tif 000005
【図４】
2009098896.tif 000006
【図５】
2009098896.tif 000007
【図６】
2009098896.tif 000008
【図７】
2009098896.tif 000009
【図８】
2009098896.tif 000010
【図９】
2009098896.tif 000011
【図１０】
2009098896.tif 000012
【図１１】
2009098896.tif 000013
【図１２】
2009098896.tif 000014
【図１３】
2009098896.tif 000015
【図１４】
2009098896.tif 000016
【図１５】
2009098896.tif 000017
【図１６】
2009098896.tif 000018
【図１７】
2009098896.tif 000019
【図１８】
2009098896.tif 000020
【図１９】
2009098896.tif 000021
【図２０】
2009098896.tif 000022
【図２１】
2009098896.tif 000023
【図２２】
2009098896.tif 000024
【図２３】
2009098896.tif 000025
【図２４】
2009098896.tif 000026
【図２５】
2009098896.tif 000027
【図２６】
2009098896.tif 000028
【図２７】
2009098896.tif 000029
【図２８】
2009098896.tif 000030
【図２９】
2009098896.tif 000031
【図３０】
2009098896.tif 000032
【図３１】
2009098896.tif 000033