(57)【要約】【課題】ログに書き込まれる情報のうち、エラーの原因の究明に利用可能な情報を効率的に保持する。【解決手段】ホストコンピューター１１は、プリンター１２との間で入出力されるデータの処理に係る情報をログファイル４０に書き込むログ書込部３８と、エラーの発生を検出するエラー検出部３７と、エラー検出部３７によりエラーの発生が検出された場合、エラー発生時におけるログファイル４０と同一性の内容を有する保存用ログファイルを記憶する保存ログ記憶部３９と、を備える。【選択図】図１
2012141808.tif 000002
【特許請求の範囲】
【請求項１】
記録装置を制御する制御装置であって、
少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むログ書込部と、
エラーの発生を検出するエラー検出部と、
前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶する保存ログ記憶部と、を備えることを特徴とする制御装置。
【請求項２】
前記ログ書込部によって前記ログファイルに書き込まれる情報には、前記記録装置へ出力した画像データの処理に係る情報が含まれることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記記録装置による記録に関する各種設定が記述された設定ファイルを参照して、記録装置を制御するものであり、
前記保存ログ記憶部は、
前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における設定ファイルの内容を含むファイルを生成し、前記保存用ログファイルと対応づけて、記憶することを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記保存ログ記憶部は、
前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記制御装置または前記記録装置の仕様に関する情報が記述されたファイルを生成し、生成したファイルを、前記保存用ログファイルと対応づけて、記憶することを特徴とする請求項１ないし３のいずれかに記載の制御装置。
【請求項５】
記録装置を制御する制御装置の制御方法であって、
少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むと共に、
エラーが発生したか否かを検出し、エラーの発生を検出した場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶することを特徴とする制御装置の制御方法。
【請求項６】
記録装置を制御する制御装置を制御する制御部により実行されるプログラムであって、
前記制御部を、
少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むログ書込部と、
エラーの発生を検出するエラー検出部と、
前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶する保存ログ記憶部と、として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置を制御する制御装置、当該制御装置の制御方法、及び、当該制御装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来、プリンタードライバーを実行することにより記録装置を制御する制御装置において、記録装置に出力した印刷データに関する情報をログに書き込む機能を有するものがある（例えば、特許文献１参照）。
上記のようにして記憶されたログは、制御装置や、記録装置に何らかのエラーが発生した際に、当該エラーの原因の究明に利用される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２７８７２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、一般に、ログのデータサイズには、上限が設けられており、ログに書き込むことが可能な情報量には、限りがある。従って、新たな情報を書き込む空き領域がなくなった後は、古い情報から順に新たな情報によって上書きしていくのが一般的である。
しかしながら、上述したように、ログは、エラーの原因の究明に利用されるため、ログに書き込まれた情報のうち、エラーの原因の究明に利用可能な情報はできるだけ上書きされない状態で保持しておきたいとするニーズがある。特に、記憶領域の容量は有限であるため、上記情報を効率的に保持することが求められる。
本発明は、上述した事情に鑑みてなされたものであり、ログに書き込まれる情報のうち、エラーの原因の究明に利用可能な情報を効率的に保持することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、記録装置を制御する制御装置であって、少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むログ書込部と、エラーの発生を検出するエラー検出部と、前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶する保存ログ記憶部と、を備えることを特徴とする。
ここで、一般に、ログファイルのデータサイズの上限は決まっており、ログファイルのデータサイズが上限に達した後は、古い情報から順に新しい情報によって上書きされ、これにより、データサイズが上限を超えることが防止される。そして、記録装置との間で入出力されたデータの内容は、エラーの原因究明に有益な情報となり得るため、逐一ログファイルに書き込まれることが望まれるものの、記録装置と制御装置との間では、大量のデータのやり取りが行われるため、入出力データの処理に係る情報をログファイルに書き込んだ場合、古い情報が上書きされるペースの上昇を招き、エラーの原因究明に必要な情報が上書きされてしまうリスクが上がる。
これを踏まえ、上記構成によれば、エラー検出部によりエラーの発生が検出された場合、エラー発生時におけるログファイルの内容を含む保存用ログファイルを記憶するため、入出力データの処理に係る情報をログファイルに書き込むことを可能とした上で、保存用ログファイルにより、エラーの原因究明に利用可能な情報を、上書きされることなく保持できる。特に、エラーの発生が検出されたことをトリガーとして、保存用ログファイルを記憶する構成のため、例えば、周期的に保存用の別のファイルを記憶する場合と比較して、不必要にファイルが生成されてしまうことを防止でき、必要な情報を効率的に保持可能である。保存用ログファイルは、ログファイルと同一性を有するものも含む。
なお、記録装置へ出力したデータの処理に係る情報、また、前記記録装置から入力されたデータの処理に係る情報には、記録装置の記録ヘッドやカッターなどのメカニズムの動作回数や、不揮発性メモリーの書き込みなどの素子の動作回数を示すものも含まれる。これらは、記録装置側でカウントしたものを、制御装置側で取得するようにしてもよい。
【０００６】
また、上記発明の制御装置であって、本発明は、前記ログ書込部によって前記ログファイルに書き込まれる情報には、前記記録装置へ出力した画像データの処理に係る情報が含まれることを特徴とする。
ここで、制御装置から記録装置に出力される画像データに起因して、記録装置にエラーが発生することがあり、また、画像データの内容が、発生したエラーの原因究明に有益な情報となることがある。しかしながら、画像データは、非常にデータサイズが大きな情報であり、画像データをログファイルに書き込む構成とした場合、ログファイルにおいて、古い情報が上書きされるペースが上昇するというデメリットがある。
これを踏まえ、上記構成によれば、エラー検出部によりエラーの発生が検出された場合、ログファイルを、保存用ログファイルとして別に記憶するため、画像データを含む入出力データの処理に係る情報をログファイルに書き込むことを可能とした上で、保存用ログファイルにより、エラーの原因究明に利用可能な情報である画像データの処理に係る情報を、上書きされることなく保持できる。
【０００７】
また、上記発明の制御装置であって、本発明は、前記記録装置による記録に関する各種設定が記述された設定ファイルを参照して、記録装置を制御するものであり、前記保存ログ記憶部は、前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における設定ファイルの内容を含むファイルを生成し、前記保存用ログファイルと対応づけて、記憶することを特徴とする。
ここで、何らかのエラーが発生した場合、当該エラーの発生時における設定ファイルの内容が当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時における設定ファイルの内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときの制御装置の状態を再現する場合があるが、エラーの発生時における設定ファイルの内容は、当該再現に必要な情報である。
これを踏まえ、上記構成によれば、エラーの発生時における設定ファイルの内容と同一性を有する内容または同一性を有する内容を含むファイルを、保存用ログファイルと対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時における設定ファイルの内容を保持可能となる。
【０００８】
また、上記発明の制御装置であって、本発明は、前記保存ログ記憶部は、前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記制御装置または前記記録装置の仕様に関する情報（スペック情報）が記述されたファイルを生成し、生成したファイルを、前記保存用ログファイルと対応づけて、記憶することを特徴とする。
ここで、何らかのエラーが発生した場合、制御装置または記録装置の仕様に関する情報が、当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時におけるスペックの内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときの制御装置の状態を再現する場合があるが、エラーの発生時におけるスペック情報の内容は、当該再現に必要な情報である。
そして、エラーの発生時におけるスペック情報が記述されたファイルを、保存用ログファイルと対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時におけるスペックの内容を保持可能となる。
【０００９】
また、上記目的を達成するために、本発明は、記録装置を制御する制御装置の制御方法であって、少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むと共に、エラーが発生したか否かを検出し、エラーの発生を検出した場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶することを特徴とする。
この制御方法によれば、エラーの発生が検出された場合、エラー発生時におけるログファイルの内容を含む保存用ログファイルを記憶するため、入出力データの処理に係る情報をログファイルに書き込むことを可能とした上で、保存用ログファイルにより、エラーの原因究明に利用可能な情報を、上書きされることなく保持できる。特に、エラーの発生が検出されたことをトリガーとして、保存用ログファイルを記憶する構成のため、例えば、周期的に保存用の別のファイルを記憶する場合と比較して、不必要にファイルが生成されてしまうことを防止でき、必要な情報を効率的に保持可能である。
【００１０】
また、上記目的を達成するために、本発明は、記録装置を制御する制御装置を制御する制御部により実行されるプログラムであって、前記制御部を、少なくとも前記記録装置へ出力し、また、前記記録装置から入力されたデータの処理に係る情報をログファイルに書き込むログ書込部と、エラーの発生を検出するエラー検出部と、前記エラー検出部によりエラーの発生が検出された場合、当該エラー発生時における前記ログファイルの内容を含む保存用ログファイルを生成し、記憶する保存ログ記憶部と、として機能させることを特徴とする。
このプログラムを実行すれば、エラー検出部によりエラーの発生が検出された場合、エラー発生時におけるログファイルの内容を含む保存用ログファイルを記憶するため、入出力データの処理に係る情報をログファイルに書き込むことを可能とした上で、保存用ログファイルにより、エラーの原因究明に利用可能な情報を、上書きされることなく保持できる。特に、エラーの発生が検出されたことをトリガーとして、保存用ログファイルを記憶する構成のため、例えば、周期的に保存用の別のファイルを記憶する場合と比較して、不必要にファイルが生成されてしまうことを防止でき、必要な情報を効率的に保持可能である。
【発明の効果】
【００１１】
本発明によれば、ログに書き込まれる情報のうち、エラーの原因の究明に利用可能な情報を効率的に記憶することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】記録システムの構成を示すブロック図である。
【図２】ホストコンピューターの動作を示すフローチャートである。
【図３】記憶部における各フォルダーの状態を模式的に示す図である。
【図４】各フォルダーに係るウインドウを模式的に示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明を適用した実施形態に係る記録システム１の構成を示すブロック図である。
この図１に示すように、記録システム１は、ホストコンピューター１１（制御装置）と、ホストコンピューター１１に対して通信可能に接続されたプリンター１２（記録装置）とを、を備えている。
ホストコンピューター１１は、例えば、小売店等の店頭に設置され、売上登録処理及び精算処理を行う販売時点管理システム（ＰＯＳシステム）を搭載したＰＯＳ端末装置であり、取引毎にプリンター１２によってレシートを発行する。レシートを発行するとは、取引における商品の購入に関する情報や、店舗のロゴ等を含む所定の画像が感熱ロール紙に記録された上で、感熱ロール紙が切断されて１つの紙片であるレシートが形成されることをいう。
【００１４】
図１に示すように、ホストコンピューター１１は、制御部１３と、入力部１４と、表示部１５と、インターフェイス部１６と、記憶部１７と、を備えている。
制御部１３は、ホストコンピューター１１を中枢的に制御するものであり、各種プログラムを実行するＣＰＵ、ＣＰＵにより実行される基本制御プログラム等を記憶するＲＯＭ、ＣＰＵが実行するプログラムや処理対象のデータ等を一時的に記憶するワークエリアを形成するＲＡＭ、その他周辺回路等を備えている。制御部１３は、ＰＯＳアプリケーション実行部２０と、プリンタードライバー実行部２１と、を備えているが、これらについては、後述する。
入力部１４は、オペレーターに操作される売上登録キー等の各種キーを備えたキーボードや、マウス、バーコードスキャナー、カードリーダー等の入力デバイスが接続され、入力デバイスに対する操作を検出し、操作信号として制御部１３に出力する。
表示部１５は、液晶ディスプレイ等の表示パネル１５ａを備え、制御部１３の制御の下、売上登録処理及び精算処理の処理内容等の各種情報を表示パネル１５ａに表示する。
インターフェイス部１６は、制御部１３の制御の下、プリンター１２との間で通信規格に準拠した通信を行う。
記憶部１７は、ハードディスクや、フラッシュメモリー等の不揮発性メモリーを備え、各種データを書き換え可能に記憶する。記憶部１７に記憶される各データについては、後述する。
【００１５】
また、プリンター１２（記録装置）は、ホストコンピューター１１の制御に従って、ロール状に巻かれた感熱ロール紙（記録媒体）を、搬送機構（不図示）により搬送しつつ、この感熱ロール紙の記録面にラインサーマルヘッド（不図示）によって熱を与えることにより文字や画像を記録し、切断機構（不図示）により所定の位置で感熱ロール紙を切断することによってレシートを発行するサーマルラインプリンターである。
図１に示すように、プリンター１２は、プリンター側制御部３０と、インターフェイス部３１と、プリントエンジン３２と、を備えている。
プリンター側制御部３０は、プリンター１２の各部を中枢的に制御するものであり、上述した制御部１３と同様、ＣＰＵや、ＲＯＭ、ＲＡＭその他の周辺回路を備えている。
インターフェイス部３１は、プリンター側制御部３０の制御の下、ホストコンピューター１１との間で、通信規格に準拠した通信を行う。
プリントエンジン３２は、プリンター側制御部３０の制御の下、用紙端センサーや用紙残量センサー等の各種センサーの検出値を監視しながら、上述したラインサーマルヘッドのほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、上述した切断機構が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。
【００１６】
次いで、ＰＯＳアプリケーション実行部２０、及び、プリンタードライバー実行部２１の説明を通して、１つのレシートを発行する際の記録システム１の基本的な動作について説明する。
ＰＯＳアプリケーション実行部２０は、ホストコンピューター１１に予めインストールされたＰＯＳアプリケーションを実行することにより、取引毎に、例えば所定のサーバーにアクセスする等して、取引において購入された商品を示す情報や、商品の単価を示す情報、購入金額を示す情報等のレシートに記載すべき情報を取得し、取得した情報に基づいてレシートに記録すべき画像に係る印刷データを生成し、プリンタードライバー実行部２１に出力する。
プリンタードライバー実行部２１は、ホストコンピューター１１に予めインストールされたプリンタードライバーを実行することにより、ＰＯＳアプリケーション実行部２０から入力された印刷データに基づいて、設定ファイル３５を参照した上で、プリンター１２のコマンド仕様に対応した制御コマンドを生成し、プリンター１２に出力する。この制御コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、ラインサーマルヘッドを駆動させて画像を記録させるコマンド、また、感熱ロール紙に記録すべき画像の画像データ、切断機構に感熱ロール紙を切断させるコマンド等が含まれている。
設定ファイル３５とは、レシートの発行、特に、感熱ロール紙に対する画像の記録に関する設定上の条件が記述されたファイルのことであり、ファイルとしての形態を保ったデータのみならず、記憶部１７にレジストリーとして形成された記憶領域に記憶された情報であってもよい。設定ファイル３５には、例えば、印刷速度や、感熱ロール紙の文字を記録する際のフォント種類や、画像を記録する際の各種態様（例えば、画像を所定の角度だけ回転させた上で記録させる等）等を示す情報が記述されている。
制御コマンドが入力されたプリンター側制御部３０は、制御コマンドに従って、プリントエンジン３２を制御して、レシートの発行に係る各種動作を実行する。
【００１７】
次いで、プリンタードライバー実行部２１が備えるエラー検出部３７について説明する。
このエラー検出部３７の機能は、プリンタードライバーに含まれるプログラムをＣＰＵが実行する等、ハードウェアとソフトウェアとの協働により実現される。
エラー検出部３７は、プリンタードライバー実行部２１の動作を監視し、監視結果に基づいて、ホストコンピューター１１，プリンター１２に何らかのエラーが発生している可能性があることを検出する。例えば、エラー検出部３７は、プリンタードライバー実行部２１によって所定の処理が行われる場合、当該所定の処理に要する時間が、予め設定された閾値を超えるか否かを監視することにより、プリンタードライバー実行部２１の処理に何らかの処理エラーが発生したことを検出する。
【００１８】
また、エラー検出部３７は、プリンタードライバー実行部２１に入出力されるデータを監視し、監視結果に基づいて、プリンタードライバー実行部２１及びプリンター側制御部３０のいずれかにエラーが発生した可能性があることを検出する。
例えば、エラー検出部３７は、プリンタードライバー実行部２１が、プリンター側制御部３０に対して、応答を要求するコマンドを出力した場合、当該コマンドが出力された時刻と、当該コマンドに対する応答が入力された時刻とを監視し、想定された時間以内に応答が入力されなかった場合に、何らかのエラーが発生したことを検出する。応答を要求するコマンドに対して、時間内に応答が入力されない場合としては、プリンター１２において、受信したコマンドを一時的に格納するバッファーがバッファーフルとなり、当該応答を要求するコマンドが読み捨てられたり、また、プリンター１２がオフラインモードへ移行し、コマンドに対する応答に係る処理が実行されなかったりする場合がある。また、ホストコンピューター１１とプリンター１２との間における通信が、物理的、又は、ソフトウェア的に遮断された場合がある。
また、プリンター側制御部３０は、プリンター１２に紙詰まり等のエラーが発生した場合に、その旨の通知をプリンタードライバー実行部２１に出力する構成となっており、エラー検出部３７は、プリンター側制御部３０から入力されたデータを解析し、プリンター１２にエラーが発生していることを検出する。
【００１９】
次いで、プリンタードライバー実行部２１が備えるログ書込部３８について説明する。
このログ書込部３８の機能は、プリンタードライバーに含まれるプログラムをＣＰＵが実行する等、ハードウェアとソフトウェアとの協働により実現される。
ログ書込部３８は、ログファイル４０に、適宜、所定の情報を書き込む。ログファイル４０とは、プリンタードライバー実行部２１の動作に係る各種情報が時系列で書き込まれたテキストファイルである。
ログ書込部３８がログファイル４０に書き込む情報について、具体例を挙げて詳述すると、ログ書込部３８は、プリンタードライバー実行部２１が予め定められた所定の処理を実行した場合、当該所定の処理の内容を示す情報と、当該所定の処理を実行した日時を示す情報とを対応づけてログファイル４０に書き込む。予め定められた所定の処理としては、例えば、ＰＯＳアプリケーション実行部２０から印刷データが入力された際に印刷データに基づいて行われるレシートの発行に係る一連の処理や、また例えば、表示部１５を制御して、表示パネル１５ａに所定の警告を表示する処理等がある。
また、ログ書込部３８は、上記エラー検出部３７によりエラーが発生したこと、又は、エラーが発生した可能性があることを検出した場合、エラーの内容を示す情報と、エラーが発生した日時を示す情報とを対応づけてログファイル４０に書き込む。
【００２０】
さらに、本実施形態では、ログ書込部３８は、プリンタードライバー実行部２１と、プリンター側制御部３０との間でやり取りされたデータについて、全てのデータを、入出力された時刻と対応づけてログファイル４０に書き込む。
例えば、上述したように、レシートの発行に際し、プリンタードライバー実行部２１からプリンター側制御部３０に対して、制御コマンドが出力されるが、この制御コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、ラインサーマルヘッドを駆動させて画像を記録させるコマンド、また、感熱ロール紙に記録すべき画像の画像データ、切断機構に感熱ロール紙を切断させるコマンド等が含まれている。そして、ログ書込部３８は、プリンタードライバー実行部２１からプリンター側制御部３０に対して制御コマンドが出力された場合、制御コマンドに含まれる全てのコマンドについて、各コマンドが出力された日時と共にコマンドの内容を示す情報を、ログファイル４０に書き込む。その際、所定のコマンドに付随して、画像データが出力された場合は、ログ書込部３８は、当該画像データをそのまま情報としてログファイル４０に書き込む。
本実施形態では、画像データは、ビットマップデータである。このビットマップデータは、ドットマトリクス状に配列されたドットのそれぞれについて、ドットの色を示す情報を保持したデータである。従って、ログファイル４０に書き込まれる画像データを示す情報のデータサイズは、大きい。
【００２１】
このように、本実施形態では、ログ書込部３８は、プリンタードライバー実行部２１と、プリンター側制御部３０との間でやり取りされたデータについて、全てのデータを、入出力された時刻と対応づけてログファイル４０に書き込む。これは、以下の理由による。
すなわち、ログファイル４０は、エラーが発生した場合に、エラーの原因究明や、エラーが発生したときの状況を再現する際に利用される。そして、プリンタードライバー実行部２１から出力されたコマンドがエラーの原因となることや、また、プリンタードライバー実行部２１の応答要求に対するプリンター側制御部３０の応答の内容がエラーの原因究明に供する有益な情報となることも多い。従って、プリンタードライバー実行部２１に入出力されたデータの全てについて、ログファイル４０に書き込むことにより、ログファイル４０をエラーの原因究明等にとって非常に有益な情報が記録されたファイルとすることができる。
特に、プリンタードライバー実行部２１からプリンター側制御部３０に出力された画像データの形態が、プリンター側制御部３０による処理可能な形態となっていなかったり、また、なんらかの原因で、画像データが、データとしての整合性がとれていない状態となっていたりすることによって、プリンター１２による画像の記録が正常に実行されず、これに起因してプリンター１２にエラーが発生する場合もある。この場合、プリンター側制御部３０から出力された画像データは、エラーの原因に非常に有益な情報となる。これを踏まえ、本実施形態では、画像データのデータサイズにかかわらず、ログ書込部３８は、プリンター側制御部３０から出力された画像データの内容をログファイル４０に書き込む。
【００２２】
ところで、ログファイル４０は、上述した所定のタイミングで、随時、情報が書き込まれ、そのデータサイズが拡大していくものであるため、ログファイル４０が記憶される記憶領域の容量が、記憶部１７の記憶媒体の容量を圧迫するのを防止すべく、そのデータサイズの上限が予め定められている。ログ書込部３８は、データサイズが上限に達した場合には、古い情報から、順次、上書きしていき、データサイズが上限を上回らないようにしている。
ここで、本実施形態では、上述したように、ログ書込部３８は、ログファイル４０に書き込まれる情報の有用性を担保すべく、プリンタードライバー実行部２１と、プリンター側制御部３０との間でやり取りされたデータ（画像データを含む）について、全てのデータを、入出力された時刻と対応づけてログファイル４０に書き込むが、この点において従来のプリンタードライバー実行部２１の処理と異なっている。従って、従来と比較して、プリンタードライバー実行部２１が同一の処理を行った場合にログファイル４０に書き込まれる情報の大きさ（データサイズ）は、非常に大きい。これに伴い、本実施形態では、ログファイル４０の古い情報が上書きされていくペースが、従来と比較して、速い。
上述したように、ログファイル４０は、発生したエラーの原因究明に利用される。ここで、あるエラーが発生した場合、当該エラーが発生した原因は、エラーが発生する直前の動作、処理だけではなく、時間的に相当遡ったときに行われた動作、処理にある場合がある。この場合を想定して、ログファイル４０に書き込まれた情報がエラーの原因究明に有益な情報であるためには、エラーが発生した時点を起点として、できるだけ遡って多くの情報が保持されていることが求められる。
以上を踏まえ、本実施形態に係るホストコンピューター１１は以下の動作を実行し、ログファイル４０に書き込まれる情報のデータサイズが非常に大きく、これに伴ってログファイル４０の古い情報が上書きされていくペースが速いことを考慮し、エラーの原因究明等に有益な情報を効率よく保持する構成となっている。
【００２３】
図２は、ホストコンピューター１１の動作、特に、エラー検出部３７によりエラーが検出された場合におけるホストコンピューター１１の動作を示すフローチャートである。
図２に示すように、ホストコンピューター１１の制御部１３のプリンタードライバー実行部２１は、エラー検出部３７によって、エラーが発生したこと、又は、エラーが発生した可能性があることが検出されたか否かを監視する（ステップＳＡ１）。なお、上述したように、エラー検出部３７によりエラーが発生したことが検出された場合、ログ書込部３８は、エラーの内容を示す情報と、エラーが発生した日時を示す情報とを対応づけてログファイル４０に書き込む。
【００２４】
エラー検出部３７によりエラーの発生が検出された場合（ステップＳＡ１：ＹＥＳ）、プリンタードライバー実行部２１は、記憶部１７に予め生成されている管理フォルダー４５内で、新たに保存用フォルダー４６を生成する（ステップＳＡ２）。これら管理フォルダー４５、保存用フォルダー４６は、ファイルを階層構造によって管理するコンピューター上で、各ファイルを分類、整理するための、いわゆるフォルダーである。管理フォルダー４５には、複数の保存用フォルダー４６が格納され、各保存用フォルダー４６には、後述する保存用ログファイル４７、保存用設定ファイル４８、及び、保存用スペック情報ファイル４９が格納される。
管理フォルダー４５は、例えば、表示部１５の表示パネル１５ａに表示されたデスクトップ上に所定のアイコンとして表示され、また、保存用フォルダー４６は、管理フォルダー４５を開くことにより表示パネル１５ａ上に展開される所定のウインドウ内で、所定のアイコンとして表示される。
なお、管理フォルダー４５に保存用フォルダー４６を格納するとは、階層構造によってデータを管理するホストコンピューター１１のデータ管理システムにおいて、管理フォルダー４５によって当該管理フォルダー４５の１つ下の階層に位置する保存用フォルダー４６をまとめて管理することであり、また、保存用フォルダー４６にファイルを格納するとは、保存用フォルダー４６によって当該保存用フォルダー４６の１つ下の階層に位置するファイルをまとめて管理することであるが、説明の便宜上、「格納」という表現を使用する。
【００２５】
次いで、プリンタードライバー実行部２１は、ステップＳＡ２において生成した保存用フォルダー４６に対して、以下の規則に準じて名称を付与する（ステップＳＡ３）。
すなわち、プリンタードライバー実行部２１は、ステップＳＡ２において保存用フォルダー４６を生成した日時と、ステップＳＡ１においてエラー検出部３７により検出されたエラーの名称と、を組み合わせることによって保存用フォルダー４６の名称を決める。例えば、保存用フォルダー４６を生成した日時が２０１０年１月１日１２時１０分３０秒であり、検出されたエラーの名称が「応答タイムアウトエラー」であるとすると、プリンタードライバー実行部２１は、「2010/1/1/12:10:30／応答タイムアウトエラー」といった名称を決める。
プリンタードライバー実行部２１によって付与された名称は、例えば、保存用フォルダー４６がアイコンとして表示パネル１５ａに表示された際に、フォルダーの名称として当該アイコンの近傍に表示される。
ここで、フォルダーの名称は、フォルダーの識別子としての役割を果たすため、一意な値である必要があるが、フォルダーの名称に、生成した日時を含めることにより、生成したフォルダーの一意性が担保される。また、生成した日時、及び、エラーの名称の組み合わせをフォルダーの名称とすることにより、ユーザーは、フォルダーの名称に基づいて、後述する各ファイルが入っているフォルダーがどれであるかを容易に把握できる。
エラーは、プリンター１２のプリントエンジン３２やプリンター制御部３０で発生したものも含まれ、その場合、プリンター１２で記憶されたプリントエンジン３２の記録ヘッドやカッターなどの動作回数やプリンター制御部３０の不揮発性メモリーの書き込み回数などを取得する。この場合、プリンタードライバー実行部２１が、プリンター１２へ送って動作させたコマンドの数をカウントしたものでもよい。
【００２６】
次いで、プリンタードライバー実行部２１の保存ログ記憶部３９は、保存用ログファイル４７（図３）を生成し、生成した保存用ログファイル４７をステップＳＡ２で生成した保存用フォルダー４６に格納する（ステップＳＡ４）。この保存ログ記憶部３９の機能は、プリンタードライバーに含まれるプログラムをＣＰＵが実行する等、ハードウェアとソフトウェアとの協働により実現される。
保存用ログファイル４７とは、エラー発生時におけるログファイル４０をコピーして生成されたファイルである。なお、保存用ログファイル４７は、その内容が、エラー発生時におけるログファイル４０の内容と同一性を有していればよく、コピー以外の手段によっても生成可能である。
ここで、ステップＳＡ４で生成された保存用ログファイル４７は、ステップＳＡ１でエラーが検出された直後のログファイル４０に基づいて生成されたファイルであるが、当該ログファイル４０は、当該エラーが検出された時点を起点として、時間的に遡った情報が最も多く記述された状態となっている。なぜなら、上述したように、ログファイル４０のデータサイズには上限があり、古い情報から順に新しい情報によって上書きされていくため、エラーが検出された時点におけるログファイル４０は、エラー発生後の情報によって、エラー発生前の情報が最も上書きされていない状態であるからである。
そして、上述したように、当該エラーが発生した原因は、エラーが発生する直前の動作、処理だけではなく、時間的に相当遡ったときに行われた動作、処理にある場合があり、エラーが発生した時点から時間的に遡った情報が存在すればするほど、存在しない場合と比較して、エラーの原因究明等に有益なログファイル４０である。このため、ステップＳＡ４で生成された保存用ログファイル４７は、ログファイル４０のデータサイズに上限があることを踏まえて、ステップＳＡ１で検出されたエラーの原因究明に有益な情報を最も効率よく記述したデータである。
特に、本実施形態では、ログファイル４０において、古い情報が上書きされるペースが、従来と比較して格段に速いため、エラーが発生した後に、比較的短い時間しか経過してない場合であっても、古い情報に対する上書きが多く行われているといった事態が発生し得るため、エラーの発生が検出されたことをトリガーとして、保存用ログファイル４７を生成することにより、保存用ログファイル４７を、エラーの原因究明に利用可能な情報が最大限記述された、非常に有益なファイルとすることができる。
【００２７】
次いで、プリンタードライバー実行部２１の保存ログ記憶部３９は、保存用設定ファイル４８（図３）を生成し、生成した保存用設定ファイル４８をステップＳＡ２で生成した保存用フォルダー４６に格納する（ステップＳＡ５）。
保存用設定ファイル４８とは、エラーが検出された時点における設定ファイル３５の内容と同一性を有する内容または同一性を有する内容を含むファイルのことであり、例えば、設定ファイル３５がファイルとしての形態を有するデータの場合は、当該ファイルがコピーされて生成される。
このように、本実施形態では、エラーの発生が検出された場合、保存用設定ファイル４８が、上述した保存用ログファイル４７と共に、同一の保存用フォルダー４６に格納される。
ここで、何らかのエラーが発生した場合、当該エラーの発生時における設定ファイル３５の内容が当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時における設定ファイル３５の内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときのホストコンピューター１１の状態を再現する場合があるが、エラーの発生時における設定ファイル３５の内容は、当該再現に必要な情報である。そして、エラーの発生時における設定ファイル３５の内容と同一性を有する内容または同一性を有する内容を含む保存用設定ファイル４８を、保存用ログファイル４７と対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時における設定ファイル３５の内容を保持可能となる。
特に、保存用設定ファイル４８は、エラーの発生が検出される度に生成され、かつ、発生したエラーごとに保存用フォルダー４６によって個別に管理される。このため、１のエラーについて、当該１のエラーに対応する保存用設定ファイル４８を容易に特定可能である。
【００２８】
次いで、プリンタードライバー実行部２１の保存ログ記憶部３９は、保存用スペック情報ファイル４９（図３）を生成し、生成した保存用スペック情報ファイル４９をステップＳＡ２で生成した保存用フォルダー４６に格納する（ステップＳＡ６）。
保存用スペック情報ファイル４９とは、ホストコンピューター１１のハードウェア的、ソフトウェア的な環境状態を示す各種情報が記述されたファイルのことである。ホストコンピューター１１の環境状態を示す情報としては、例えば、ＣＰＵの性能や、各種メモリーの容量、ＯＳの種類やバージョン、プリンタードライバーの種類やバージョン等がある。以下、これらの情報のことを総称して「スペック情報」という。
スペック情報は、所定のファイル（単一のファイルであっても、複数のファイルであってもよい）に記述されており、プリンタードライバー実行部２１は、当該所定のファイルを参照して各スペック情報を取得し、取得したスペック情報に基づいて、所定の規則に準拠してスペック情報が書き込まれた保存用スペック情報ファイル４９を生成する。
【００２９】
ここで、何らかのエラーが発生した場合、ホストコンピューター１１のハードウェア的、ソフトウェア的なスペックが、当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時におけるスペック情報の内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときのホストコンピューター１１の状態を再現する場合があるが、エラーの発生時におけるスペック情報の内容は、当該再現に必要な情報である。
そして、エラーの発生時におけるスペック情報が記述された保存用スペック情報ファイル４９を、保存用ログファイル４７と対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時におけるスペック情報の内容を保持可能となる。
特に、保存用スペック情報ファイル４９は、エラーの発生が検出される度に生成され、かつ、発生したエラーごとに保存用フォルダー４６によって個別に管理される。このため、１のエラーについて、当該１のエラーに対応する保存用スペック情報ファイル４９を容易に特定可能である。
また、プリンター１２のスペック情報に起因する場合もあるので、これらも記憶することが好ましい。
【００３０】
図３は、記憶部１７における管理フォルダー４５、保存用フォルダー４６、及び、保存用フォルダー４６に格納された各ファイルの状態を模式的に示す図である。
このように、記憶部１７では、管理フォルダー４５内に、発生したことが検出されたエラーごとに、保存用フォルダー４６が生成されると共に、保存用フォルダー４６内には、保存用ログファイル４７と、保存用設定ファイル４８と、保存用スペック情報ファイル４９と、が格納され、対応づけて記憶される。
このように、本実施形態では、発生したエラーごとに、保存用ログファイル４７と、保存用設定ファイル４８と、保存用スペック情報ファイル４９の３つのファイルが対応づけて記憶される。そして、これら３つのファイルは、それぞれ、異なる観点からエラー発生の原因究明を可能とする情報が記述されたファイルであるため、これら３つのファイルが対応づけて記憶されることにより、多面的な原因究明が可能となり、利便性が高い。
特に、保存用ログファイル４７は、対応するエラーの発生の原因究明に有益な情報が最も記述されている状態のログファイル４０と内容の同一性を有したファイルであり、このようなファイルがエラーごとに、エラーと対応した保存用フォルダー４６に格納されているため、原因究明を精度よく実行することが可能である。
【００３１】
図４は、管理フォルダー４５、及び、保存用フォルダー４６に関する表示の一例を模式的に示す図である。図４（Ａ）は、管理フォルダー４５を開くことによって展開される管理フォルダーウインドウ５１の一例を模式的に示し、図４（Ｂ）は、保存用フォルダー４６を開くことによって展開される保存用フォルダーウインドウ５２の一例を模式的に示している。
図４（Ａ）に示すように、管理フォルダーウインドウ５１において、管理フォルダー４５に格納された保存用フォルダー４６のアイコンである保存用フォルダーアイコン５４が一覧表示される。そして、保存用フォルダーアイコン５４のそれぞれの近傍には、対応するフォルダーの名称が表示される。上述したように、フォルダーの名称は、エラーの発生が検出されたときの日付、及び、発生したエラーの名称との組み合わせとなっており、管理フォルダーウインドウ５１において、所望のエラーに対応する保存用フォルダー４６を容易に検索可能となっている。
また、図４（Ｂ）に示すように、１の保存用フォルダー４６を開くことによって展開された保存用フォルダーウインドウ５２には、保存用ログファイル４７、保存用設定ファイル４８、及び、保存用スペック情報ファイル４９の３つのファイルのそれぞれを示すアイコンが選択可能な状態で表示される。このような表示態様であるため、ユーザーは、これら３つのファイルのそれぞれが、共通のエラーに対応したファイルであるという認識を持った上で、これらファイルの任意のファイルを開くことが可能となり、ユーザーの利便性が向上する。特に、保存用ログファイル４７、保存用設定ファイル４８、及び、保存用スペック情報ファイル４９の３つのファイルは、それぞれ、異なる観点からエラー発生の原因究明を可能とする情報が記述されたファイルであるが、これらが互いに関連づけて記憶され、かつ、関連したファイルであることを認識しつつ利用可能であるため、エラー発生の原因究明を効率的に行うことができる。
【００３２】
以上説明したように、本実施形態に係るホストコンピューター１１は、少なくともプリンター１２へ出力し、また、プリンター１２から入力されたデータの処理に係る情報をログファイル４０に書き込むログ書込部３８と、エラーの発生を検出するエラー検出部３７と、エラー検出部３７によりエラーの発生が検出された場合、ログファイル４０の内容を含む保存用ログファイル４７を記憶する保存ログ記憶部３９と、を備えている。
これによれば、エラー検出部３７によりエラーの発生が検出された場合、エラーの発生時におけるログファイル４０の内容を含む保存用ログファイル４７を、ログファイル４０とは別に記憶するため、入出力データの処理に係る情報をログファイル４０に書き込むことを可能とした上で、保存用ログファイル４７により、エラーの原因究明に利用可能な情報を、上書きされることなく保持できる。特に、エラーの発生が検出されたことをトリガーとして、保存用ログファイル４７を記憶する構成のため、例えば、周期的に保存用の別のファイルを記憶する場合と比較して、不必要に保存用の別のファイルが生成されてしまうことを防止でき、必要な情報を効率的に保持可能である。
【００３３】
また、本実施形態では、ログ書込部３８によってログファイル４０に書き込まれる情報には、プリンター１２へ出力した画像データの処理に係る情報が含まれる。
これによれば、保存用ログファイル４７により、エラーの原因究明に利用可能な情報である画像データの処理に係る情報を、上書きされることなく保持できる。
【００３４】
また、本実施形態では、保存ログ記憶部３９は、エラー検出部３７によりエラーの発生が検出された場合、エラー発生時における設定ファイル３５の内容を含む保存用設定ファイル４８を、保存用ログファイル４７と対応づけて、記憶する。
ここで、何らかのエラーが発生した場合、当該エラーの発生時における設定ファイル３５の内容が当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時における設定ファイル３５の内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときのホストコンピューター１１の状態を再現する場合があるが、エラーの発生時における設定ファイル３５の内容は、当該再現に必要な情報である。そして、エラーの発生時における設定ファイル３５の内容と同一性を有する内容または同一性を有する内容を含む保存用設定ファイル４８を、保存用ログファイル４７と対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時における設定ファイル３５の内容を保持可能となる。
特に、保存用設定ファイル４８は、エラーの発生が検出される度に生成され、かつ、発生したエラーごとに保存用フォルダー４６によって個別に管理される。このため、１のエラーについて、当該１のエラーに対応する保存用設定ファイル４８を容易に特定可能である。
【００３５】
また、本実施形態では、保存ログ記憶部３９は、エラー検出部３７によりエラーの発生が検出された場合、保存用スペック情報ファイル４９を生成し、生成したファイルを、保存用ログファイル４７と対応づけて、記憶する。
ここで、何らかのエラーが発生した場合、ホストコンピューター１１のハードウェア的、ソフトウェア的なスペックが、当該エラーの発生の原因に何らかの影響を与えている場合があり、また、当該エラーの発生時におけるスペック情報の内容が、当該エラーの原因究明に非常に有益な情報となることがある。さらに、エラーの発生の原因究明にあたり、エラーが起きたときのホストコンピューター１１の状態を再現する場合があるが、エラーの発生時におけるスペック情報の内容は、当該再現に必要な情報である。
そして、エラーの発生時におけるスペック情報が記述された保存用スペック情報ファイル４９を、保存用ログファイル４７と対応づけて記憶することにより、発生したエラーと対応づけて、適切に、各エラーの発生時におけるスペック情報の内容を保持可能となる。
特に、保存用スペック情報ファイル４９は、エラーの発生が検出される度に生成され、かつ、発生したエラーごとに保存用フォルダー４６によって個別に管理される。このため、１のエラーについて、当該１のエラーに対応する保存用スペック情報ファイル４９を容易に特定可能である。
【００３６】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、プリンター１２は、サーマルプリンターであったが、プリンターの形式はこれに限らず、例えば、インクジェットプリンターや、ドットインパクトプリンターであってもよい。すなわち、制御する記録装置にかかわらず、記録装置を制御する制御装置に広く本発明を適用可能である。
また、上述した実施形態では、ログ書込部３８、エラー検出部３７、及び、保存ログ記憶部３９の各機能は、プリンタードライバーにより実現される構成であったが、プリンタードライバー以外の専用のプログラムによってこれらの機能が実現される構成であってもよい。
【符号の説明】
【００３７】
１…記録システム、１１…ホストコンピューター（制御装置）、１２…プリンター（記録装置）、１３…制御部、２０…ＰＯＳアプリケーション実行部、２１…プリンタードライバー実行部、３５…設定ファイル、３７…エラー検出部、３８…ログ書込部、３９…保存ログ記憶部、４０…ログファイル。
【図１】
2012141808.tif 000003
【図２】
2012141808.tif 000004
【図３】
2012141808.tif 000005
【図４】
2012141808.tif 000006