(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-28
(45)【発行日】2023-12-06
(54)【発明の名称】情報処理装置、システム、情報処理方法、及びプログラム
(51)【国際特許分類】
G06F 11/36 20060101AFI20231129BHJP
H04M 1/00 20060101ALI20231129BHJP
G06F 11/34 20060101ALI20231129BHJP
H04N 1/00 20060101ALI20231129BHJP
B41J 29/38 20060101ALI20231129BHJP
【FI】
G06F11/36 164
H04M1/00 U
G06F11/34 176
H04N1/00 127B
B41J29/38 801
(21)【出願番号】P 2019201841
(22)【出願日】2019-11-06
【審査請求日】2022-09-14
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100089118
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】中村 光男
【審査官】武田 広太郎
(56)【参考文献】
【文献】特開2014-021874(JP,A)
【文献】特開2018-125005(JP,A)
【文献】特開2015-049630(JP,A)
【文献】特開2012-216982(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/36
H04M 1/00
G06F 11/34
H04N 1/00
B41J 29/38
(57)【特許請求の範囲】
【請求項1】
ミドルウェアを有する所定の装置の機能を前記ミドルウェア経由で利用する利用手段と、
前記ミドルウェアの開発者向け機能が有効であるときに開発者向けメニューにより選択された要求に応じて動作を変更する変更手段と、
前記開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する生成手段と、
前記情報を前記所定の装置に送信する送信手段と、
アプリケーションから前記所定の装置への要求の伝送を中継する中継アプリケーションが利用されたタイミングで情報処理装置の画面の情報を画面ログとして取得するログ取得手段と、
を備えたことを特徴とする情報処理装置。
【請求項2】
前記所定の装置の機能は、印刷機能を含み、
前記利用手段は、前記所定の装置のログと前記情報処理装置のログを前記所定の装置で印刷させる
ことを特徴とする請求項
1に記載の情報処理装置。
【請求項3】
前記ミドルウェアの利用方法の間違いに対する対策を表示する対策提示手段をさらに備えた
ことを特徴とする請求項1
又は2に記載の情報処理装置。
【請求項4】
所定の装置と、
前記所定の装置と通信可能である情報処理装置と、
を備え、
前記情報処理装置は、
ミドルウェアを有する所定の装置の機能を前記ミドルウェア経由で利用する利用手段と、
前記ミドルウェアの開発者向け機能が有効であるときに開発者向けメニューにより選択された要求に応じて動作を変更する変更手段と、
前記開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する
生成手段と、
前記情報を前記所定の装置に送信する送信手段と、
アプリケーションから前記所定の装置への要求の伝送を中継する中継アプリケーションが利用されたタイミングで前記情報処理装置の画面の情報を画面ログとして取得するログ取得手段と、
を有する
ことを特徴とするシステム。
【請求項5】
ミドルウェアを有する所定の装置の機能を前記ミドルウェア経由で利用するステップと、
前記ミドルウェアの開発者向け機能が有効であるときに開発者向けメニューにより選択された要求に応じて動作を変更するステップと、
前記開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する
ステップと、
前記情報を前記所定の装置に送信するステップと、
アプリケーションから前記所定の装置への要求の伝送を中継する中継アプリケーションが利用されたタイミングで情報処理装置の画面の情報を画面ログとして取得するステップと、
を備えたことを特徴とする情報処理方法。
【請求項6】
情報処理装置に、
ミドルウェア経由で所定の装置の機能を利用するステップと、
前記ミドルウェアの開発者向け機能が有効であるときに開発者向けメニューにより選択された要求に応じて動作を変更するステップと、
前記開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する
ステップと、
前記情報を前記所定の装置に送信するステップと、
アプリケーションから前記所定の装置への要求の伝送を中継する中継アプリケーションが利用されたタイミングで前記情報処理装置の画面の情報を画面ログとして取得するステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、システム、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
所定の装置と情報処理装置とが通信可能に接続されたシステムでは、ユーザから情報処理装置で受けた要求に応じて、情報処理装置が所定の装置のミドルウェア経由で所定の装置の機能を利用することがある。
【0003】
特許文献1には、携帯端末装置において、アプリケーションで受けたユーザの操作ログをログデータとして蓄積し、自己診断の要求をユーザからそのアプリケーションで受けるとログデータとシナリオデータとを比較して操作ミスの診断を行うことが記載されている。これにより、特許文献1によれば、ユーザが通常使用しているアプリケーションを利用して操作ミスの診断をユーザ自身が行うことができるとされている。
【0004】
特許文献2には、携帯情報装置とMFPとが通信可能に接続された画像処理連携システムにおいて、携帯情報装置がMFPからファイルについてのログを取得して自装置内のそのファイルについてのログと併せて管理することが記載されている。これにより、特許文献2によれば、携帯情報装置とMFPとに跨って取り扱われたファイルの追跡が簡単になるとされている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の技術では、蓄積されるログデータは、ユーザの携帯端末装置の操作に関するものに過ぎず、開発者による不具合解析のためには、情報が不足している可能性がある。
【0006】
特許文献2に記載の技術では、携帯情報装置とMFPとについて併せて管理されるログがファイルについてのログに過ぎず、開発者による不具合解析のためには、情報が不足している可能性がある。
【0007】
本発明は、上記に鑑みてなされたものであって、開発者による不具合解析のための情報を一括して管理できる情報処理装置、システム、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決し、目的を達成するために、本発明の1つの側面にかかる情報処理装置は、ミドルウェアを有する所定の装置の機能を前記ミドルウェア経由で利用する利用手段と、前記ミドルウェアの開発者向け機能が有効であるときに開発者向けメニューにより動作を変更する変更手段と、前記開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する生成手段と、前記情報を前記所定の装置に送信する送信手段と、アプリケーションから前記所定の装置への要求の伝送を中継する中継アプリケーションが利用されたタイミングで情報処理装置の画面の情報を画面ログとして取得するログ取得手段とを有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、開発者による不具合解析のための情報を一括して管理できるという効果を奏する。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施形態にかかるシステムの概略構成を示す図である。
【
図2】
図2は、実施形態における各装置の概略的なハードウェア構成を示す図である。
【
図3】
図3は、実施形態における情報処理装置の機能構成を示す図である。
【
図4】
図4は、実施形態にかかるシステムの動作を示すシーケンス図である。
【
図5】
図5は、実施形態におけるジョブログの例を示す図である。
【
図6】
図6は、実施形態におけるAPI(Application Programming Interface)ログの例を示す図である。
【
図7】
図7は、実施形態における画面ログの例を示す図である。
【
図8】
図8は、実施形態におけるパケットログの例を示す図である。
【
図9】
図9は、実施形態におけるエラーログの例を示す図である。
【
図10】
図10は、実施形態の第1の変形例にかかるシステムの動作を示すシーケンス図である。
【
図11】
図11は、実施形態の第2の変形例にかかるシステムの動作を示すシーケンス図である。
【
図12】
図12は、実施形態の第3の変形例にかかるシステムの動作を示す図である。
【
図13】
図13は、実施形態及びその第1~第3の変形例における情報処理装置のハードウェア構成例を示す図である。
【
図14】
図14は、実施形態及びその第1~第3の変形例における所定の装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【0011】
(実施形態)
本発明の実施形態にかかるシステム100は、所定の装置と情報処理装置とが通信可能に接続されたシステムである。所定の装置1は、ミドルウェアを有し、例えば、ミドルウェア経由で受けた要求に応じて画像形成を行う画像形成装置であり、スキャナ機能、プリンタ機能、ファクシミリ機能などの複数の機能を有する複合機(MFP:Multifunction Peripheral)であってもよい。情報処理装置は、例えば、タブレット又はスマートフォンなどの携帯端末である。このシステムでは、ユーザから情報処理装置で受けた要求に応じて、情報処理装置が所定の装置のミドルウェア経由で所定の装置の機能を利用することがある。
【0012】
例えば、情報処理装置において、アプリケーションで受けたユーザの操作ログをログデータとして蓄積し、自己診断の要求をユーザからそのアプリケーションで受けるとログデータとシナリオデータとを比較して操作ミスの診断を行う場合を考える。この場合、蓄積されるログデータは、ユーザの情報処理装置の操作に関するものに過ぎず、開発者による不具合解析のためには、情報が不足している傾向にある。
【0013】
また、システムにおいて、情報処理装置が所定の装置からファイルについてのログを取得して自装置内のそのファイルについてのログと併せて管理する場合を考える。この場合、情報処理装置と所定の装置とについて併せて管理されるログがファイルについてのログに過ぎず、開発者による不具合解析のためには、情報が不足している傾向にある。
【0014】
そこで、本実施形態では、システムにおいて、情報処理装置で開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成し所定の装置に送信することで、情報処理装置の統合されたログと所定の装置のログとを一括化することを可能にし、開発者による不具合解析のための情報の一括管理を可能にする。
【0015】
具体的には、システム100は、例えば、
図1に示すように構成され得る。
図1は、実施形態にかかるシステム100の概略構成を示す図である。
【0016】
システム100は、所定の装置1、情報処理装置2、ネットワーク3、及びログサーバ30を有する。所定の装置1、情報処理装置2及びログサーバ30は、ネットワーク3を介して互いに通信可能に接続されている。ネットワーク3は、無線通信回線及び/又は有線通信回線を含む。無線通信回線は、無線LAN(Local Area Network)、携帯電話回線などを含む。有線通信回線は、有線LAN、WAN(Wide Area Network)などを含む。
【0017】
所定の装置1は、例えば、要求に応じて画像形成を行う画像形成装置である。所定の装置1は、ミドルウェア及び複数の機能を有し、受けた要求をミドルウェア経由で複数の機能へ伝達可能である。複数の機能は、コピー機能、スキャナ機能、プリンタ機能、ファクシミリ機能などを含む。所定の装置1は、これらの複数の機能を有する複合機(MFP)であってもよい。なお、
図1では、図示及び説明の簡略化のため、ネットワーク3に所定の装置1(MFP)が1台接続された構成が例示されているが、ネットワーク3には複数だの所定の装置1(MFP)が接続されていてもよい。
【0018】
情報処理装置2は、ユーザからの要求を受けて所定の装置1へ伝送することが可能な装置であり、例えば、タブレット、携帯型のパーソナルコンピュータ、又はスマートフォンなどの携帯端末であってもよいし、設置型のパーソナルコンピュータ、ワークステーションなどの情報端末であってもよい。また、情報処理装置2は、自律的に要求を生成して所定の装置1へ伝送することが可能な装置であってもよい。情報処理装置2は、アプリケーション及び中継アプリケーションを有する。アプリケーションは、ユーザからの要求を受けると、又は、自律的に要求を生成すると、その要求を中継アプリケーションへ供給する。中継アプリケーションは、受けた要求をネットワーク3経由で所定の装置1のミドルウェアへ伝送する。これにより、情報処理装置2は、要求を所定の装置1のミドルウェア経由で複数の機能へ伝達でき、所定の装置1のミドルウェア経由で所定の装置1の機能を利用することができる。
【0019】
ログサーバ30は、所定の装置1及び情報処理装置2のログをそれぞれ保存するサーバである。ログサーバ30は、所定の装置1からログを受けると、受けたログを所定の装置1に関連付けて蓄積する。ログサーバ30は、情報処理装置2からログを受けると、受けたログを情報処理装置2に関連付けて蓄積する。
【0020】
次に、システム100における各装置の概略的なハードウェア構成について
図2を用いて説明する。
図2は、実施形態における各装置の概略的なハードウェア構成を示す図である。
【0021】
所定の装置1は、例えば複合機(MFP)であり、制御装置11、表示装置12、主記憶装置13、操作入力装置14、外部記憶装置15、印刷装置16、画像読取り装置17、通信装置18、及びバス19有している。制御装置11、表示装置12、主記憶装置13、操作入力装置14、外部記憶装置15、印刷装置16、画像読取り装置17、通信装置18は、バス19を介して互いに接続されている。主記憶装置13は、制御装置11により実行されるプログラムのワークエリアとして機能するRAM等からなる。外部記憶装置15は、例えばハードディスクドライブであり、各種の制御プログラムやアプリケーションプログラム、画像データ等を格納している。制御装置11は、必要なプログラム等を外部記憶装置15から主記憶装置13へとロードして実行し、バス19を通じて所定の装置1全体を制御する。
【0022】
情報処理装置2は、例えばスマートフォンであり、制御装置23、表示装置24、主記憶装置25、操作入力装置26、外部記憶装置27、通信装置28、及びバス29有している。制御装置23、表示装置24、主記憶装置25、操作入力装置26、外部記憶装置27、及び通信装置28は、バス29を介して互いに接続されている。主記憶装置25は、制御装置23により実行されるプログラムのワークエリアとして機能するRAM等からなる。外部記憶装置27は、例えばハードディスクドライブであり、各種の制御プログラムやアプリケーションプログラム、画像データ等を格納している。制御装置23は、必要なプログラム等を外部記憶装置27から主記憶装置25へとロードして実行し、バス29を通じて情報処理装置2全体を制御する。
【0023】
ログサーバ30は、通信装置31、記憶装置32、及びバス33を有している。通信装置31及び記憶装置32は、バス33を介して接続されている。記憶装置32は、所定の装置1及び情報処理装置2のログがそれぞれ格納されている。
【0024】
所定の装置1の通信装置18と情報処理装置2の通信装置28とログサーバ30の通信装置31とは、ネットワーク3を介して互いに通信可能に接続されている。
【0025】
次に、情報処理装置2の機能構成について
図3を用いて説明する。
図3は、情報処理装置2の機能構成を示す図である。
図2に示す外部記憶装置27に格納されたプログラムが制御装置23により実行されることで、主記憶装置25内に
図3に示すような機能構成が、コンパイル時に一括して又は処理の進行に応じて順次に展開され得る。
【0026】
情報処理装置2は、ソフトウェアとしてアプリケーション及び中継アプリケーションを有し、アプリケーション及び中継アプリケーションに対応した構成として、それぞれ、アプリケーション21及び中継アプリケーション22を有する。アプリケーション21は、入力部211、利用部212、変更部213、送信部214、及び表示制御部215を有する。中継アプリケーション22は、要求管理部(生成手段)221及びログ管理部222を有する。ログ管理部222は、API(Application Programming Interface)ログ管理部222a、ジョブログ管理部222b、画面ログ管理部(ログ取得手段)222c、パケットログ管理部222d、エラーログ管理部222eを有する。
【0027】
入力部211は、ユーザからの要求を受けると、その要求を利用部212へ供給する。利用部212は、ユーザの要求に応じて、又は、自律的に情報処理装置2内で生成された要求に応じて、所定の装置1の機能をミドルウェア経由で利用する。利用部212は、要求を要求管理部221経由で所定の装置1のミドルウェアに伝送する。所定の装置1では、ミドルウェアが要求をその要求に応じた機能へ伝達し、要求を受けた機能がその要求に応じた動作を行う。
【0028】
このとき、要求管理部221は、その動作に応じて、ログ管理部222へログの記録要求を供給する。その動作がAPIに関連していれば、要求管理部221がAPIログ管理部222aへログの記録要求を供給し、APIログ管理部222aは、APIログを生成し保持する。その動作がジョブに関連していれば、要求管理部221がジョブログ管理部222bへログの記録要求を供給し、ジョブログ管理部222bは、ジョブログを生成し保持する。その動作が画面に関連していれば、要求管理部221が画面ログ管理部222cへログの記録要求を供給し、画面ログ管理部222cは、画面ログを生成し保持する。その動作がパケットに関連していれば、要求管理部221がパケットログ管理部222dへログの記録要求を供給し、パケットログ管理部222dは、パケットログを生成し保持する。その動作がエラーに関連していれば、要求管理部221がエラーログ管理部222eへログの記録要求を供給し、エラーログ管理部222eは、エラーログを生成し保持する。
【0029】
変更部213は、所定の装置1でミドルウェアの開発者向け機能が有効であるときに、所定の装置1における又は自身における開発者向けメニューにより選択された要求に応じて動作を変更する。例えば情報処理装置2がジョブ実行処理モードで動作している状態で、開発者向けメニューでログ取得処理が選択されると、変更部213は、情報処理装置2の動作モードをジョブ実行処理モードからログ取得処理モードへ変更し、ログ取得処理モードで動作するように要求管理部221へ指示する。要求管理部221は、その指示に応じて、ログ取得要求をログ管理部222におけるAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eへそれぞれ供給する。APIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eは、それぞれ、ログ取得要求に応じて、各ログ(例えば、APIログ、ジョブログ、画面ログ、パケットログ、エラーログ)を要求管理部221へ返す。
【0030】
要求管理部221は、開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成する。要求管理部221は、各ログをログ管理部222から受けると、各ログを統合した情報を生成する。要求管理部221は、その情報をネットワーク3経由で所定の装置1へ送信する。これに応じて、所定の装置1は、自身のログ(例えば、MFPログ)を取得し、そのログを受信された情報にさらに統合した情報を生成して所定の方法で出力する。これにより、情報処理装置2の統合されたログと所定の装置1のログとが一括化された情報を開発者に閲覧させることなどにより、開発者による不具合解析のための情報の一括管理を可能にすることができる。
【0031】
次に、システム100の動作について
図4を用いて説明する。
図4は、システム100の動作を示すシーケンス図である。
【0032】
ユーザが情報処理装置(携帯端末)2のアプリケーション21で接続する所定の装置(MFP)1を選択する。アプリケーション21は、例えばIPアドレスなど所定の装置(MFP)1を特定するための情報をユーザから、又は所定の装置(MFP)1から取得する。アプリケーション21は、ユーザからIPアドレスの入力を受け付けるタッチパネル画面を表示することができる。また、アプリケーション21は、情報処理装置(携帯端末)2が有する撮像装置(例えば、カメラ)を用いて所定の装置(MFP)1の操作画面に表示された(又は所定の装置(MFP)1の筐体に張り付けられた)QRコード(登録商標)を撮影しQRコードを解析することでIPアドレスを取得しても良いし、NFC(Near Field Communication)インターフェースなどの近距離無線通信手段によって所定の装置(MFP)1からIPアドレスを取得しても良い。
【0033】
図4に示すように、情報処理装置(携帯端末)2のジョブ実行処理モードでは、アプリケーション21で所定の装置(MFP)1の機能(スキャン機能など)を利用する。アプリケーション21は、所定の装置(MFP)1と連携することで、プリント機能、コピー機能、スキャン機能などの所定の装置(MFP)1の有する機能を利用することができる。アプリケーション21は、各種機能のボタンを表示装置24に表示し、ユーザから操作入力装置26で選択されたボタンに対応する機能を実行するように所定の装置(MFP)1に対してジョブ要求を送信する。
【0034】
アプリケーション21で実行するジョブのログは、中継アプリケーション22内のログ管理部222に保存する。中継アプリケーション22は、アプリケーション21から要求に応じて所定の装置(MFP)1がジョブを実行した場合に、そのジョブについてジョブログを保存する。
【0035】
例えば、中継アプリケーション22のログ管理部222において取得・管理されるジョブログは、
図5に示すような情報であってもよい。
図5は、ジョブログの例を示す図である。ジョブログには、ログID、ログタイプ、開始時刻、終了時刻、ジョブ状態、操作元、ユーザ名、機器IDが含まれ得る。ログIDは、ジョブログを一意に示すIDであり、例えば、「1」である。ログタイプは、ジョブを区別するための属性であり、例えば、「スキャナ」である。開始時刻は、ジョブの開始時刻であり、例えば、「2019/01/01 12:00」である。終了時刻は、ジョブの終了時刻であり、例えば、「2019/01/01 12:03」である。ジョブ状態は、仕掛中/正常終了/異常終了のいずれかの状態を示し、例えば、「正常終了」である。操作元は、どこからの操作によりジョブ投入したかを示し、例えば、操作入力装置26の「操作パネル」である。ユーザ名は、ジョブを投入したユーザ名であり、例えば、「部門A」である。機器IDは、ジョブが投入された機番の識別情報であり、例えば、「10012345」である。
【0036】
アプリケーション21で実行するAPIのログは、中継アプリケーション22内のログ管理部222に保存する。ここで、中継アプリケーション22とは、アプリケーション21とは別途インストールが必要なソフトウェアであり、アプリケーション21とは独立したソフトウェアである。アプリケーション21は、所定の装置(MFP)1に対してジョブ要求の送信を含む通信を行う場合に、中継アプリケーション22を介して通信を行う。また、中継アプリケーション22は、所定の装置(MFP)1がアプリケーション21に対してAPI経由で応答した場合に、中継アプリケーション22を介してアプリケーション21へ応答を送信しても良い。
【0037】
例えば、APIログは、
図6に示すようなログである。
図6は、APIログの例を示す図である。例えば、
図6(a)に示すようなプログラムがAPIで利用された場合、
図6(b)に示すようなAPIログが生成される。
図6(b)に示すように、APIログは、APIが利用された時刻、APIへの入力パラメータ、APIから出力された結果を含む。
図6(b)では、APIが利用された時刻が「10-30 21:37:09.217」であり、APIへの入力パラメータが「This is job setting」であり、APIから出力された結果が「ip/rest/config/user/1: panel,user 1, 10012345」である場合が例示されている。
【0038】
情報処理装置(携帯端末)2の画面の情報は、中継アプリケーション22内のログ管理部222に保存する。中継アプリケーション22は、情報処理装置(携帯端末)2に表示されている画面のキャプチャ画像を取得し、画面ログとしてログサーバ30に保存することができる。
【0039】
例えば、画面ログは、
図7に示すようなログである。
図7は、画面ログの例を示す図である。中継アプリケーション22は、ユーザが情報処理装置(携帯端末)2を操作したタイミングの情報処理装置(携帯端末)2の表示装置24の画面のスナップショットを保存してもよいし、及び/又は、表示装置12の画面のスナップショットを保存するように所定の装置(MFP)1に要求してもよい。
図7(a)は、情報処理装置(携帯端末)2の表示装置24の画面ログの例を示し、
図7(b)は、所定の装置(MFP)1の表示装置12の画面ログの例を示す。中継アプリケーション22は、情報処理装置(携帯端末)2の表示制御を行うソフトウェア又は操作対象のアプリケーション21と通信することで画面情報を取得しても良い。画面ログにより、テキストのログだけでは分からなかった状況を把握することが可能になる。例えば、情報処理装置(携帯端末)2の画面を記録するので操作手順と他のログとの突き合わせが可能になる。あるいは、所定の装置(MFP)1の画面を記録するので所定の装置(MFP)の状態と他のログとの突き合わせが可能になる。
図4では、情報処理装置(携帯端末)2の表示装置24の画面のスナップショットを画面ログとして保存(記録)する場合が例示されている。
【0040】
また、中継アプリケーション22は、情報処理装置(携帯端末)2が外部サーバ(例えばメール)と通信した場合はパケットログをログ管理部222に保存する。
【0041】
例えば、パケットログは、
図8に示すようなログである。
図8は、パケットログの例を示す図である。情報処理装置(携帯端末)2は、機器外部と通信した場合はパケットから詳細な動作状況を把握することが可能になる。保存するパケットは、情報処理装置(携帯端末)2の中継アプリケーション22が行うため中継アプリケーション22のパケットを想定しているが、所定の装置(MFP)1側の通信パケットを取得する方式も考えられる。パケットログは、パケットの送信元、送信先、アクセスしたサイト、通過したサーバ、ルータ、スイッチなどの情報を含む。
【0042】
所定の装置(MFP)1及び/又は情報処理装置(携帯端末)2における処理途中でエラーが発生した場合はエラーログをログ管理部222に保存する。
【0043】
例えば、エラーログは、
図9に示すようなログである。
図9は、エラーログの例を示す図である。処理途中でエラーが発生した場合は、エラーログは、エラー発生時刻、エラーコードを保存する。
図9では、エラー発生時刻が「2019/01/01 10:00」であり、エラーコードが「SC999」である場合が例示されている。なお、エラーコードを所定の装置(MFP)1と情報処理装置(携帯端末)2とで異なるコードにしておくことで、エラーの発生場所が所定の装置(MFP)1と情報処理装置(携帯端末)2とのいずれであるのかを、エラーコードから把握するようにしてもよい。
【0044】
図4に戻り、例えば、アプリケーション21は、ユーザから接続設定要求を受けると(S1)、要求管理部221へ接続設定要求を供給する(S2)。要求管理部221は、接続設定要求に応じて、APIログの記録をAPIログ管理部222aへ要求し(S3)、画面の記録を画面ログ管理部222cへ要求する(S4)。これに応じて、APIログ管理部222aは、APIログを生成して保持し、画面ログ管理部222cは、表示装置24の画面の情報に応じた画面ログを生成して保持する。
【0045】
アプリケーション21は、ユーザからジョブ設定要求を受けると(S5)、要求管理部221へジョブ設定要求を供給する(S6)。要求管理部221は、ジョブ設定要求に応じて、APIログの記録をAPIログ管理部222aへ要求し(S7)、ジョブ設定の要求を所定の装置1へ送信する(S8)。これに応じて、APIログ管理部222aは、APIログを生成して保持する。所定の装置1は、ジョブ設定要求に応じた機能の設定を行い、ジョブ設定OKの応答を要求管理部221へ返信する。所定の装置1との通信を行ったので、要求管理部221は、パケットログの記録をパケットログ管理部222dに要求する(S9)。これに応じて、パケットログ管理部222dは、パケットログを生成して保持する。
【0046】
要求管理部221は、ジョブ設定OKの応答を所定の装置1から受けると(S10)、画面の記録を画面ログ管理部222cへ要求する(S11)。これに応じて、画面ログ管理部222cは、表示装置24の画面の情報に応じた画面ログを生成して保持する。
【0047】
アプリケーションは、ユーザからジョブ開始要求を受けると(S12)、要求管理部221へジョブ開始要求を供給する(S13)。要求管理部221は、ジョブ開始要求に応じて、APIログの記録をAPIログ管理部222aへ要求し(S14)、ジョブログの記録をジョブログ管理部222bへ要求し(S15)、ジョブ開始の要求を所定の装置1へ送信する(S16)。これに応じて、APIログ管理部222aは、APIログを生成して保持し、ジョブログ管理部222bは、ジョブログを生成して保持し、所定の装置1は、ジョブ開始要求に応じた機能で動作を開始しようとする。このとき、所定の装置1は、何らかの不具合で動作を開始できなければ、ジョブ開始NGの応答を要求管理部221へ返信する(S17)。所定の装置1との通信を行ったので、要求管理部221は、パケットログの記録をパケットログ管理部222dに要求する(S18)。これに応じて、パケットログ管理部222dは、パケットログを生成して保持する。
【0048】
また、要求管理部221は、ジョブ開始NGの応答を所定の装置1から受けたので、エラーログの記録をエラーログ管理部222eへ要求する(S19)。これに応じて、エラーログ管理部222eは、エラーログを生成して保持する。要求管理部221は、ジョブ開始がエラーになったことをアプリケーション21に通知する(S20)。これに応じて、アプリケーション21は、表示装置24の画面にメッセージを表示することなどにより、ジョブ開始がエラーになったことをユーザに報知する(S21)。
【0049】
これらのログは、ユーザからの要求で取得することができる。なお、
図4は、所定の装置(MFP)1経由でログを取得した例を示している。所定の装置(MFP)1は、操作入力装置14を介してユーザからログ情報を取得するよう指示(ログ取得要求)を受け付ける(S22)。所定の装置(MFP)1は、接続中の情報処理装置(携帯端末)2に対して、ユーザからの指示に応じたログ取得要求を送信する(S23)。中継アプリケーション22は、所定の装置(MFP)1からログ取得要求を受信すると、中継アプリケーション22によって情報処理装置(携帯端末)2内に記憶された複数種のログをそれぞれ収集する。すなわち、要求管理部221は、所定の装置(MFP)1からログ取得要求を受信すると、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eへそれぞれログ取得要求を供給する(S24~S28)。要求管理部221は、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eから、それぞれログを受ける。要求管理部221は、受けた複数種のログが統合された情報を生成する。中継アプリケーションにより収集された複数種のログが統合された情報は、ログ取得要求を送信した所定の装置(MFP)1へ送信出力される(S29)。所定の装置(MFP)1は、所定の装置(MFP)1内のログ(例えば、MFPログ)を取得し(S30)、取得されたログと情報処理装置(携帯端末)2から取得した複数種のログが統合された情報とがさらに統合された情報を不具合解析用の情報として生成して出力する(S31)。不具合解析用の情報の出力は、所定の装置(MFP)1の表示装置12の画面への表示出力、所定の装置(MFP)1からの印刷出力、所定の装置(MFP)1に接続された外部装置(例えば、情報処理装置2の表示制御部215)への送信出力を含む。例えば、所定の装置(MFP)1のログと情報処理装置(携帯端末)2のログとが統合された情報を印刷出力することで、解析時間を短縮できる。あるいは、所定の装置(MFP)1が外部記憶装置15としてメモリカードをさらに有する場合、所定の装置(MFP)1は、不具合解析用の情報をメモリカードに書き出すことで出力してもよい。
【0050】
なお、ログの取得要求には、要求されたタイミングで所定の装置(MFP)1から情報処理装置(携帯端末)2に取得要求する方式と、逐次、情報処理装置(携帯端末)2から所定の装置(MFP)1にログ送信する方式が考えられる。
図4では、要求されたタイミングで所定の装置(MFP)1から情報処理装置(携帯端末)2に取得要求する方式が例示されている。また、ログの記録は、情報処理装置(携帯端末)2における表示装置24に表示される設定画面で保存/有無を指定することができてもよい。
【0051】
以上のように、システム100において、情報処理装置2で開発者向け機能が有効であるときに記録される複数種のログを統合した情報を生成し所定の装置1に送信する。これにより、所定の装置は、自身のログを取得し、そのログを受信された情報にさらに統合した情報を生成して所定の方法で出力することができる。この結果、情報処理装置2の統合されたログと所定の装置1のログとが一括化された情報を開発者に閲覧させることなどにより、開発者による不具合解析のための情報の一括管理を可能にすることができる。したがって、開発者による不具合解析のためのミドルウェアの差し替えが不要となり、ベンダとのやり取りを減らすことができるため、開発期間を短縮できる。
【0052】
なお、
図10に示すように、ログの取得要求は、情報処理装置(携帯端末)2が所定の装置(MFP)1からログ(例えば、MFPログ、画面ログ)を取得する構成であっても良い。このとき、所定の装置(MFP)1は、要求管理部221からの要求に応じて、表示装置12の画面の情報を画面ログとして保存してもよい。
図10は、実施形態の第1の変形例にかかるシステム100の動作を示すシーケンス図である。
【0053】
図10に示すように、例えば、アプリケーションは、ユーザからジョブ設定要求を受けると(S41)、要求管理部221へジョブ設定要求を供給する(S42)。要求管理部221は、ジョブ設定要求に応じて、APIログの記録をAPIログ管理部222aへ要求し(S43)、ジョブ設定を所定の装置1へ送信する(S44)。これに応じて、APIログ管理部222aは、APIログを生成して保持する。所定の装置1は、ジョブ設定要求に応じた機能の設定を行う。機能の設定を行ったので、所定の装置1は、表示装置12の画面の情報に応じた画面ログを生成して保持する(S45)。所定の装置1との通信を行ったので、要求管理部221は、パケットログの記録をパケットログ管理部222dに要求する(S46)。要求管理部221は、ジョブ設定OKの応答を所定の装置1から受けると(S47)、画面の記録を画面ログ管理部222cへ要求する(S48)。
【0054】
アプリケーション21は、ユーザからジョブ開始要求を受けると(S49)、要求管理部221へジョブ開始要求を供給する(S50)。要求管理部221は、ジョブ開始要求に応じて、APIログの記録をAPIログ管理部222aへ要求し(S51)、ジョブログの記録をジョブログ管理部222bへ要求し(S52)、ジョブ開始の要求を所定の装置1へ送信する(S53)。これに応じて、APIログ管理部222aは、APIログを生成して保持する。所定の装置1は、ジョブ開始要求に応じた機能で動作を開始しようとする。このとき、所定の装置1は、何らかの不具合で動作を開始できなければ、表示装置12の画面の情報に応じた画面ログを生成して保持し(S54)、ジョブ開始NGの応答を要求管理部221へ返信する(S55)。所定の装置1との通信を行ったので、要求管理部221は、パケットログの記録をパケットログ管理部222dに要求する(S56)。これに応じて、パケットログ管理部222dは、パケットログを生成して保持する。
【0055】
また、要求管理部221は、ジョブ開始NGの応答を所定の装置1から受けたので、エラーログの記録をエラーログ管理部222eへ要求する(S57)。これに応じて、エラーログ管理部222eは、エラーログを生成して保持する。要求管理部221は、ジョブ開始がエラーになったことをアプリケーション21に通知する(S58)。これに応じて、アプリケーション21は、表示装置24の画面にメッセージを表示することなどにより、ジョブ開始がエラーになったことをユーザに報知する(S59)。
【0056】
また、情報処理装置(携帯端末)2のアプリケーション21は、操作入力装置26を介してユーザからログ情報を取得するよう指示(ログ取得要求)を受け付ける(S60)。アプリケーションは、ログ取得要求を要求管理部221へ供給する(S61)。要求管理部221は、ログ取得要求を受けると、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eへそれぞれログ取得要求を供給する(S62~S66)とともに所定の装置(MFP)1へログ取得要求を送信する(S67)。要求管理部221は、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eから、それぞれログを受けるとともに、所定の装置(MFP)1からログを受信する。要求管理部221は、ログ管理部222から受けた複数種のログが統合された情報を生成するとともに、所定の装置(MFP)1内のログ(例えば、MFPログ)と情報処理装置(携帯端末)2から取得した複数種のログが統合された情報とがさらに統合された情報を不具合解析用の情報として生成する。要求管理部221は、不具合解析用の情報をログ取得結果としてアプリケーション21の表示制御部215へ出力する(S68)。これにより、不具合解析用の情報が情報処理装置(携帯端末)2の表示装置24の画面に表示されユーザに報知される(S69)。
【0057】
あるいは、
図11に示すように、所定の装置(MFP)1のミドルウェアの開発者向けメニューによりログ印刷が選択されることに応じて、情報処理装置(携帯端末)2の動作モードがログ印刷モードに変更されてもよい。
図11は、実施形態の第2の変形例にかかるシステム100の動作を示すシーケンス図である。所定の装置(MFP)1は、操作入力装置14を介してユーザからログ印刷を行うよう指示(ログ印刷要求)を受け付ける(S71)。所定の装置(MFP)1は、接続中の情報処理装置(携帯端末)2に対して、ユーザからの指示に応じたログ取得要求を送信する。中継アプリケーション22は、所定の装置(MFP)1からログ取得要求を受信すると、情報処理装置(携帯端末)2の動作モードがログ印刷モードに変更し、中継アプリケーションによって情報処理装置(携帯端末)2内に記憶された複数種のログをそれぞれ収集する。すなわち、要求管理部221は、所定の装置(MFP)1からログ取得要求を受信すると(S72)、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eへそれぞれログ取得要求を供給する(S73~S77)。要求管理部221は、ログ管理部222のAPIログ管理部222a、ジョブログ管理部222b、画面ログ管理部222c、パケットログ管理部222d、エラーログ管理部222eから、それぞれログを受ける。要求管理部221は、受けた複数種のログが統合された情報を生成する。中継アプリケーション22により収集された複数種のログが統合された情報は、ログ取得要求を送信した所定の装置(MFP)1へ送信出力される(S78)。所定の装置(MFP)1は、所定の装置(MFP)1内のログ(例えば、MFPログ)を取得し(S79)、取得されたログと情報処理装置(携帯端末)2から取得した複数種のログが統合された情報とがさらに統合された情報を不具合解析用の情報として生成して印刷により出力する(S80)。これによっても、情報処理装置2の統合されたログと所定の装置1のログとが一括化された情報を開発者に閲覧させることなどにより、開発者による不具合解析のための情報の一括管理を可能にすることができる。
【0058】
あるいは、
図12に示すように、エラー箇所及びその対策案をユーザに向けて提示してもよい。
図12は、実施形態の第3の変形例にかかるシステム100の動作を示す図である。例えば、APIログで
図12(a)に示すようにエラー発生個所が示される場合は、
図12(b)に示すような対策例を表示装置12に表示することなどによりユーザに示すことで解析、対策を効率よく進めることができる。すなわち、アプリケーションの表示制御部(対策提示手段)215は、ミドルウェアの利用方法に間違いがある場合に、その旨とその対策例をユーザに向けて提示してもよい。これにより、ミドルウェアの呼び出し順間違いなどミドルウェアのエラー箇所、対策提示が分かるため問題解消までの時間を短縮できる。
【0059】
また、情報処理装置2は、通信機能を備えた装置であれば、携帯端末に限られない。情報処理装置2は、例えば、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCまたはデスクトップPC等であってもよい。
【0060】
情報処理装置2は、例えば、
図13に示すようなスマートフォン4であってもよい。
図13は、実施形態及びその第1~第3の変形例における情報処理装置2のハードウェア構成例として、スマートフォン4のハードウェア構成を示す図である。
図13に示されているように、スマートフォン4は、CPU401、ROM402、RAM403、EEPROM404、CMOSセンサ405、撮像素子I/F406、加速度・方位センサ407、メディアI/F409、GPS受信部411を備えている。
【0061】
これらのうち、CPU401は、スマートフォン4全体の動作を制御する。ROM402は、CPU401やIPL等のCPU401の駆動に用いられるプログラムを記憶する。RAM403は、CPU401のワークエリアとして使用される。EEPROM404は、CPU401の制御にしたがって、スマートフォン用プログラム等の各種データの読み出し又は書き込みを行う。CMOS(Complementary Metal Oxide Semiconductor)センサ405は、CPU401の制御に従って被写体(主に自画像)を撮像して画像データを得る内蔵型の撮像手段の一種である。なお、CMOSセンサではなく、CCD(Charge Coupled Device)センサ等の撮像手段であってもよい。撮像素子I/F406は、CMOSセンサ405の駆動を制御する回路である。加速度・方位センサ407は、地磁気を検知する電子磁気コンパスやジャイロコンパス、加速度センサ等の各種センサである。メディアI/F409は、フラッシュメモリ等の記録メディア408に対するデータの読み出し又は書き込み(記憶)を制御する。GPS受信部411は、GPS衛星からGPS信号を受信する。
【0062】
また、スマートフォン4は、遠距離通信回路412、CMOSセンサ413、撮像素子I/F414、マイク415、スピーカ416、音入出力I/F417、ディスプレイ418、外部機器接続I/F(Interface)419、近距離通信回路420、近距離通信回路420のアンテナ420a、及びタッチパネル421を備えている。
【0063】
これらのうち、遠距離通信回路412は、ネットワーク3を介して、他の機器と通信する回路である。CMOSセンサ413は、CPU401の制御に従って被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F414は、CMOSセンサ413の駆動を制御する回路である。マイク415は、音を電気信号に変える内蔵型の回路である。スピーカ416は、電気信号を物理振動に変えて音楽や音声などの音を生み出す内蔵型の回路である。音入出力I/F417は、CPU401の制御に従ってマイク415及びスピーカ416との間で音信号の入出力を処理する回路である。ディスプレイ418は、被写体の画像や各種アイコン等を表示する液晶や有機EL(Electro Luminescence)などの表示手段の一種である。外部機器接続I/F419は、各種の外部機器を接続するためのインターフェースである。近距離通信回路420は、NFC(Near Field Communication)やBluetooth(登録商標)等の通信回路である。タッチパネル421は、利用者がディスプレイ418を押下することで、スマートフォン4を操作する入力手段の一種である。
【0064】
また、スマートフォン4は、バスライン410を備えている。バスライン410は、
図13に示されているCPU401等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0065】
また、所定の装置1は、
図14に示すようなMFP9であってもよい。
図14は、実施形態及びその第1~第3の変形例における所定の装置1のハードウェア構成例として、MFP9のハードウェア構成を示す図である。
図14に示されているように、MFP(Multifunction Peripheral/Product/Printer)9は、コントローラ910、近距離通信回路920、エンジン制御部930、操作パネル940、ネットワークI/F950を備えている。
【0066】
これらのうち、コントローラ910は、コンピュータの主要部であるCPU901、システムメモリ(MEM-P)902、ノースブリッジ(NB)903、サウスブリッジ(SB)904、ASIC(Application Specific Integrated Circuit)906、記憶部であるローカルメモリ(MEM-C)907、HDDコントローラ908、及び、記憶部であるHD909を有し、NB903とASIC906との間をAGP(Accelerated Graphics Port)バス921で接続した構成となっている。
【0067】
これらのうち、CPU901は、MFP9の全体制御を行う制御部である。NB903は、CPU901と、MEM-P902、SB904、及びAGPバス921とを接続するためのブリッジであり、MEM-P902に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタ及びAGPターゲットとを有する。
【0068】
MEM-P902は、コントローラ910の各機能を実現させるプログラムやデータの格納用メモリであるROM902a、プログラムやデータの展開、及びメモリ印刷時の描画用メモリなどとして用いるRAM902bとからなる。なお、RAM902bに記憶されているプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0069】
SB904は、NB903とPCIデバイス、周辺デバイスとを接続するためのブリッジである。ASIC906は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス921、PCIバス922、HDDコントローラ908およびMEM-C907をそれぞれ接続するブリッジの役割を有する。このASIC906は、PCIターゲットおよびAGPマスタ、ASIC906の中核をなすアービタ(ARB)、MEM-C907を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転などを行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部931及びプリンタ部932との間でPCIバス922を介したデータ転送を行うPCIユニットとからなる。なお、ASIC906には、USB(Universal Serial Bus)のインターフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェースを接続するようにしてもよい。
【0070】
MEM-C907は、コピー用画像バッファ及び符号バッファとして用いるローカルメモリである。HD909は、画像データの蓄積、印刷時に用いるフォントデータの蓄積、フォームの蓄積を行うためのストレージである。HD909は、CPU901の制御にしたがってHD909に対するデータの読出又は書込を制御する。AGPバス921は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、MEM-P902に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。
【0071】
また、近距離通信回路920には、近距離通信回路920aが備わっている。近距離通信回路920は、NFC、Bluetooth等の通信回路である。
【0072】
更に、エンジン制御部930は、スキャナ部931及びプリンタ部932によって構成されている。また、操作パネル940は、現在の設定値や選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部940a、並びに、濃度の設定条件などの画像形成に関する条件の設定値を受け付けるテンキー及びコピー開始指示を受け付けるスタートキー等からなる操作パネル940bを備えている。コントローラ910は、MFP9全体の制御を行い、例えば、描画、通信、操作パネル940からの入力等を制御する。スキャナ部931又はプリンタ部932には、誤差拡散やガンマ変換などの画像処理部分が含まれている。
【0073】
なお、MFP9は、操作パネル940のアプリケーション切り替えキーにより、ドキュメントボックス機能、コピー機能、プリンタ機能、およびファクシミリ機能を順次に切り替えて選択することが可能となる。ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリモードの選択時にはファクシミリモードとなる。
【0074】
また、ネットワークI/F950は、ネットワーク3を利用してデータ通信をするためのインターフェースである。近距離通信回路920及びネットワークI/F950は、PCIバス922を介して、ASIC906に電気的に接続されている。
【0075】
また、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
【0076】
また、本実施形態の各装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0077】
また、本実施形態の各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0078】
また、本実施形態のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0079】
本実施の形態の各装置で実行されるプログラムは、上述した各部を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記記憶媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各が主記憶装置上に生成されるようになっている。
【0080】
また、上記実施の形態では、本発明の画像形成装置を、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能のうち少なくとも2つの機能を有する複合機に適用した例を挙げて説明するが、複写機、プリンタ、スキャナ装置、ファクシミリ装置等の画像形成装置であればいずれにも適用することができる。
【符号の説明】
【0081】
1 所定の装置
2 情報処理装置
3 ネットワーク
100 システム
【先行技術文献】
【特許文献】
【0082】
【文献】特開2012-216982号公報
【文献】特開2014-21874号公報