(57)【要約】【課題】エラー発生時の画像形成装置のログと外部コントローラのログとを確実に記録することを目的とする。【解決手段】外部コントローラと画像形成装置とを含むシステムであって、外部コントローラは、印刷ジョブの送信中に第１のタイムアウト時間、画像形成装置に印刷コマンドを送信できない場合、外部コントローラのログを保存する第１の保存手段を有し、画像形成装置は、印刷ジョブの受信中に第２のタイムアウト時間、外部コントローラから印刷コマンドを受信できない場合、画像形成装置のログを保存する第２の保存手段を有し、第１のタイムアウト時間と、第２のタイムアウト時間とは対応する時間であることによって課題を解決する。【選択図】図１４
2017217821.tif 000002
【特許請求の範囲】
【請求項１】
外部コントローラと画像形成装置とを含むシステムであって、
前記外部コントローラは、印刷ジョブの送信中に第１のタイムアウト時間、前記画像形成装置に印刷コマンドを送信できない場合、前記外部コントローラのログを保存する第１の保存手段を有し、
前記画像形成装置は、前記印刷ジョブの受信中に第２のタイムアウト時間、前記外部コントローラから前記印刷コマンドを受信できない場合、前記画像形成装置のログを保存する第２の保存手段を有し、
前記第１のタイムアウト時間と、前記第２のタイムアウト時間とは対応する時間であるシステム。
【請求項２】
前記第１のタイムアウト時間と、前記第２のタイムアウト時間とは同じである請求項１記載のシステム。
【請求項３】
前記第１のタイムアウト時間と、前記第２のタイムアウト時間とは前記印刷コマンドに応じて異なる請求項１又は２記載のシステム。
【請求項４】
前記外部コントローラは、前記第１の保存手段によって保存された前記外部コントローラのログを前記画像形成装置に送信する第１の送信手段を更に有し、
前記画像形成装置は、前記外部コントローラから送信された前記外部コントローラのログを受信すると、前記外部コントローラのログを保存する第３の保存手段を更に有する請求項１乃至３何れか１項記載のシステム。
【請求項５】
前記第１の送信手段は、前記外部コントローラの起動時に前記外部コントローラのログを前記画像形成装置に送信する請求項４記載のシステム。
【請求項６】
前記外部コントローラは、エラーを検知した場合、前記画像形成装置にログを保存する指示を送信する第２の送信手段を更に有し、
前記画像形成装置は、前記外部コントローラから送信された前記ログを保存する指示を受信すると、前記画像形成装置のログを保存する第４の保存手段を更に有する請求項１乃至５何れか１項記載のシステム。
【請求項７】
前記画像形成装置は、エラーを検知した場合、前記外部コントローラにログを保存する指示を送信する第３の送信手段を更に有し、
前記外部コントローラは、前記画像形成装置から送信された前記ログを保存する指示を受信すると、前記外部コントローラのログを保存する第５の保存手段を更に有する請求項１乃至６何れか１項記載のシステム。
【請求項８】
外部コントローラと画像形成装置とを含むシステムにおける情報処理方法であって、
前記外部コントローラが、印刷ジョブの送信中に第１のタイムアウト時間、前記画像形成装置に印刷コマンドを送信できない場合、前記外部コントローラのログを保存する第１の保存ステップと、
前記画像形成装置が、前記印刷ジョブの受信中に第２のタイムアウト時間、前記外部コントローラから前記印刷コマンドを受信できない場合、前記画像形成装置のログを保存する第２の保存ステップと、
を含み、
前記第１のタイムアウト時間と、前記第２のタイムアウト時間とは対応する時間である情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エラー発生時の画像形成装置のログと外部コントローラのログとを確実に記録するシステム及び情報処理方法に関する。
【背景技術】
【０００２】
従来、印刷装置において動作エラーが発生した場合に、その原因解析を行うためのログを記録することが知られている。ログには例えば、ユーザの操作履歴、印刷ジョブの実行状況、プログラムの実行状況等についての情報が含まれる。
また従来、印刷装置にデジタルフロントエンドと呼ばれる外付けの画像処理コントローラ（以下、外部コントローラ）を接続した印刷システムが知られている。外部コントローラを接続することにより、印刷装置単体では実行できない機能の追加や、印刷処理の高画質化、又は、高速化等を実現することができる。外部コントローラは、例えば、ＰＣ等から受信した印刷データに対してＲＩＰ処理等を実行した後、処理後の印刷データを印刷装置に出力する。
特許文献１には、印刷装置のログと、外部コントローラのログとをそれぞれ収集して、印刷システムのエラー調査を行うことができるようにするシステムが記載されている。特許文献１に記載のシステムでは、印刷装置のログを外部コントローラに送信し、外部コントローラが印刷装置のログ及び外部コントローラのログを一元管理する。
特許文献１に記載のシステムでは、印刷装置及び外部コントローラは、プログラム上、予め定義された処理が実行されると、その処理を実行したことを示すログを生成してタイムスタンプと共にハードディスクに記録する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−４５７０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
印刷装置と外部コントローラとが接続された印刷システムにおいてエラーが発生した場合、エラーの原因を特定するためには、エラー発生タイミングでの印刷装置のログ及び外部コントローラのログの両方が必要になる場合がある。例えば、クライアント装置から外部コントローラを経由して印刷装置に印刷ジョブを出力する指示をしたにもかかわらず、印刷ジョブが実行されない場合として複数の場合が想定される。
第１の場合は、外部コントローラにおけるエラーが原因で、印刷ジョブが外部コントローラから印刷装置に出力されない場合である。
第２の場合は、外部コントローラから印刷ジョブは正常に出力されたものの、外部コントローラと印刷装置との間の通信線の異常により、印刷装置に正常に受信されない場合である。
第３の場合は、印刷ジョブが外部コントローラから正常に出力され、印刷装置に正常に受信されたものの、印刷装置が受信したジョブを正常に実行できなかった場合である。
【０００５】
ユーザ又はサービスマンは、印刷ジョブが実行されなかった原因を特定するために、まず印刷装置のログを確認する。受信した印刷ジョブが印刷装置でのエラーにより実行できなかったことを示すジョブが記録されていない場合は、外部コントローラでの異常（上述の第１の場合）、又は、ネットワークの異常（上述の第２の場合）が原因として考えられる。ここで、上述の第１の場合又は第２の場合の何れが原因なのかを特定するためには、外部コントローラ側のログを確認し、外部コントローラが正常に印刷ジョブを出力したのかを確認する必要がある。
このように、原因特定のためには、印刷装置側と外部装置側とで同じタイミングでエラー発生の有無が確認され、確認結果が分かるようにログが記録される必要がある。
しかし、特許文献１に記載のシステムでは、印刷装置側でエラー発生の有無に関するログを残すタイミングと、外部装置側でエラー発生の有無に関するログを残すタイミングとの関係については何ら考慮されていなかった。したがって、エラー発生の原因が特定できない場合があった。
例えば、特許文献１に記載のシステムでは、印刷ジョブが外部コントローラから正常に出力されたか否かを特定するためのログが記録されない可能性があった。また、印刷装置においてログを記録するタイミングと、外部コントローラでログを記録するタイミングと、がずれてしまう可能性があった。ログを記録するタイミングがずれると、エラー発生時刻における印刷装置と外部コントローラとの状態を比較して原因特定を行うことができないという課題があった。また、一旦ログが記録されたとしても、外部コントローラの記憶容量が一杯になったタイミングでログが削除されてしまう場合、ユーザやサービスマンが後から確認できない状態になってしまう可能性があった。
【０００６】
本発明は、エラー発生時の画像形成装置のログと外部コントローラのログとを確実に記録することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、外部コントローラと画像形成装置とを含むシステムであって、前記外部コントローラは、印刷ジョブの送信中に第１のタイムアウト時間、前記画像形成装置に印刷コマンドを送信できない場合、前記外部コントローラのログを保存する第１の保存手段を有し、前記画像形成装置は、前記印刷ジョブの受信中に第２のタイムアウト時間、前記外部コントローラから前記印刷コマンドを受信できない場合、前記画像形成装置のログを保存する第２の保存手段を有し、前記第１のタイムアウト時間と、前記第２のタイムアウト時間とは対応する時間である。
【発明の効果】
【０００８】
本発明によれば、エラー発生時の画像形成装置のログと外部コントローラのログとを確実に記録することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理システムのシステム構成の一例を示す図である。
【図２】ハードウェア構成の一例を示す図である。
【図３】ログの一例を示す図である。
【図４】一時ログと保存ログとの動作の違いを示す図である。
【図５】印刷ジョブを投入する際のコマンドの流れを示すシーケンス図である。
【図６】操作画面に表示するエラー画面の一例を示す図である。
【図７】画像形成装置がエラーと判定するタイムアウト時間の一例を示す図である。
【図８】印刷コマンドを長時間送信できない原因の一例を示す図である。
【図９】印刷ジョブを投入する際の情報処理の一例を示すフローチャートである。
【図１０】外部コントローラがエラーと判定するタイムアウト時間の一例を示す図である。
【図１１】操作画面に表示されるエラー画面の一例を示す図である。
【図１２】印刷ジョブを受信する際の情報処理の一例を示すフローチャートである。
【図１３】外部コントローラの起動処理の一例を示すフローチャートである。
【図１４】通信が切断された場合の情報処理の一例を示すシーケンス図である。
【図１５】外部コントローラがエラーを検知した際の情報処理の一例を示すフローチャートである。
【図１６】画像形成装置がエラーを検知した際の情報処理の一例を示すフローチャートである。
【図１７】ログ保存指示を受信した際の外部コントローラの情報処理の一例を示すフローチャートである。
【図１８】ログ保存指示を受信した際の画像形成装置の情報処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。
（画像処理システム）
図１は、画像処理システムのシステム構成の一例を示す図である。画像処理システムは、画像形成装置１０１と外部コントローラ１０２とを備える。画像形成装置１０１と外部コントローラ１０２とは内部ＬＡＮ１０５及びビデオケーブル１０６を介して通信可能に接続されている。
外部コントローラ１０２は、外部ＬＡＮ１０７を介してＰＣ１０３やＰＣ１０４のクライアントＰＣと通信可能に接続されている。ＰＣ１０３やＰＣ１０４から外部コントローラ１０２を介して画像形成装置１０１に印刷指示が行われる。より具体的に説明すると、外部コントローラ１０２は、ＰＣ１０３やＰＣ１０４から印刷指示を受け取ると、画像処理やＲＩＰ処理を行い、画像形成装置１０１に対して画像データを投入し印刷指示を行う。外部コントローラ１０２は、ＰＣ１０３やＰＣ１０４からの要求に応じて処理中の印刷ジョブの状況を取得することができる。
画像形成装置１０１は、外部ＬＡＮ１０７に直接、接続されておらず、画像形成装置１０１とＰＣ１０３、ＰＣ１０４とは、外部コントローラ１０２を介して通信される。外部コントローラ１０２は、外部ＬＡＮ１０７を介して画像形成装置１０１宛の通信データを受け取った場合、内部ＬＡＮ１０５を介して画像形成装置１０１に通信データを転送する。また、外部コントローラ１０２は、内部ＬＡＮ１０５を介して外部クライアント宛の通信データを受け取った場合、外部ＬＡＮ１０７を介して外部クライアントに通信データを転送する。
【００１１】
（画像形成装置及び外部コントローラのハードウェア構成）
図２は、画像形成装置１０１及び外部コントローラ１０２のハードウェア構成の一例を示す図である。
画像形成装置１０１は、操作部Ｉ／Ｆ２０４、ＨＤＤ２０５、ＣＰＵ２０６、スキャナＩ／Ｆ２０７、ネットワークＩ／Ｆ２０８、電源制御部２０９、エンジンＩ／Ｆ２１０、メモリ２１１、ファックスＩ／Ｆ２１２、及びビデオＩ／Ｆ２１３を有する。
操作部Ｉ／Ｆ２０４は、操作画面２０１と接続されている。操作画面２０１は、操作ボタンと表示パネルとで構成される。操作画面２０１の操作ボタンはユーザからの入力を受け付ける。操作画面２０１の表示パネルには印刷状況等情報が表示される。ＨＤＤ２０５は、記憶装置である。ＣＰＵ２０６は、システムバス２１９を介して、画像形成装置１０１の各部の制御、演算等を行う。スキャナ部２０３は、スキャナＩ／Ｆ２０７を介して接続されており、原稿を読み取って画像データを入力する。ネットワークＩ／Ｆ２０８は、内部ＬＡＮ１０５を介して外部コントローラ１０２と接続される。ネットワークＩ／Ｆ２０８を介して印刷ジョブの指示等の通信が行われる。電源制御部２０９は、画像形成装置１０１の各部への電源供給を制御する。給紙装置２１６、プリンタ部２１５、排紙装置２１４は、エンジンＩ／Ｆ２１０を介して接続される。給紙装置２１６は、補給された用紙を給紙し、プリンタ部２１５へと受け渡す。プリンタ部２１５では、受け取った用紙に画像をプリントする。排紙装置２１４では、プリンタ部２１５によりプリントされた用紙を受け取り、受け取った用紙に対して排紙、ソート、ステイプル、パンチ、及び断裁等の後処理を施す。メモリ２１１は、ＣＰＵ２０６のワークメモリとして使用される。ファックス部２１７は、ファックスＩ／Ｆ２１２を介して接続される。ファックス部２１７は、モデム２１８を介して電話回線１０８と接続されており、ファックスデータの送受信が行われる。ビデオＩ／Ｆ２１３は、ビデオケーブル１０６を介して外部コントローラ１０２と接続され、画像データの投入が行われる。ＣＰＵ２０６がメモリ２１１又はＨＤＤ２０５に記憶されたプログラムに基づき処理を実行することによって、画像形成装置１０１の機能、後述する図５、図１４のシーケンス図の画像形成装置１０１の処理が実現される。また、ＣＰＵ２０６がメモリ２１１又はＨＤＤ２０５に記憶されたプログラムに基づき処理を実行することによって、後述する図１２、図１６、図１８のフローチャートの処理等が実現される。
【００１２】
外部コントローラ１０２は、ネットワークＩ／Ｆ２２１、ネットワークＩ／Ｆ２２２、操作部Ｉ／Ｆ２２３、メモリ２２４、ビデオＩ／Ｆ２２５、電源制御部２２６、ＨＤＤ２２７、ＣＰＵ２２８を有し、システムバス２０２を通して接続されている。ネットワークＩ／Ｆ２２１は、内部ＬＡＮ１０５を介して画像形成装置１０１と接続されている。ネットワークＩ／Ｆ２２１を介して印刷ジョブの指示等の通信が行われる。ネットワークＩ／Ｆ２２１は、外部ＬＡＮ１０７と接続されている。ネットワークＩ／Ｆ２２１を介してクライアントＰＣから印刷指示等の通信が行われる。操作部Ｉ／Ｆ２２３は、操作画面２２０と接続されている。操作画面２２０は、操作ボタンと表示パネルで構成される。操作画面２２０の操作ボタンはユーザからの入力を受け付ける。操作画面２２０の表示パネルには印刷状況等情報が表示される。メモリ２２４は、ＣＰＵ２２８のワークメモリとして使用される。ビデオＩ／Ｆ２２５は、ビデオケーブル１０６を介して画像形成装置１０１と接続され、画像データの投入や電源状態の通知が行われる。電源制御部２２６は、外部コントローラ１０２の各部への電源供給を制御する。ＨＤＤ２２７は、大容量の記憶装置である。ＣＰＵ２２８は、システムバス２０２を介して、外部コントローラ１０２の各部の制御、演算等を行う。ＣＰＵ２２８がメモリ２２４又はＨＤＤ２２７に記憶されたプログラムに基づき処理を実行することによって、外部コントローラ１０２の機能、後述する図５、図１４のシーケンス図の外部コントローラ１０２の処理が実現される。また、ＣＰＵ２２８がメモリ２２４又はＨＤＤ２２７に記憶されたプログラムに基づき処理を実行することによって、後述する図９、図１３、図１５、図１７のフローチャートの処理が実現される。
【００１３】
図３は、画像形成装置１０１と外部コントローラ１０２とにおいて保存されるログの一例を示す図である。外部コントローラ１０２には、システムログ、ネットワークログ、印刷プロセスログ等のログがＨＤＤ２２７に保存される。外部コントローラ１０２のシステムログには、ＯＳの起動やシステムコール、ハードウェア検知の履歴等が含まれる。外部コントローラ１０２のネットワークログには、ネットワークデバイスや構成情報、コマンド送受信履歴等が含まれる。外部コントローラ１０２の印刷プロセスログには、画像データの解析や印刷コマンドの投入履歴等が含まれる。
画像形成装置１０１には、システムログ、ネットワークログ、印刷プロセスログ、プリントログ、オプション装置ログ、エラーログ、画像処理ログ等がＨＤＤ２０５に保存される。画像形成装置１０１のシステムログには、ＯＳの起動やシステムコール、ハードウェア検知の履歴等が含まれる。画像形成装置１０１のネットワークログには、ネットワークデバイスや構成情報、コマンド送受信履歴等が含まれる。画像形成装置１０１の印刷プロセスログには、印刷コマンドの受信や制御履歴等が含まれる。画像形成装置１０１のプリントログには、印刷済みのジョブ情報等が含まれる。画像形成装置１０１のオプション装置ログには、フィニッシャ等のオプション装置の制御履歴等が含まれる。画像形成装置１０１のエラーログには、画像形成装置１０１で発生したエラーの履歴等が含まれる。画像形成装置１０１の画像処理ログには、受信した画像データの解析ログ等が含まれる。これらのログを分析することで、画像形成装置１０１や外部コントローラ１０２におけるエラーの原因を解析することができる。
【００１４】
図４は、画像形成装置１０１と外部コントローラ１０２とにおける一時ログと保存ログとの動作の違いを示す図である。印刷処理において画像形成装置１０１や外部コントローラ１０２の制御処理は非常に多く、ログも膨大なものとなる。そのため、全てのログを保存し続けるのはＨＤＤ２０５やＨＤＤ２２７の容量を圧迫するため現実的ではない。そこで、図４のように画像形成装置１０１と外部コントローラ１０２とは、ログを一時ログと保存ログとの２種類に分けて保存している。
一時ログとは、画像形成装置１０１と外部コントローラ１０２とにおいて常に取得されているログである。一時ログは、予め決められたサイズや個数の上限を超えると、古いログから削除される。そのため、一時ログを取得しても、エラー発生から時間が経過してしまうとエラー発生時点のログが削除されてしまっている場合がある。
保存ログとは、ユーザ等からログの保存指示があったときに保存されるログである。その時点での一時ログ以外にも、例えば実行中のジョブの情報等、保存ログには一時ログには含まれないログが保存されることもある。保存ログは一時ログとは別のＨＤＤ内の領域に保存される。保存ログは、一時ログとは別にサイズや個数の上限が定められており、上限を超えると、古い保存ログから削除される。 保存ログは、ユーザからの保存指示があったとき以外にも、エラーを検知したとき等に保存される。保存ログは一時ログとは別のＨＤＤ内の領域に保存されるので、保存指示された時点でのログを確実に保存することができる。
【００１５】
図５は、外部コントローラ１０２が画像形成装置１０１に対して印刷ジョブを投入する際のコマンドの流れを示すシーケンス図である。これらのコマンドは内部ＬＡＮ１０５又はビデオケーブル１０６を介して通信される。図５の外部コントローラ１０２の処理は、印刷ジョブの送信中に係る処理である。また、図５の画像形成装置１０１の処理は、印刷ジョブの受信中に係る処理である。外部コントローラ１０２はＰＣ１０３やＰＣ１０４の外部クライアントから印刷ジョブを受けとると、図５に示す印刷コマンドを送信する。まず外部コントローラ１０２は、画像形成装置１０１に対して印刷ジョブ全体の設定５０１を送信する。印刷ジョブ全体の設定５０１には例えば印刷ジョブの名称や印刷ジョブに対するステイプルやパンチ等の後処理の設定が含まれている。次に外部コントローラ１０２は、画像形成装置１０１に対して、印刷ジョブに含まれる各ページの印刷データを1ページ目から順に送信する。印刷データには設定情報と画像データとがある。Ｎページの印刷ジョブを投入する際には、外部コントローラ１０２は、１ページ目の設定情報５０２、1ページ目の画像データ５０３から順に、Ｎページ目の設定情報５０８、Ｎページ目の画像データ５０９を送信する。ここで設定情報には、各ページの画像の濃度や印字位置等の設定が含まれる。画像形成装置１０１は、設定情報と画像データとを受け取ると受け取ったページの印刷処理を開始する。画像形成装置１０１は、１ページ目の設定情報５０２と１ページ目の画像データ５０３とを受け取ると５０４で1ページ目の印刷処理を開始する。画像形成装置１０１は、順にＮページ目の設定情報５０８とＮページ目の画像データ５０９とを受け取ると５１０でＮページ目の印刷処理を開始する。Ｎページ分の印刷データの送信が終わると、外部コントローラ１０２は、ジョブ転送完了通知５１１を画像形成装置１０１に送信する。画像形成装置１０１は、ジョブ転送完了通知５１１を受け取ると、５１２で、印刷ジョブ全体の後処理を行う。印刷ジョブ全体の後処理には、全ページに対するステイプル処理等が含まれる。
【００１６】
図６は、画像形成装置１０１が外部コントローラ１０２からの印刷コマンドの受信を正常に完了しなかった場合に操作画面２０１に表示するエラー画面の一例を示す図である。印刷コマンドの受信が正常に完了しない場合とは、例えば画像形成装置１０１が図５で示した各印刷コマンドの受信が一定時間以内に完了しなかった場合である。ここで画像形成装置１０１が一定時間でタイムアウトと判定しエラーを表示するのにはいくつかの理由がある。画像形成装置１０１は、外部コントローラ１０２から印刷コマンドをいつまでも待ち続けていると、長時間印刷処理が行われないことになるが、ユーザは印刷処理の遅れに気づくことが困難な場合がある。また、画像形成装置１０１は、外部コントローラ１０２から印刷ジョブを受信している間、他のＰＣ等のクライアントからの印刷ジョブの受信等を行うことが制限されてしまう。そのような理由から、画像形成装置１０１は、一定時間でタイムアウトと判定しエラー表示している。
【００１７】
図７は、画像形成装置１０１がエラーと判定するタイムアウト時間の一例を示す図である。画像形成装置１０１は、外部コントローラ１０２からジョブ全体の設定５０１を受信してからジョブ転送完了通知５１１を受信するまでの間、いずれの印刷コマンドも図７に示すタイムアウト時間以内に受信しない場合はタイムアウトと判定する。タイムアウトの判定は、画像形成装置１０１のＣＰＵ２０６がネットワークＩ／Ｆ２０８又はビデオＩ／Ｆ２１３において印刷コマンドを受信したかを監視することにより判定する。外部コントローラ１０２における印刷コマンドを送信するための処理や、印刷コマンド自体のデータ量等によって、期待する印刷コマンドの送受信に係る時間が異なるため、タイムアウト時間は各印刷コマンドによって異なる。画像形成装置１０１は、ジョブ全体の設定５０１を受信した後には、外部コントローラ１０２から１ページ目の設定情報５０２を受信する。画像形成装置１０１がジョブ全体の設定５０１を受信した後のタイムアウト時間は３０秒である。画像形成装置１０１は、設定情報を受信した後には、外部コントローラ１０２から画像データを受信する。画像形成装置１０１が設定情報５０２又は５０５又は５０８を受信した後のタイムアウト時間は１２０秒である。画像形成装置１０１は、画像データを受信した後には外部コントローラ１０２から次のページの設定情報又はジョブ転送完了通知を受信する。画像形成装置１０１が画像データ５０３又は５０６又は５０９を受信した後のタイムアウト時間は６０秒である。
【００１８】
図８は、外部コントローラ１０２が印刷コマンドを長時間送信できない原因の一例を示す図である。設定情報５０２、５０５、５０８が投入できない原因には、内部ＬＡＮ１０５のエラー、不明な設定情報の受信、外部コントローラ１０２の予期せぬシステムコールエラーやネットワークエラー、印刷プロセスのエラー等がある。画像データ５０３、５０６、５０９が投入できない原因には、ビデオケーブル１０６のエラー、不明な画像データの受信、外部コントローラ１０２の予期せぬシステムコールエラーやネットワークエラー、印刷プロセスのエラー等がある。ジョブ転送完了通知５１１が投入できない原因には、内部ＬＡＮ１０５のエラー、外部コントローラ１０２の予期せぬシステムコールエラーやネットワークエラー、印刷プロセスのエラー等がある。これらの原因は画像形成装置１０１で保存されるログだけでは特定できず、外部コントローラ１０２で保存されるログが必要な場合が多い。
【００１９】
＜実施形態１＞
図９は、外部コントローラ１０２が画像形成装置１０１に印刷ジョブを投入する際の情報処理の一例を示すフローチャートである。
Ｓ９０１において、ＣＰＵ２２８は、ＰＣ１０３やＰＣ１０４から印刷データを受信する。
Ｓ９０２において、ＣＰＵ２２８は、印刷データを解析する。印刷データの解析はＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）と呼ばれる。ＣＰＵ２２８は、ＰＳ（ＰｏｓｔＳｃｒｉｐｔ）やＰＤＦ等の印刷データを画像形成装置１０１で解析可能なデータ形式に変換する処理を行う。
Ｓ９０３において、ＣＰＵ２２８は、印刷コマンドを生成する。印刷コマンドには図５で説明したジョブ全体の設定５０１や各ページの設定情報５０２、５０５、５０８等がある。
Ｓ９０４において、ＣＰＵ２２８は、Ｓ９０３で生成した印刷コマンドを画像形成装置１０１に送信する。
Ｓ９０５において、ＣＰＵ２２８は、Ｓ９０４で送信した印刷コマンドが一定時間以内に送信できたかを判定する。Ｓ９０５における一定時間は印刷コマンドによって異なる。図１０は、外部コントローラ１０２がエラーと判定するタイムアウト時間の一例を示す図である。これらのタイムアウト時間は、図７の画像形成装置１０１がエラーと判定するタイムアウト時間に対応し、同じである。外部コントローラ１０２は、一定時間以内にコマンドを送信できない場合にタイムアウトと判定する。タイムアウトの判定は、外部コントローラ１０２のＣＰＵ２２８がネットワークＩ／Ｆ２２１又はビデオＩ／Ｆ２２５において印刷コマンドが送信されたかを監視することにより判定する。ＣＰＵ２２８は、一定時間内に印刷コマンドを送信できたと判定した場合（Ｓ９０５においてＹＥＳ）、Ｓ９０６に進み、一定時間内に印刷コマンドを送信できなかったと判定した場合（Ｓ９０５においてＮＯ）、Ｓ９０７に進む。
Ｓ９０６において、ＣＰＵ２２８は、すべての印刷コマンドの送信が完了したかを判定する。ＣＰＵ２２８は、すべての印刷コマンドの送信が完了したと判定した場合（Ｓ９０６においてＹＥＳ）、図９に示すジョブ送信処理を終了する。また、ＣＰＵ２２８は、すべての印刷コマンドの送信を完了していないと判定した場合（Ｓ９０６においてＮＯ）、Ｓ９０３の処理に戻り、次の印刷コマンドを生成する。
【００２０】
Ｓ９０７において、ＣＰＵ２２８は、操作画面２２０にエラー画面を表示する。図１１は、操作画面２２０に表示されるエラー画面の一例を示す図である。エラー画面は、ジョブの送信が正常に完了しなかった旨をユーザに通知する。
Ｓ９０８において、ＣＰＵ２２８は、ＨＤＤ２２７に外部コントローラ１０２のログを保存する。Ｓ９０８で保存される外部コントローラ１０２のログは、図４における保存ログであり、この時点での一時ログや、ジョブ等の情報等、一時ログには含まれない新規のログが保存される。
Ｓ９０９において、ＣＰＵ２２８は、Ｓ９０８で保存したログを画像形成装置１０１に送信する。
Ｓ９１０において、ＣＰＵ２２８は、Ｓ９０９でログ送信が成功したかを判定する。ＣＰＵ２２８は、ログ送信が成功したと判定した場合（Ｓ９１０においてＹＥＳ）、図９に示すジョブ送信処理を終了し、ログ送信が失敗したと判定した場合（Ｓ９１０においてＮＯ）、Ｓ９１１に進む。ここで送信が失敗する理由には、ネットワーク通信のエラー等がある。
Ｓ９１１において、ＣＰＵ２２８は、送信に失敗したログを送信が未完了のログとしてＨＤＤ２２７に保存し、図９に示すジョブ送信処理を終了する。ＣＰＵ２２８は、Ｓ９１１でＨＤＤ２２７に保存したログを、次回の画像形成装置１０１との接続時に画像形成装置１０１に送信する。
【００２１】
図１２は、画像形成装置１０１が外部コントローラ１０２から印刷ジョブを受信する際の情報処理の一例を示すフローチャートである。
Ｓ１２０１において、ＣＰＵ２０６は、外部コントローラ１０２からジョブ全体の設定５０１を受け取ることにより印刷ジョブの受信を開始する。なお、画像形成装置１０１は電源が入っており待機中であれば通常は印刷ジョブの受信が可能な状態にある。
Ｓ１２０２において、ＣＰＵ２０６は、前回コマンドを受信してから一定時間経過したかを判定する。Ｓ１２０２における一定時間は印刷コマンドによって異なる。図７は画像形成装置１０１がエラーと判定するタイムアウト時間の一例である。これらのタイムアウト時間は、図１０の外部コントローラ１０２がエラーと判定するタイムアウト時間と対応し、同じである。ＣＰＵ２０６は、一定時間以内にコマンドを受信しない場合にタイムアウトと判定する。ＣＰＵ２０６は、一定時間経過したと判定した場合（Ｓ１２０２においてＹＥＳ）、Ｓ１２０７に進み、一定時間経過していないと判定した場合（Ｓ１２０２においてＮＯ）、Ｓ１２０３に進む。
Ｓ１２０３において、ＣＰＵ２０６は、印刷コマンドを受信したかを判定する。Ｓ１２０２の一定時間経過したかの判定やＳ１２０３の印刷コマンドを受信したかの判定は、ＣＰＵ２０６がネットワークＩ／Ｆ２０８又はビデオＩ／Ｆ２１３において印刷コマンドを受信したかを監視することにより判定する。ＣＰＵ２０６は、印刷コマンドを受信していないと判定した場合（Ｓ１２０３においてＮＯ）、Ｓ１２０２に戻り、印刷コマンドを受信したと判定した場合（Ｓ１２０３においてＹＥＳ）、Ｓ１２０４に進む。
Ｓ１２０４において、ＣＰＵ２０６は、すべての印刷コマンドを受信したか否かを判定する。ＣＰＵ２０６は、すべての印刷コマンドを受信したと判定した場合（Ｓ１２０４においてＹＥＳ）、ステップＳ１２０５に進み、すべての印刷コマンドを受信していないと判定した場合（Ｓ１２０４においてＮＯ）、ステップＳ１２０２に戻る。ＣＰＵ２０６は、図５のジョブ転送完了通知５１１を受け取っていればすべての印刷コマンドを受信したと判定する。
【００２２】
Ｓ１２０５において、ＣＰＵ２０６は、受信した印刷コマンドに応じた印刷処理を開始する。
Ｓ１２０６において、ＣＰＵ２０６は、印刷処理が終了したかを判定する。ＣＰＵ２０６は、終了していないと判定した場合（Ｓ１２０６においてＮＯ）、Ｓ１２０５に戻り、終了したと判定した場合（Ｓ１２０６においてＹＥＳ）、図１２に示す印刷ジョブ受信処理を終了する。
Ｓ１２０７において、ＣＰＵ２０６は、操作画面２０１に図６に示したようなエラー画面を表示する。エラー画面では、ジョブの受信が正常に完了しなかったため画像形成装置１０１を再起動するようユーザに通知する。
Ｓ１２０８において、ＣＰＵ２０６は、ログをＨＤＤ２０５に保存し、図１２に示す印刷ジョブ受信処理を終了する。Ｓ１２０８で保存される画像形成装置１０１のログは、図４における保存ログであり、この時点での一時ログや、ジョブ等の情報等、一時ログには含まれない新規のログが保存される。
【００２３】
図１３は、外部コントローラ１０２の起動処理の一例を示すフローチャートである。
図１３の起動処理には、外部コントローラ１０２が図９の９１０で画像形成装置１０１へのログ送信が失敗した場合のログ再送信処理が含まれる。
Ｓ１３０１において、ＣＰＵ２２８は、起動処理を開始する。Ｓ１３０１の起動処理には、通常のＰＣの起動と同様に、マウス等のハードウェアの検知や各種アプリケーションの起動処理が含まれる。
Ｓ１３０２において、ＣＰＵ２２８は、画像形成装置１０１との接続処理を開始する。Ｓ１３０２の接続処理には、外部コントローラ１０２による画像形成装置１０１の構成情報の取得等が含まれる。
Ｓ１３０３において、ＣＰＵ２２８は、ＨＤＤ２２７に送信が未完了のログがあるかを判定する。送信が未完了のログとは、図９のＳ９１１で送信に失敗し保存したログである。ＣＰＵ２２８は、送信が未完了のログがないと判定した場合（Ｓ１３０３においてＮＯ）、図１３に示す外部コントローラ１０２の起動処理を終了し、送信が未完了のログがあると判定した場合（Ｓ１３０３においてＹＥＳ）、Ｓ１３０４に進む。
Ｓ１３０４において、ＣＰＵ２２８は、送信が未完了のログを画像形成装置１０１に送信する。
Ｓ１３０５において、ＣＰＵ２２８は、Ｓ１３０４のログ送信が成功したかを判定する。ＣＰＵ２２８は、ログ送信に成功したと判定した場合（Ｓ１３０５においてＹＥＳ）、図１３の外部コントローラ１０２の起動処理を終了し、ログ送信に失敗したと判定した場合（Ｓ１３０５においてＮＯ）、Ｓ１３０６に進む。
Ｓ１３０６において、ＣＰＵ２２８は、送信が未完了のログをＨＤＤ２２７に保存し、図１３に示す外部コントローラ１０２の起動処理を終了する。ＣＰＵ２２８は、Ｓ１３０６でＨＤＤ２２７に保存したログは次回の画像形成装置１０１との接続時に画像形成装置１０１に送信する。図９のＳ９０９と図１３のＳ１３０４で画像形成装置１０１に送信された外部コントローラ１０２のログは画像形成装置１０１において画像形成装置１０１のログと共に保存される。画像形成装置１０１に保存されたログは、ＵＳＢメモリを画像形成装置１０１に接続することで取得できる。また、画像形成装置１０１に保存されたログは、専用の外部アプリケーションを使用し外部ＰＣから取得することもできる。
【００２４】
図１４は、画像形成装置１０１と外部コントローラ１０２との通信が切断された場合の情報処理の一例を示すシーケンス図である。以下では説明の簡略化のため、外部コントローラ１０２が画像形成装置１０１に画像データを投入後、画像形成装置１０１と外部コントローラ１０２との通信が切断されたものとして処理の説明を行う。
ＳＱ１において、画像形成装置１０１のＣＰＵ２０６は、画像データ受信後のタイムアウト時間を経過すると、エラーを検知する。
ＳＱ２において、ＣＰＵ２０６は、ログをＨＤＤ２０５に保存する。
同様に、ＳＱ１'において、外部コントローラ１０２のＣＰＵ２２８は、画像データ投入後のタイムアウト時間を経過すると、エラーを検知する。
ＳＱ２'において、ＣＰＵ２２８は、ログをＨＤＤ２２７に保存する。
ＳＱ３において、ＣＰＵ２２８は、ＳＱ２'で保存したログを画像形成装置１０１に送信する。図１４の例では、通信が切断されたままなので、ＳＱ３のログの送信は失敗する。
すると、ＳＱ４において、ＣＰＵ２２８は、送信に失敗したログを送信が未完了のログとしてＨＤＤ２２７に保存する。
画像形成装置１０１と外部コントローラ１０２との通信が確立したのち、ＳＱ５において、ＣＰＵ２２８は、送信が未完了のログを画像形成装置１０１に送信する。
ＳＱ６において、外部コントローラ１０２からログを受信した画像形成装置１０１のＣＰＵ２０６は、外部コントローラ１０２のログをＨＤＤ２０５等に保存する。
このような情報処理を行うことによって、画像形成装置１０１には、画像形成装置１０１のログと、外部コントローラ１０２のログと、が保存される。
【００２５】
（実施形態１の効果）
図９のＳ９０５で判定した図７に基づくタイムアウト時間と、図１２のＳ１２０２で判定した図１０に基づくタイムアウト時間と、が対応し、等しい。そのため、エラー発生時に互いに通信不可な状態に陥っていたとしても、エラー発生時の画像形成装置１０１のログと外部コントローラ１０２のログとの両方を、タイミングを合わせて確実に保存することができる。
また、図９のＳ９０９又は図１３のＳ１３０４において、外部コントローラ１０２のログを画像形成装置１０１に送信する。したがって、画像形成装置１０１からのログの取得操作のみで、画像形成装置１０１と外部コントローラ１０２との両方のログを取得することができる。
【００２６】
＜実施形態２＞
実施形態１においては、印刷ジョブの投入を各印刷コマンドの送受信のタイムアウトによりエラーと判定する場合において説明した。画像形成装置１０１や外部コントローラ１０２において、ログを取得すべきエラーは他にも多く存在する。実施形態２は、実施形態１に加えて、画像形成装置１０１又は外部コントローラ１０２においてタイムアウト以外のエラーが発生した場合にも、画像形成装置１０１と外部コントローラ１０２との両方においてログを取得するためのものである。
実施形態２においては、実施形態１と同様に、外部コントローラ１０２は図９の外部コントローラ１０２のジョブ送信開始処理を行う。また、実施形態１と同様に、画像形成装置１０１は、図１２のジョブ受信処理を行う。また、実施形態１と同様に、外部コントローラ１０２は、図１３の外部コントローラ１０２の起動開始処理を行う。
【００２７】
図１５は、実施形態２において外部コントローラ１０２がエラーを検知した際の情報処理の一例を示すフローチャートである。
Ｓ１４０１において、ＣＰＵ２２８は、外部コントローラ１０２のエラーを検知する。Ｓ１４０１で検知するエラーの種類は、例えば、印刷データの解析中におけるエラーや、画像形成装置１０１から受信した画像形成装置１０１の構成情報が予期しない情報である場合等がある。外部コントローラ１０２単体で発生したエラーであっても、画像形成装置１０１の処理に関係するエラーである場合がある。そのため、外部コントローラ１０２のエラー発生時点の画像形成装置１０１と外部コントローラ１０２との両方のログを取得することは、エラーの原因を解析するのに有用である。
Ｓ１４０２において、ＣＰＵ２２８は、画像形成装置１０１に対してログの保存を指示する。画像形成装置１０１はＳ１４０２のログの保存指示を受けると、画像形成装置１０１のログをＨＤＤ２０５に保存する。
Ｓ１４０３において、ＣＰＵ２２８は、外部コントローラ１０２のログをＨＤＤ２２７に保存する。
Ｓ１４０４において、ＣＰＵ２２８は、Ｓ１４０３で保存したログを画像形成装置１０１に送信する。
Ｓ１４０５において、ＣＰＵ２２８は、Ｓ１４０４でのログ送信が成功したかを判定する。ＣＰＵ２２８は、Ｓ１４０５で送信が成功したと判定した場合（Ｓ１４０５においてＹＥＳ）、図１５の外部コントローラ１０２のエラー検知処理を終了し、送信が失敗したと判定した場合（Ｓ１４０５においてＮＯ）、Ｓ１４０６に進む。
Ｓ１４０６において、ＣＰＵ２２８は、送信に失敗したログを送信が未完了のログとしてＨＤＤ２２７に保存し、図１５に示すエラー検知処理を終了する。
【００２８】
図１６は、実施形態２において画像形成装置１０１がエラーを検知した際の情報処理の一例を示すフローチャートである。
Ｓ１５０１において、ＣＰＵ２０６は、画像形成装置１０１のエラーを検知する。Ｓ１５０１で検知するエラーの種類は、例えば、印刷処理が正常に完了しなかった場合や、外部コントローラ１０２から受信した各種コマンドが予期しない内容である場合等がある。画像形成装置１０１単体で発生したエラーであっても、外部コントローラ１０２に関係するエラーである場合がある。そのため、画像形成装置１０１のエラー発生時点の画像形成装置１０１と外部コントローラ１０２との両方のログを取得することは、エラーの原因を解析するのに有用である。
Ｓ１５０２において、ＣＰＵ２０６は、外部コントローラ１０２に対してログの保存を指示する。
Ｓ１５０３において、ＣＰＵ２０６は、画像形成装置１０１のログをＨＤＤ２０５に保存し、図１６の画像形成装置１０１のエラー検知処理を終了する。
【００２９】
図１７は、外部コントローラ１０２が画像形成装置１０１からＳ１５０２のログ保存指示を受信した際の情報処理の一例を示すフローチャートである。
Ｓ１６０１において、ＣＰＵ２２８は、画像形成装置１０１からログの保存指示を受信する。
Ｓ１６０２において、ＣＰＵ２２８は、外部コントローラ１０２のログをＨＤＤ２２７に保存する。
Ｓ１６０３において、ＣＰＵ２２８は、Ｓ１６０２で保存したログを画像形成装置１０１に送信する。
Ｓ１６０４において、ＣＰＵ２２８は、Ｓ１６０３のログ送信が成功したかを判定する。ＣＰＵ２２８は、ログ送信が成功したと判定した場合（Ｓ１６０４においてＹＥＳ）、図１７のログ保存指示受信の処理を終了し、ログ送信が失敗したと判定した場合（Ｓ１６０４においてＮＯ）、Ｓ１６０５に進む。
Ｓ１６０５において、ＣＰＵ２２８は、送信に失敗したログを送信が未完了のログとしてＨＤＤ２２７に保存し、図１７のエラー検知処理を終了する。
【００３０】
図１８は、画像形成装置１０１が外部コントローラ１０２からＳ１４０２のログ保存指示を受信した際の情報処理の一例を示すフローチャートである。
Ｓ１８０１において、ＣＰＵ２０６は、外部コントローラ１０２からログの保存指示を受信する。
Ｓ１８０２において、ＣＰＵ２０６は、画像形成装置１０１のログをＨＤＤ２０５に保存する。
【００３１】
（実施形態２の効果）
実施形態２では、実施形態１の効果に加えて、印刷コマンドの送受信時のタイムアウト以外で発生したエラーであっても、エラー発生時の画像形成装置１０１と外部コントローラ１０２とのログの両方を保存することができる。
【００３２】
＜その他の実施形態＞
実施形態１、実施形態２では、外部コントローラ１０２のログを画像形成装置１０１に送信し、画像形成装置１０１に外部コントローラ１０２のログと画像形成装置１０１のログとの両方を保存する例を用いて説明した。ここで、画像形成装置１０１のログを外部コントローラ１０２に送信し、外部コントローラ１０２に外部コントローラ１０２と画像形成装置１０１とのログの両方を保存してもよい。また、外部コントローラ１０２、画像形成装置１０１と異なる外部のログサーバに外部コントローラ１０２のログと画像形成装置１０１のログとの両方を送信し、保存してもよい。
実施形態１、実施形態２では、外部コントローラ１０２から画像形成装置１０１へのログの送信に失敗した場合に、図１３の次回の外部コントローラ１０２の起動時に再送信する例を用いて説明した。ここで、ログの再送信は起動時に限らず、例えばログ送信直後に送信に成功するまで再送信してもよいし、別の任意のタイミングで実行してもよい。
【００３３】
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００３４】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。例えば、図２に示した画像形成装置１０１、外部コントローラ１０２のハードウェア構成は一例であって、画像形成装置１０１、外部コントローラ１０２は、図２に示したＩ／Ｆ以外の複数のＩ／Ｆにおいて互いに通信可能に接続されていてもよい。また、画像形成装置１０１、外部コントローラ１０２は、複数のＣＰＵ、メモリ等を有していてもよい。
上述した外部コントローラは、画像処理コントローラ、デジタルフロントエンド、プリントサーバ、ＤＦＥ等と呼ばれることもある。また、画像形成装置は、複合機、マルチファンクションペリフェラル、ＭＦＰと呼ばれることもある。
【００３５】
以上、上述した各実施形態の処理によれば、エラー発生時の画像形成装置のログと外部コントローラのログとを確実に記録することができる。
【符号の説明】
【００３６】
１０１  画像形成装置
１０２  外部コントローラ
２０６  ＣＰＵ
２２８  ＣＰＵ
【図１】
2017217821.tif 000003
【図２】
2017217821.tif 000004
【図３】
2017217821.tif 000005
【図４】
2017217821.tif 000006
【図５】
2017217821.tif 000007
【図６】
2017217821.tif 000008
【図７】
2017217821.tif 000009
【図８】
2017217821.tif 000010
【図９】
2017217821.tif 000011
【図１０】
2017217821.tif 000012
【図１１】
2017217821.tif 000013
【図１２】
2017217821.tif 000014
【図１３】
2017217821.tif 000015
【図１４】
2017217821.tif 000016
【図１５】
2017217821.tif 000017
【図１６】
2017217821.tif 000018
【図１７】
2017217821.tif 000019
【図１８】
2017217821.tif 000020