JP2021026754A - 情報処理装置、その制御方法、およびプログラム - Google Patents

情報処理装置、その制御方法、およびプログラム Download PDF

Info

Publication number
JP2021026754A
JP2021026754A JP2020042401A JP2020042401A JP2021026754A JP 2021026754 A JP2021026754 A JP 2021026754A JP 2020042401 A JP2020042401 A JP 2020042401A JP 2020042401 A JP2020042401 A JP 2020042401A JP 2021026754 A JP2021026754 A JP 2021026754A
Authority
JP
Japan
Prior art keywords
error
information
unit
device information
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020042401A
Other languages
English (en)
Inventor
雅仁 山▲崎▼
Masahito Yamazaki
雅仁 山▲崎▼
和也 森岡
Kazuya Morioka
和也 森岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of JP2021026754A publication Critical patent/JP2021026754A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】所定機種の情報処理装置で想定されていないエラーが発生した場合に、そのエラーの種類や対処方法を容易に特定することができるようにする。【解決手段】ログ・データ510−513は、エラーの解析に使用する複数の機器内情報を保存する。取得機器内情報推定部507は、発生したエラーの解析に必要な機器内情報を推定する。取得機器内情報抽出部508は、取得機器内情報推定部507の推定結果に対応する機器内情報を、ログ・データ510−513に保存された機器内情報から抽出する。エラー送信部504は、取得機器内情報抽出部508が抽出した機器内情報と、エラーの発生を通知するエラーイベントとを、ネットワーク通信部505へ送る。【選択図】 図5

Description

本発明は、情報処理装置、その制御方法、およびプログラムに関し、より詳細には、情報処理装置でのエラー発生を通知する技術に関する。
従来より、情報処理装置の機能として、動作不良や故障等のエラーが発生した際に、そのエラーの種類を示すエラーコードを添えて、クラウドなどの管理サーバへ通知する機能が知られている。エラーコードとは、発生した現象の種類を示す数字であり、情報処理装置の開発者によって割り振られる。
修理作業員は、エラーが発生した情報処理装置の設置現場に向かう前に、予め、管理サーバからエラーコードを受け取って、発生した現象の種類や対処方法等を特定することができる。そのため、修理作業員は、修理に必要な道具や交換部品等を事前に準備して設置現場へ向かうことができるため、修理作業に要する時間や労力を低減できる。
ここで、発生し得るエラーの種類は、情報処理装置の機種やシステム構成等に応じて異なる。そのため、ある機種では想定されているエラーが、他のある機種では想定されていない場合がある。
一方、従来より、情報処理装置の開発コストを削減するために、異なる機種間でプログラムモジュールを共通化したり、他機種用に開発したプログラムを流用したりするといった、工夫が行われている。これらの工夫は、エラー通知機能を実現するプログラムにおいても、同じである。このため、情報処理装置が、その機種では想定されていないエラーのエラーコードを通知できるように構成されている場合があり、何らかの原因により、そのエラーコードを管理サーバへ通知してしまう場合がある。
これに対して、下記特許文献1のシステムでは、メッセージのフィルタリングを行うことで、未登録メッセージの出力を監視している。そして、特許文献1のシステムでは、未登録メッセージが所定回数以上出力されると、未登録メッセージが出力されていることと、そのメッセージとを、管理者に通知する。この通知により、修理作業員は、未登録メッセージが通知されたことを、正しく把握することができる。
特開2009−064098号公報
しかしながら、特許文献1のシステムでは、誤った通知が行われたとの警告を行うことができるものの、正しい通知を修理作業員へ行うことはできない。そのため、特許文献1のシステムでは、誤った通知が行われた場合には、修理作業員は、発生した現象の種類や対処方法等を特定することができず、このため、設置現場での修理時間や労力を低減するという、上述のような利便性を得ることができなかった。
本発明は、想定外のエラーが発生した場合に、そのエラーの種類や対処方法を容易に特定することができる情報処理装置を提供する。
上記の問題を解決するために、本発明の1実施形態に係る情報処理装置は、エラーの解析に使用する複数の機器内情報を保存する保存手段と、発生したエラーの解析に必要な機器内情報を推定する情報推定手段と、前記情報推定手段による推定結果に対応する機器内情報を、前記保存手段により保存された前記複数の機器内情報から抽出する情報抽出手段と、前記情報抽出手段が抽出した機器内情報と、エラーの発生を通知するエラーイベントとを、管理サーバへ送信する送信手段と、を備えることを特徴とする。
本発明によれば、想定されていないエラーのエラーコードが通知された場合でも、そのエラーの種類や対処方法等を容易に特定することができ、これにより、情報処理装置の修理時間や労力を低減できる。
本発明の各実施形態に係るシステムの全体構成を示すシステム構成図である。 本発明の各実施形態に係る管理サーバの構成を示すブロック図である。 本発明の各実施形態に係るクライアント端末の全体構成を示すブロック図である。 本発明の各実施形態に係る情報処理コントローラユニットの構成を示すブロック図である。 本発明の各実施形態に係るクライアント機のソフトウエア構成を示すブロック図である。 本発明の各実施形態に係るクライアント機のエラー送信動作を説明するためのフローチャートである。 (a)、(b)、(c)は実施形態1、2、3に係るクライアント機のエラー送信動作を説明するためのフローチャートである。 本発明の各実施形態に係るクライアント機のエラー送信動作を説明するためのフローチャートである。 本発明の実施形態4に係るクライアント機のエラー送信動作を説明するためのフローチャートである。
以下、本発明を実施するための形態について、図面を用いて説明する。
[実施形態1]
図1は、本実施形態に係るシステムの全体構成を示すシステム構成図である。
図1に示したように、ネットワーク100は、管理サーバ110と、複数台のクライアント機120(図1では2台のクライアント機120a、120bを示す)と、操作端末130とに接続されている。
管理サーバ110は、クライアント機120から通知されたイベントを、内部のストレージ(図示せず)に保存する機能を有する。このストレージに蓄積された情報は、稼働監視情報の分析などに利用される。
また、管理サーバ110には、ウェブアプリケーション(図示せず)がインストールされている。このウェブアプリケーションは、ネットワーク100を介して、操作端末130のウェブブラウザ等へ、閲覧データを提供する。
管理サーバ110としては、例えば、データストレージ機能と、情報処理計算機能と、ネットワーク通信機能とを具備する、コンピュータ等の汎用情報処理装置を使用できる。また、管理サーバ110を、汎用情報処理装置と同等の機能を有するクラウドサービスで実現してもよい。
クライアント機120は、本発明の「情報処理装置」に相当し、装置内で発生した事象を履歴イベントとして管理サーバ110へ通知する通信機能を有する。以下、クライアント機120として、複数種類の機能(例えばコピー機能やFAX機能等)を有する複合機を例に採って説明する。
操作端末130は、クライアント機120の開発担当者や修理作業員が使用する端末であり、ネットワーク100を介して管理サーバ110へアクセスして、保存データを閲覧するため等に使用される。操作端末130としては、例えば、パーソナルコンピュータ等を使用できる。
図2は、管理サーバ110のハードウエア構成を示すブロック図である。図2は、管理サーバ110として一般的なコンピュータ等を使用する場合の、構成例である。
図2に示したように、管理サーバ110は、コントローラユニット200、操作部209および表示部210を含んでいる。
コントローラユニット200は、CPU(Central Processing Unit)201を有する。CPU201は、システムバス208を介して、ROM202、RAM203、HDD204、操作部I/F205、表示部I/F206およびネットワークI/F207へ接続されている。このCPU201は、ブートプログラムを用いてOS(Operating System)を起動したのち、このOS上で各種アプリケーションプログラム等を実行する。
ROM(Read Only Memory)202は、CPU201に実行されるブートプログラム等を保存する。
RAM(Random Access Memory)203は、CPU201の作業領域として使用される。
HDD(Hard Disk Drive)204は、CPU201に実行されるOSや各種アプリケーションプログラム等を保存する。さらに、HDD204は、アプリケーションプログラムの、設定や履歴等のデータを保存する。
操作部I/F205は、CPU201と操作部209とを接続するインタフェースであり、操作部209を用いてユーザが入力した情報をCPU201に送る。操作部209は、例えばマウスやキーボード等である。
表示部I/F206は、CPU201と表示部210とを接続するインタフェースであり、表示部210に表示すべき画像のデータをCPU201から受け取って表示部210へ出力する。表示部210は、例えばディスプレイ等である。
ネットワークI/F207は、管理サーバ110を、ネットワーク100上の各装置へ接続して、情報の入出力を行うためのインタフェースである。
図3は、クライアント機120のハードウエア構成を示すブロック図である。上述したように、本実施形態のクライアント機120は、複合機である。
情報処理コントローラユニット301は、クライアント機120の動作に係る情報処理制御を統括するコントローラである。
プリンタコントローラユニット302は、情報処理コントローラユニット301の制御に基づいて、プリンタ304を制御する。プリンタ304は、通常の画像出力デバイスである。
スキャナコントローラユニット303は、情報処理コントローラユニット301の制御に基づいて、スキャナ305を制御する。スキャナ305は、通常の画像入力デバイスである。
図4は、クライアント機120(図3参照)に設けた情報処理コントローラユニット301のハードウエア構成を示すブロック図である。
図4に示したように、情報処理コントローラユニット301は、CPU401を有する。CPU401は、システムバス410を介して、ROM402、RAM403、ネットワークI/F405、操作部I/F406、画像処理部407、デバイスコントローラI/F408、および電源制御部409へ接続されている。このCPU401は、ブートプログラムを用いてOSを起動したのち、このOS上で各種アプリケーションプログラム等を実行する。
ROM402は、CPU401に実行されるブートプログラム等を保存する。
RAM403は、CPU401の作業領域として使用されるとともに、画像データを一時記憶するための画像メモリ領域としても使用される。
HDD404は、CPU401に実行されるOSや、各種アプリケーションプログラムや、画像データ等を保存する。さらに、HDD404は、アプリケーションプログラムの、設定や履歴等のデータを保存する。
ネットワークI/F405は、クライアント機120を、ネットワーク100を介して管理サーバ110へ接続し、情報の入出力を行うためのインタフェースである。
操作部I/F406は、CPU401と操作部306とを接続するインタフェースであり、ユーザが操作部306で入力した情報をCPU401に送る。操作部306は、例えばマウスやキーボード等である。
画像処理部407は、プリンタ304へ出力する画像の変換処理や、スキャナ305から入力した画像の変換処理を行う。併せて、画像処理部407は、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの処理を行う。
デバイスコントローラI/F408は、プリンタコントローラユニット302およびスキャナコントローラユニット303へ接続され、画像データの同期系や非同期系の変換を行う。
電源制御部409は、クライアント機120全体の電源制御を行う。具体的には、電源制御部409は、クライアント機120の電源オン/オフ制御や、通常通電状態と省電力状態との間の移行/復帰の制御等を行う。
情報処理コントローラユニット301には、エラー処理部500が、ソフトウエアで構成される。すなわち、エラー処理部500の各構成部は、HDD404に記憶されているプログラムを、RAM403にロードして、CPU401で実行することにより実現される。図5は、エラー処理部500の構成を示すブロック図である。
図5のエラー処理部500において、エラー管理部501は、クライアント機120内の各モジュールでエラーが発生した際にエラーコードを受けとる機能と、発生したエラーのログをエラー発生履歴ログ506として記録する機能とを有する。また、エラー管理部501は、エラーが発生したことをエラー回収部502へ伝える機能を有する。
本実施形態では、発生したエラーが、そのクライアント機120が属する機種で発生するエラーとして予め想定されているエラーか否かに応じて、エラーコードの決定方法が異なる。想定されているエラーが発生した場合は、そのエラーが発生したモジュールからエラー管理部501へ、通常のエラーコード、すなわちエラーの分類に応じて開発者等が予め割り当てたエラーコード(以下、「個別エラーコード」と記す)が送られる。一方、想定外のエラーが発生した場合は、そのエラーが発生したモジュールからエラー管理部501へ、想定外のエラーが発生したことを示すエラーコード(以下、「包括想定外エラーコード」と記す)が送られる。
エラー回収部502は、発生したエラーを管理サーバ110へ通知するための処理を行う。具体的には、エラー回収部502は、発生したエラーを、エラーイベントとして正規化する処理を行う。また、エラー回収部502は、エラー管理部501から入力したエラーコードに基づいて、そのエラーが、クライアント機120が属する機種で発生するエラーとして想定されているエラーか否かを判断する。
メッセージバッファ503は、正規化したエラーイベントを、エラー回収部502から受け取って保存する。正規化されたエラーイベントは、不揮発性の記憶領域へ保存することが望ましく、本実施形態ではHDD404に保存される。エラーイベントの正規化には、JSONなどの汎用フォーマットを用いることができる。
エラー送信部504は、例えばメッセージバッファ503への書き込みを検知するなどして、エラーイベントが発行されたことを検知する。エラーイベントの発行を検知したとき、エラー送信部504は、そのエラーイベントの情報をメッセージバッファ503から読み出し、ネットワーク通信部505を介して管理サーバ110へ送信する。後述するように、本実施形態では、想定外のエラーが発生した場合、エラーイベントと共にファイルを送信する。エラー送信部504は、送信するファイルを、抽出データ509として、デバッグログ510、ジョブログ511、プリントデータ512、スキャンデータ513等から取得する。
ネットワーク通信部505は、ネットワークI/F405を利用して、通信を行う。
エラー発生履歴ログ506は、上述したように、発生したエラーのログであり、HDD404に保持される。
取得機器内情報推定部507は、エラーコードが包括想定外エラーコードであるとエラー回収部502が判断した場合に、デバッグログ510やジョブログ511等の各種ログを取得する。そして、取得機器内情報推定部507は、取得したログに基づいて、発生したエラーの解析に必要な機器内情報を推定する(後述)。
取得機器内情報抽出部508は、取得機器内情報推定部507の推定結果に対応する機器内情報、すなわちエラー解析に必要であると推定された機器内情報のファイルパスを取得し、エラー回収部502へ通知する(後述)。
抽出データ509は、デバッグログ510、ジョブログ511、プリントデータ512、スキャンデータ513等の各種機器内情報の中から、エラー解析に必要な機器内情報として取得機器内情報推定部507で指定されて抽出されたデータである。
表1に、機器内情報の例を示す。
デバッグログ510は、クライアント機120内に設けられた各モジュールの動作情報の記録であり、主としてデバッグに使用される。
ジョブログ511は、例えばプリントやスキャンなど、クライアント機120が実行した処理の処理単位ごとの履歴である。ジョブログ511は、例えばジョブが開始された時刻や、実行結果、印刷枚数などの記録を含む。
プリントデータ512は、印刷用のデータであり、例えば、印刷する画像データそのものや、印刷のために画像データを変換したデータである。
スキャンデータ513は、例えばスキャナ305での読み取り処理で生成した画像データである。
Figure 2021026754
次に、図6を用いて、本実施形態に係るエラー処理を説明する。図6は、エラー管理部501がエラーを検知してから、エラー送信部504がエラーを送信するまでの処理を説明するフローチャートである。
以下の説明は、エラー管理部501が、外部(クライアント機120内の他のモジュール)から、包括想定外エラーコードを受信する場合の例である。但し、外部から個別エラーコードをそのまま受信し、エラー管理部501あるいはエラー回収部502によって、受信した個別エラーコードに対応するエラーが想定されたエラーか否かを判断することとしてもよい。例えば、クライアント機120内に、想定されたエラーの個別エラーコードをリスト化して記憶しておき、受信した個別エラーコードがリストに含まれない場合に、その個別エラーコードを包括想定外エラーコードへ書き換えることにしてもよい。
情報処理コントローラユニット301の例えばHDD404は、クライアント機120内で発生すると想定されているエラーのエラーコードを、リスト化して保存している。クライアント機120内の各モジュールでエラーが発生したとき、情報処理コントローラユニット301は、発生したエラーのエラーコードを、リスト化された各エラーコードリストと比較する。
情報処理コントローラユニット301は、発生したエラーの個別エラーコードがリストに存在しない場合、想定外のエラーが発生したと判断する。この場合、情報処理コントローラユニット301は、発生したエラーの個別エラーコードを、想定外のエラーコードが発生したことを示すエラーコード、すなわち包括想定外エラーコードに書き換えて、エラー処理部500へ送る。
一方、発生したエラーのエラーコードがリストに存在している場合、発生し得ると想定されているエラーが発生したと判断して、発生したエラーの個別エラーコードをそのままエラー処理部500へ送る。
エラー処理部500のエラー管理部501は、上述のように、受け取ったエラーコードのログをエラー発生履歴ログ506として記録するとともに、そのエラーコードをエラー回収部502へ伝える。
エラー回収部502は、受け取ったエラーコードが、想定外のエラーに対応するか否か、すなわち包括想定外エラーコードか否かを判定する(ステップS601)。包括想定外エラーコードではない場合、このエラーコード(すなわち個別エラーコード)を、メッセージバッファ503へ保存する。そして、エラー送信部504が、このエラーコードを用いてエラーイベントを生成し、ネットワーク通信部505を介して管理サーバ110へ送信して(ステップS605)、処理を終了する。
一方、ステップS601で包括想定外エラーコードであった場合、取得機器内情報推定部507が、発生したエラーの解析に必要な機器内情報を推定する(ステップS602)。ステップS602の推定処理の詳細については、図7(a)を用いて後述する。
続いて、取得機器内情報抽出部508が、取得機器内情報推定部507の推定結果に基づいて、エラーの解析に必要な関連する機器内情報を取得する(ステップS603)。ステップS603の取得処理の詳細については、図8を用いて後述する。
最後に、エラー送信部504が、この包括想定外エラーコードを含むエラーイベントを、エラー解析に必要な機器内情報とともに管理サーバ110へ送信して(ステップS604)、処理を終了する。
具体的には、エラー送信部504は、まず、メッセージバッファ503に保存されているエラーイベントを読み出す。次に、エラーイベントと共に送信するファイル、すなわちエラー解析に必要な機器内情報のファイルを取得する。ファイルを特定するファイルパスは、取得機器内情報抽出部508から読み出される。そして、取得されたファイルが、エラーイベントとともに、エラー送信部504から管理サーバ110へ送信される。
なお、本実施形態では、1種類の包括想定外エラーコードのみを使用したが、複数種類の包括想定外エラーコードを使用してもよい。
例えば、プリンタコントローラユニット302内で想定外のエラーが発生した場合と他の場合とで、異なる包括想定外エラーコードをエラー管理部501へ伝えることとしてもよい。この場合、取得機器内情報推定部507は、想定外のエラーの発生場所がプリンタコントローラユニット302内であることを把握できる。その結果、取得機器内情報推定部507は、例えば、エラーの解析に必要な機器内情報が、プリンタコントローラログであると推定することができる。
図7(a)は、ステップS602(図6参照)の処理を詳細に示すフローチャートである。この処理は、エラー処理部500によって実行される。エラー処理部500は、上述のように、情報処理コントローラユニット301のCPU401がプログラムを実行することによって実現される。
図7(a)の処理では、まず、取得機器内情報推定部507が、デバッグログ510から、直近システムログを取得する(ステップS701)。
次に、取得機器内情報推定部507は、直近システムログから、最も直近に発生したエラーを示すログを抽出する(ステップS702)。具体的には、取得機器内情報推定部507は、直近システムログからエラーが発生したことを示すログの行を抽出して、ログ記録時刻が最も新しい行のみ抽出する。
続いて、取得機器内情報推定部507は、抽出したログを用いて、エラーを発生させたプロセス(またはタスク)を特定する(ステップS703)。システムログには、ログを出力したプロセス、出力した時刻、ログの内容などが、記録されている。そのため、抽出した行から、エラーが発生したことを示すログを出力したプロセスを特定できる。
最後に、特定したプロセスから、エラー解析に必要な機器内情報を特定する(ステップS704)。
表2は、エラー解析に必要な機器内情報とプロセスとの関係の1例を示す。
Figure 2021026754
図8は、ステップS603(図6参照)の処理を詳細に示すフローチャートである。ステップS603の処理は、エラー処理部500の取得機器内情報抽出部508によって実行される。
まず、取得機器内情報抽出部508は、必要な機器内情報が保存されているファイルのパスを取得する(ステップS801)。具体的には、取得機器内情報抽出部508が、予め、各機器内情報と保存場所との対応情報を保存しておき、その対応情報を参照してファイルパスを取得する。但し、機器内情報と保存場所との対応情報は、取得機器内情報抽出部508以外の構成部に保存しておいてもよい。
次に、取得機器内情報抽出部508は、取得したファイルパスを用いて、エラー解析に必要な機器内情報を抽出する(ステップS802)。本実施形態では、抽出するファイルとしては、デバッグログ510、ジョブログ511、プリントデータ512、スキャンデータ513のいずれかが該当するが、これら以外の機器内情報を参照してもよい。
続いて、取得機器内情報抽出部508は、抽出した機器内情報を、ひとつのディレクトリにまとめて、圧縮する(ステップS803)。圧縮方法としては、zipやtar.gzなど、汎用のフォーマットを用いることができる。この圧縮により、送信時のネットワーク負荷を低減できる。
最後に、取得機器内情報抽出部508は、エラー送信時にエラーイベントとともに送信するファイルとして、この圧縮ファイルを指定する(ステップS804)。具体的には、取得機器内情報抽出部508が、圧縮したファイルのパスをエラー回収部502へ通知すると、エラー回収部502が、このファイルパスを、エラーイベントとともに、メッセージバッファ503へ保存する。
以上のようにして、クライアント機120は、管理サーバ110へ、包括想定外エラーコードと、想定外のエラーコードの発生原因を解析するために必要な機器内情報とを、送信する。修理作業員や開発担当者は、ネットワーク100を介して、例えばパソコン等の操作端末130を管理サーバ110へ接続する。そして、修理作業員等は、操作端末130のウェブブラウザを操作して、管理サーバ110のウェブアプリケーションへアクセスし、管理サーバ110内の包括想定外エラーコードや機器内情報を閲覧する。
これにより、修理作業員は、包括的想定外エラーコードを確認して、想定外のエラーが発生したことを理解することができる。一方、開発担当者は、エラーイベントとあわせて送信された機器内情報を参照することで、エラーの原因や対処方法を検討することができる。本実施形態では、機器内の全ての情報ではなく、エラー解析に必要な情報のみを送信するため、データ送信時のネットワーク負荷の軽減や、開発担当者のエラー解析所要時間の短縮を図ることができる。
[実施形態2]
以下、実施形態2について、図7(b)を用いて説明する。本実施形態に係るシステムや動作は、以下に説明する事項を除いて、上述の実施形態1と同じである。
上述の実施形態1では、エラーが発生したプロセス/タスクからエラーが発生した箇所を特定することで、エラー解析に必要な機器内情報を推定した(図6のステップS602、図7のステップS703参照)。
これに対して、本実施形態では、エラー発生時またはエラー発生直前に実行していたジョブから、エラー解析に必要な機器内情報を推定する。
図7(b)は、ステップS602(図6参照)の処理を詳細に示すフローチャートである。この処理は、エラー処理部500の取得機器内情報推定部507によって実行される。エラー処理部500は、上述のように、情報処理コントローラユニット301のCPU401がプログラムを実行することによって実現される。
まず、取得機器内情報推定部507は、ジョブログ511を取得する(ステップS711)。
次に、取得機器内情報推定部507は、取得したジョブログ511から、エラー発生時またはエラー発生直前に実行していたジョブを特定する(ステップS712)。具体的には、取得機器内情報推定部507は、ジョブログ511から、実行したジョブのそれぞれについて、ジョブ開始時刻とジョブ終了時刻とを取得し、エラー発生時刻と比較することで、ジョブを特定する。
そして、取得機器内情報推定部507は、特定したジョブから、エラー解析に必要な機器内情報を指定する(ステップS713)。
表3は、エラー解析に必要な機器内情報とジョブとの関係の1例を示す。
Figure 2021026754
上述の実施形態1では、開発担当者は、エラーが発生した箇所を特定することはできるが、どのような経緯でエラーが発生したかを特定することはできない。これに対して、本実施形態では、エラーが発生した際に実行していたジョブを特定するので、エラーが発生するまでの経緯を特定することができる。これにより、開発担当者がエラーを解析する時に、エラーのきっかけとなる要因を特定したり、エラーが起こる原因となり得る要素を限定したりすることができる。
本実施形態は、上述の実施形態1と併用することも可能である。すなわち、プロセス/タスクから推定した機器内情報とジョブから推定した機器内情報の両方を、管理サーバ110へ送信することにしてもよい。
[実施形態3]
以下、実施形態3について、図7(c)を用いて説明する。本実施形態に係るシステムや動作は、以下に説明する事項を除いて、上述の実施形態1と同じである。
本実施形態では、個別エラーコードから、エラー解析に必要な機器内情報を推定する点で、上述の実施形態1、2と異なる。
図7(c)は、図6のステップS602での処理を詳細に示すフローチャートである。この処理は、エラー処理部500の取得機器内情報推定部507によって実行される。エラー処理部500は、上述のように、情報処理コントローラユニット301のCPU401がプログラムを実行することによって実現される。
まず、取得機器内情報推定部507は、エラーが発生したとき、個別エラーコードから、メインコードを取得する(ステップS721)。ここで、メインコードとは、発生したエラーの主分類を示す。主分類が同じエラー群は、それぞれエラーの内容やエラー発生場所が同じである。本実施形態では、エラー発生時に、エラー管理部501は、包括的想定外エラーコードと共に、個別エラーコードを管理する。但し、個別エラーコードを取得する方法は、他の方法でもよい。
次に、取得機器内情報推定部507は、個別エラーコードから取得したメインコードが定義されているものか否かを判定する(ステップS722)。メインコードが定義されていなかった場合、発生したエラーのコード自体からは現象を理解することができないため、全ての機器内情報を指定して(ステップS724)、処理を終了する。
一方、ステップS722でメインコードが定義されていると判断した場合、エラー解析に必要な機器内情報うちメインコードに対応したものを指定して(ステップS723)、処理を終了する。これにより、エラーの詳細を特定することはできないとしても、概要を特定することは可能となる。
表4は、エラー解析に必要な機器内情報と、メインコードとの関係の1例を示す。
Figure 2021026754
本実施形態に係る方法により、想定外のエラーが発生したときに、エラーそのものが不明なのか、あるいはエラーの詳細のみが不明なのかを、判断することができる。そして、エラーの詳細のみが不明の場合は、開発担当者がエラーの解析を行うために必要な情報を特定することができる。
本実施形態は、上述の実施形態1、2の一方または両方と併用することも可能である。すなわち、プロセス/タスクから推定した機器内情報と、ジョブから推定した機器内情報との少なくとも一方を、メインコードから推定した機器内情報とともに、管理サーバ110へ送信してもよい。
[実施形態4]
以下、実施形態4について、図9を用いて説明する。本実施形態に係るシステムや動作は、以下に説明する事項を除いて、上述の実施形態1〜3と同じである。
上記実施形態1〜3では、クライアント機120のエラーコードが包括想定外コードである場合の対処を、自動的に行っている。しかし、包括想定外コードが何度も発生するケースでは、その発生原因が同一であるケースも多いため、機器内情報を毎回通知しなくても、最初の一回だけ通知すれば、包括想定外コードが発生した原因の詳細を解析することは可能である。
このため、本実施形態では、包括想定外コードとなるエラーが発生した場合に、予め定めた条件に応じて、同じ機器内情報の取得・送信の繰り返しを抑制する。なお、本実施形態では、「エラー」という用語を使用しているが、機器の動作を止めるエラーに限定するものではなく、動作を継続可能なアラームや、用紙の詰まりであるジャム等であっても良い。
図9は、エラー処理部500のエラー管理部501がエラーを検知してから、エラー送信部504がエラーを示すコードを送信するまでの、処理の詳細を示すフローチャートである。
図9において、ステップS901、S904、S906、S907で示す処理は、それぞれ図6中のステップS601、S602、S604、S605の処理と同一である。
以下に説明するように、本実施形態では、エラー管理部501が、包括想定外エラーコードを管理するだけでなく、実際に発生した個別エラーコードを管理する(後述のステップS902参照)。更に、本実施形態では、エラー管理部501は、機器内情報のうち、情報処理コントローラユニット301を動作させるプログラムのバージョン(コントローラのバージョン)を、包括想定外エラーコードと共に管理する(後述のステップS903参照)。エラー管理部501は、これらの管理のために、実際に発生した個別エラーコードや、エラー発生時におけるコントローラのバージョンを、エラー発生履歴ログ506へ記録する(後述のステップS905参照)。
以下、図9のエラー処理について、詳細に説明する。
まず、ステップS901で、エラーコードが包括想定外エラーコードか否かを判断する。包括想定外エラーコードであった場合、エラー管理部501は、実際に発生した個別エラーコードと、エラー発生履歴ログ506中の個別エラーコードとを比較し、過去に同じ個別エラーコードが発生したか否かを確認する(ステップS902)。過去に同じ個別エラーコードが発生していなかった場合は、ステップS907の処理に移る。
一方、過去に同じ個別エラーコードが発生していた場合、エラー管理部501は、ステップS903にて、過去に個別エラーコードが発生していた際のコントローラのバージョン情報を、エラー発生履歴ログ506中から取得する。さらに、エラー管理部501は、取得したバージョン情報を、機器構成情報中のコントローラのバージョン情報と比較し、バージョンが同一ではなかった場合は、ステップS904の処理に移る。
ステップS903にてバージョンが同一だった場合は、ステップS907の処理を実行する。このステップS907では、エラー回収部502が、受け取ったエラーコードを、メッセージバッファ503に、エラーイベントとして保存する。そして、エラー送信部504が、このエラーコードを用いてエラーイベントを生成し、ネットワーク通信部505を介して管理サーバ110へ送信して、処理を終了する。
ステップS904では、取得機器内情報推定部507が、発生したエラーの解析に必要な機器内情報を推定する。この推定処理は、上記実施形態1〜3の何れかにおけるステップS602の処理と同じでよい(図7(a)〜(c)参照)。また、上記実施形態1〜3おけるステップS602の処理を2つ以上併用してもよいことは、もちろんである。
続いて、ステップS905で、エラー管理部501は、ステップS603と同様、機器内情報を取得するための処理を行う。この処理では、エラー管理部501が、包括想定外エラーコードと共に、実際に発生した個別エラーコードと、情報処理コントローラユニット301のプログラムのバージョン(コントローラのバージョン)とを、エラー発生履歴ログ506に記録する。
その後、ステップS906で、エラー送信部504が、この包括想定外エラーコードを含むエラーイベントを、エラー解析に必要な機器内情報とともに管理サーバ110へ送信して、処理を終了する。
本実施形態に示す方法によれば、クライアント機120は、過去に同一の個別エラーコードが発生していた場合に、機器内情報の送信を抑制することができる(ステップS902参照)。
さらに、本実施形態では、コントローラの現状バージョンを、過去の個別エラーコード発生時のバージョンを比較し、これらのバージョンが異なっている場合に限り、機器内情報の送信を行う(ステップS903,S907参照)。これにより、個別エラーコードが発生した場合に、情報処理コントローラユニット301のプログラム・バージョンが同一であれば、同一のエラーであると判断して、機器内情報の送信が抑制される。
100 ネットワーク
110 管理サーバ
120a、120b クライアント機
130 操作端末
500 エラー処理部
501 エラー管理部
502 エラー回収部
503 メッセージバッファ
504エラー送信部
505 ネットワーク通信部
506 エラー発生履歴ログ
507 取得機器内情報推定部
508 取得機器内情報抽出部
509 抽出データ
510 デバッグログ
511 ジョブログ
512 プリントデータ
513 スキャンデータ

Claims (10)

  1. エラーの解析に使用する複数の機器内情報を保存する保存手段と、
    発生したエラーの解析に必要な機器内情報を推定する情報推定手段と、
    前記情報推定手段による推定結果に対応する機器内情報を、前記保存手段により保存された前記複数の機器内情報から抽出する情報抽出手段と、
    前記情報抽出手段が抽出した機器内情報と、エラーの発生を示すエラーイベントとを、管理サーバへ送信する送信手段と
    を備えることを特徴とする情報処理装置。
  2. 発生したエラーが、予め想定されたエラーであるか否かを判定するエラー判定手段をさらに備え、
    前記送信手段は、
    想定されたエラーである場合、前記エラーイベントのみを送信し、
    想定外のエラーである場合、前記情報抽出手段に抽出された前記機器内情報を、前記エラーイベントとともに送信する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記送信手段は、
    想定されたエラーである場合、前記エラーイベントに、エラーの分類に応じて個別に定めた個別エラーコードを格納して送信し、
    想定外のエラーである場合、前記エラーイベントに、複数の前記個別エラーコードを包括するように定めた包括想定外エラーコードを格納して送信する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記情報推定手段は、
    発生したエラーを示す前記個別エラーコードを特定し、
    特定された前記個別エラーコードの主分類を示すメインコードを特定し、
    特定された前記メインコードから、エラーの解析に必要な前記機器内情報を特定する
    ことを特徴とする請求項3に記載の情報処理装置。
  5. 前記送信手段は、想定外のエラーの発生原因に応じて、予め定めた複数種類の前記包括想定外エラーコードの何れか一つを送信することを特徴とする請求項3に記載の情報処理装置。
  6. 前記送信手段は、
    発生した想定外のエラーが、過去に発生したエラーと同一の分類に属する場合には、前記エラーイベントのみを送信し、
    発生した想定外のエラーが、過去に発生したエラーと異なる分類に属する場合には、前記機器内情報を、前記エラーイベントとともに送信する、
    ことを特徴とする請求項2乃至5の何れか1項に記載の情報処理装置。
  7. 前記情報推定手段は、
    最も直近に発生したエラーを特定し、
    特定された前記エラーに対応するプロセスまたはタスクを特定し、
    特定された前記プロセスまたはタスクから、エラーの解析に必要な前記機器内情報を特定する
    ことを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
  8. 前記情報推定手段は、
    エラーの発生時刻を特定し、
    特定された前記エラー発生時刻またはその直前に実行していたジョブを特定し、
    特定された前記ジョブに応じて、エラーの解析に必要な前記機器内情報を特定する
    ことを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
  9. 情報処理装置における制御方法であって、
    エラーの解析に使用する複数の機器内情報を保存する保存工程と、
    発生したエラーの解析に必要な機器内情報を推定する情報推定工程と、
    前記情報推定工程での推定結果に対応する機器内情報を、前記保存工程で保存された前記複数の機器内情報から抽出する情報抽出工程と、
    前記情報抽出工程で抽出された機器内情報と、エラーの発生を示すエラーイベントとを、管理サーバへ送信する送信工程と
    を有することを特徴とする制御方法。
  10. 請求項1乃至8のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。

JP2020042401A 2019-08-06 2020-03-11 情報処理装置、その制御方法、およびプログラム Pending JP2021026754A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019144375 2019-08-06
JP2019144375 2019-08-06

Publications (1)

Publication Number Publication Date
JP2021026754A true JP2021026754A (ja) 2021-02-22

Family

ID=74664876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020042401A Pending JP2021026754A (ja) 2019-08-06 2020-03-11 情報処理装置、その制御方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2021026754A (ja)

Similar Documents

Publication Publication Date Title
EP1195681B1 (en) Systems and method for diagnosing electronic systems
US7653839B2 (en) Image input/output device, information processing method, and storage medium
US7281040B1 (en) Diagnostic/remote monitoring by email
US7418634B2 (en) Remote monitoring system and remote monitoring method
JP7346633B2 (ja) 情報処理装置、情報処理装置の制御方法、及び、プログラム
JP2001188765A (ja) 分散コンピューティング環境で複数の関係する障害を表す障害情報を参照する技法
JP2008015568A (ja) メンテナンスシステムおよびメンテナンスシステムの制御方法およびホストサーバおよびホストサーバのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
JP2009211256A (ja) 情報処理装置、ジョブ処理方法、プログラム、記憶媒体
JP6468099B2 (ja) 情報処理システム、故障原因診断方法及びプログラム
JP2007328641A (ja) 画像形成装置の管理装置および管理方法
JP2017224051A (ja) 情報処理装置、情報処理方法およびプログラム
US9298537B2 (en) Detection, determination, and external error log storage of a fault condition in a user interface
JP4973205B2 (ja) 情報処理装置及びログ取得方法並びにプログラム
JP5381059B2 (ja) 機器、ログ記録制御方法、及びプログラム
US20040078783A1 (en) Tool and system for software verification support
US9906680B2 (en) Information processing system, information processing apparatus and information processing method
JP2021026754A (ja) 情報処理装置、その制御方法、およびプログラム
JP6740583B2 (ja) 情報処理システム、情報処理装置、及び情報処理方法
JP2017201736A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP4928480B2 (ja) ジョブ処理システムおよびジョブ管理方法
JP7159016B2 (ja) ネットワーククライアント及びその制御方法
JP2016122882A (ja) 情報処理システム、情報処理装置、画像処理サーバ、情報処理装置の制御方法、画像処理サーバの制御方法、及びプログラム
JP2008282254A (ja) 障害診断装置、方法及びプログラム
JP2004192293A (ja) ソフトウェア検証支援ツール
CN110362464B (zh) 软件分析方法及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240430