JP2019152902A - 情報処理装置及びその制御方法、並びにプログラム - Google Patents

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

Info

Publication number
JP2019152902A
JP2019152902A JP2018035420A JP2018035420A JP2019152902A JP 2019152902 A JP2019152902 A JP 2019152902A JP 2018035420 A JP2018035420 A JP 2018035420A JP 2018035420 A JP2018035420 A JP 2018035420A JP 2019152902 A JP2019152902 A JP 2019152902A
Authority
JP
Japan
Prior art keywords
data
information processing
format
data format
processing apparatus
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.)
Granted
Application number
JP2018035420A
Other languages
English (en)
Other versions
JP2019152902A5 (ja
JP7071161B2 (ja
Inventor
王徳 笠原
Otoku Kasahara
王徳 笠原
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
Priority to JP2018035420A priority Critical patent/JP7071161B2/ja
Priority to US16/285,594 priority patent/US10691389B2/en
Publication of JP2019152902A publication Critical patent/JP2019152902A/ja
Publication of JP2019152902A5 publication Critical patent/JP2019152902A5/ja
Application granted granted Critical
Publication of JP7071161B2 publication Critical patent/JP7071161B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1293Printer information exchange with computer
    • G06F3/1294Status or feedback related to information exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3086Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves the use of self describing data formats, i.e. metadata, markup languages, human readable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1273Print job history, e.g. logging, accounting, tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1293Printer information exchange with computer
    • G06F3/1295Buffering means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Library & Information Science (AREA)
  • Debugging And Monitoring (AREA)
  • Facsimiles In General (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】情報処理装置内でイベントログを効率的にバッファリングしながら、サーバ装置に適合したデータ形式でイベントログを送信する技術を提供する。【解決手段】構造化モジュール403,405,421は、MFP120において行われる処理に関連して発生するデータを収集する。バッファ制御モジュール407は、各構造化モジュールによって収集されたデータを、外部の管理サーバへの送信用の第2データ形式と異なる第1データ形式で、バッファDB409にバッファリングする。データ変換モジュール411は、バッファ制御モジュール407によってバッファリングされたデータの管理サーバへの送信前に、当該データの形式を第1データ形式から第2データ形式に変換する。送信モジュール412は、データ変換モジュール411による変換後の第2データ形式のデータを、MFP120のイベントログとして管理サーバへ送信する。【選択図】図4

Description

本発明は、情報処理装置及びその制御方法、並びにプログラムに関するものである。
近年、複合機等の画像形成装置では、装置の状態を遠隔から把握する目的で、装置内で行われる各種処理の内容に関するデータを収集し、収集したデータを、イベントログとして管理サーバへ送信することが行われている。例えば、特許文献1には、監視サーバによる監視対象のノードが、複数種類のフォーマットのログメッセージに対してフォーマット変換を行い、フォーマットが統一されたログメッセージを監視サーバへ送信する技術が提案されている。
特開2009−9448号公報
上述のような画像形成装置等の情報処理装置と管理サーバとの間の通信が行われるインターネット等のネットワークでは、一般に、通信速度の低下又は通信の途絶が生じること場合がある。このような場合に備えるために、画像形成装置は、装置内で収集したイベントログを、管理サーバへの送信が完了するまでの間、一時的にバッファ領域に蓄積(バッファリング)しておく必要がある。
しかし、管理サーバへイベントログを送信する際には、管理サーバによる処理が容易なデータ形式を用いる必要があり、一般には比較的大きなデータサイズのデータ形式を用いることが多い。このようなデータ形式を用いてバッファ領域にイベントログを蓄積するためには、大きなサイズのバッファ領域が必要となってしまう。
本発明は、上述の問題に鑑みてなされたものである。本発明は、情報処理装置内でイベントログを効率的にバッファリングしながら、サーバ装置に適合したデータ形式でイベントログを送信する技術を提供することを目的とする。
本発明の一態様に係る情報処理装置は、前記情報処理装置において行われる処理に関連して発生するデータを収集する収集手段と、前記収集手段によって収集されたデータを、外部のサーバ装置への送信用の第2データ形式と異なる第1データ形式でバッファリングするバッファリング手段と、前記バッファリング手段によってバッファリングされたデータの前記サーバ装置への送信前に、当該データの形式を前記第1データ形式から前記第2データ形式に変換する変換手段と、前記変換手段による変換後の前記第2データ形式のデータを、前記情報処理装置のイベントログとして前記サーバ装置へ送信する送信手段と、を備えることを特徴とする。
本発明によれば、情報処理装置内でイベントログを効率的にバッファリングしながら、サーバ装置に適合したデータ形式でイベントログを送信することが可能になる。
通信システムの構成例を示す図。 MFPのハードウェア構成例を示すブロック図。 情報処理コントローラのハードウェア構成例を示すブロック図。 MFPのソフトウェア構成例を示すブロック図。 イベントログを一時的に蓄積する処理の手順を示すフローチャート。 イベントログを管理サーバへ送信する処理の手順を示すフローチャート。
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
以下の第1及び第2実施形態では、画像形成装置に本発明を適用した例について説明する。なお、本発明は、情報処理装置であれば適用可能であり、例えば、印刷装置、複写機、複合機及びファクシミリ装置等の画像形成装置(画像処理装置)だけでなく、PC、サーバ装置等の情報機器にも適用可能である。
[第1実施形態]
<システム構成>
図1は、本発明の実施形態に係る通信システムの構成例を示す図である。図1に示す通信システムにおいて、イベントログ管理サーバ(以下では「管理サーバ」と称する。)110及び複合機(MFP)120a,120bは、ネットワーク100に接続されており、ネットワーク100を介して互いに通信可能である。なお、ネットワーク100は、例えば、有線LAN(ローカルエリアネットワーク)及びインターネットで構成されうる。
管理サーバ110には、MFP120a,120b等のクライアント装置のイベントログを管理するサーバ装置である。管理サーバ110には、各クライアント装置で実行されたジョブ又はユーザ操作の履歴情報をイベントログとして収集し、収集したイベントログを分析するためのアプリケーションがインストールされている。このアプリケーションは、ネットワーク100を介してMFP120a,120bから送信されるイベントログを収集及び分析する。
MFP120(120a,120b)は、プリント、コピー、スキャナ、ファクシミリ(FAX)送信等の、複数の機能を有する情報機器である。MFP120は、更に、各機能の実行履歴を保持する機能、各機能により使用される設定値を保持する機能、並びに、実行履歴及び設定値を管理サーバ110へ送信する機能を有している。
<MFPの構成>
図2は、本実施形態に係るMFP120のハードウェア構成例を示すブロック図である。MFP120は、情報処理コントローラ201、プリンタコントローラ202、スキャナコントローラ203、プリンタ204、スキャナ205、及び操作部206を備えている。情報処理コントローラ201は、MFP120の動作に関連する情報処理を制御する。情報処理コントローラ201は、プリンタコントローラ202、スキャナコントローラ203、及び操作部206と接続される。プリンタコントローラ202は、画像出力デバイスであるプリンタ204を制御する。スキャナコントローラ203は、画像入力デバイスであるスキャナ205を制御する。
図3は、情報処理コントローラ201のハードウェア構成例を示すブロック図である。情報処理コントローラ201は、CPU301、ROM302、RAM303、及びHDD(ハードディスクドライブ)304を有する。情報処理コントローラ201は、更に、ネットワークインタフェース(I/F)305、操作部I/F306、画像処理部307、及びデバイスコントローラI/F308を有する。これらのデバイスは、システムバス309にそれぞれ接続されている。
CPU301は、ROM302に格納されているブートプログラムを実行してOSを起動する。ROM302は、eMMC等のフラッシュメモリとそのコントローラとで構成されている。ROM302には、CPU301によって実行される制御プログラムが格納される。CPU301は、OS上で、ROM302又はHDD304に格納されているアプリケーションプログラムを実行することにより、各種処理を実行する。RAM303は、CPU301に対して作業領域を提供するとともに、画像データを一時的に格納するための画像メモリ領域を提供する。ROM302又はHDD304には、上記の上記アプリケーションプログラム、画像データ、及び各種設定値が格納される。なお、HDD304はMFP120に搭載されていない場合もある。
操作部I/F306は、操作部206とのインタフェースである。操作部206は、タッチパネル機能を有するディスプレイ(表示部)を備える。操作部I/F306は、操作部206に表示すべき画面の画面データを、操作部206に対して出力する。また、操作部I/F306は、操作部206を介してユーザにより入力された情報を、CPU301へ送信する。
デバイスコントローラI/F308には、プリンタコントローラ202及びスキャナコントローラ203が接続される。デバイスコントローラI/F308は、画像データの同期系/非同期系の変換を行う。ネットワークI/F305は、ネットワーク100に接続されており、ネットワーク100を介して、管理サーバ110等の外部装置との通信(情報の入出力)を行う。画像処理部307は、プリンタ204へ出力する画像データ、及びスキャナ205から入力された画像データに対する画像処理を行う。画像処理部307は、例えば、画像回転、画像圧縮、解像度変換、色空間変換、階調変換等の処理を行う。
<MFPのソフトウェア構成>
図4は、本実施形態に係るMFP120上で動作するMFPファームウェア400のソフトウェア構成例を示すブロック図である。MFPファームウェア400は、ROM302、RAM303、及びHDD304のいずれかの記憶装置に格納され、CPU301によって実行される。
ジョブ管理モジュール401は、ネットワークI/F305を介してネットワーク100と接続されており、特定の通信プロトコルを用いてプリントジョブ等のジョブを外部装置から受信し、受信したジョブを実行する。また、ジョブ管理モジュール401は、操作部制御モジュール402が受け付けた、コピージョブ、プリントジョブ又はスキャンジョブ等のジョブについての通知を受けると、当該通知に従ってジョブを実行する。ジョブ管理モジュール401は、ジョブを実行した際に、当該ジョブの実行履歴をジョブ履歴DB(データベース)404に保存する。
また、ジョブ管理モジュール401は、他のモジュールからの問い合わせに応じて、ジョブに関連するデータを提供する機能、及び他のモジュールからイベント購読要求を受け付けて、当該購読要求に従ってイベントを伝達する機能を有する。ジョブ管理モジュール401は、例えば、ジョブの開始、一時停止及び終了のタイミングといった、ジョブの実行状態に変化が生じたタイミングに、イベントの伝達を行う。
ジョブ履歴DB404には、ジョブの実行履歴が格納される。実行履歴には、ジョブの開始日時及び終了日時、給紙枚数、排紙枚数、ステイプルの有無等の、ジョブの実行に関連する情報が含まれる。なお、ジョブ履歴DB404に格納されるジョブ実行履歴は、HDD304に格納される。
操作部制御モジュール402は、操作部206により受け付けた、コピージョブ又はスキャンジョブ等のジョブの実行を指示するためのユーザ操作の内容を示すデータを、操作部I/F306を介して操作部206から受信する。操作部制御モジュール402は、ユーザから受け付けたユーザ操作の内容を、構造化モジュール405に伝達する機能を有する。
デバイス制御モジュール420は、デバイスコントローラI/F308を介してプリンタコントローラ202及びスキャナコントローラ203を制御することにより、各デバイス(プリンタ204及びスキャナ205)を制御する。具体的には、デバイス制御モジュール420は、処理対象の画像データ及び制御内容をジョブ管理モジュール401から受け付けて、受け付けた制御内容に従って、プリンタコントローラ202及びスキャナコントローラ203を制御する。また、デバイス制御モジュール420は、各デバイスの制御内容を、構造化モジュール421に伝達する機能を有する。
構造化モジュール403は、ジョブ管理モジュール401から出力されたデータ(即ち、ジョブの実行に関連するデータ)を、所定のデータスキーマに従って構造化されたデータへ変換する。構造化モジュール405は、操作部制御モジュール402から出力されたデータ(即ち、ユーザ操作に関連するデータ)を、所定のデータスキーマに従って構造化されたデータへ変換する。構造化モジュール421は、デバイス制御モジュール420から出力されたデータ(即ち、MFP120が備えるデバイスの制御に関連するデータ)を、所定のデータスキーマに従って構造化されたデータへ変換する。
上述の各構造化モジュールは、変換の結果、中間データ生成モジュール422が解釈可能なデータを生成する。変換の具体例としては、データの発生日時、又はデータを一意に特定するためのUUID(Universal Unique ID)を新たに付与する処理、及びデータを所定の階層構造又は表現形式を有するデータへ変換する処理が挙げられる。これらの変換は、複数の種類のデータを統一的に扱うために、又は、処理の効率性のために情報が符号化若しくは簡略化されているデータを、後の分析が容易になるように加工するために行われる。なお、上述の各構造化モジュールは、管理サーバ110へ送信されるデータに対して、上述の処理以外にも、必要に応じて、データ構造に関する前加工を更に行ってもよい。
このようにして、構造化モジュール403,405,421は、MFP120において行われる処理に関連して発生するデータを収集し、中間データ生成モジュール422へ提供するデータを生成する。
中間データ生成モジュール422は、構造化モジュール403,405,421によって生成された、所定の表現形式で表現されたデータを、バッファリングのために永続化可能なデータ形式のデータである中間データに変換する。本実施形態では、中間データのデータ形式として、外部の管理サーバ110への送信用のデータ形式(第2データ形式)とは異なるデータ形式(第1データ形式)が用いられる。この第1データ形式には、MFP120内でイベントログを効率的にバッファリングすることが可能な形式が採用されうる。
中間データのデータ形式として、データサイズが可能な限り小さくなるデータ形式を用いることにより、バッファDB409に蓄積可能なデータを増やすことが可能である。例えば、値域に応じてデータサイズが可変となるCBOR(Concise Binary Object Representation)のようなデータ形式が使用されてもよいし、ハフマン符号等の符号化形式が使用されてもよい。あるいは、これらが併用されてもよい。とりわけ、管理サーバ110への送信用の、管理サーバ110が解釈可能なデータ形式(第2データ形式)よりもデータサイズが小さいデータ形式が、バッファDB409に蓄積(バッファリング)される中間データに用いられてもよい。
バッファ制御モジュール407は、中間データ生成モジュール422によって生成された中間データを、バッファDB409に格納することで、中間データのバッファリングを行う。即ち、バッファ制御モジュール407は、構造化モジュール403,405,421によって収集されたデータを、管理サーバ110への送信用のデータ形式で、バッファDB409にバッファリングする。
バッファDB409は、中間データの生成タイミングと、この中間データをイベントログとして管理サーバ110へ送信するタイミングとの差を吸収するためのバッファとして設けられる。例えば、通信障害等に起因して管理サーバ110との通信が滞っている間に生成されてバッファリングされた中間データは、管理サーバ110との通信が可能になるまで、バッファDB409に保持し続けられる。管理サーバ110との通信が可能になると、バッファDB409に保持された中間データの送信(データ変換モジュール411による変換後のデータの送信)が順次行われる。バッファ制御モジュール407は、送信モジュール412による送信が完了したデータに対応する中間データ(第1データ形式のデータ)を、バッファDB409から削除する。
また、バッファ制御モジュール407は、バッファDB409への中間データ(イベントログ)のバッファリングに関する通知を、バッファ通知モジュール410に指示する機能を有する。バッファ通知モジュール410は、バッファ制御モジュール407から通知を受けると、中間データ(イベントログ)がバッファDB409に格納されている(バッファリングされている)ことを示す格納通知を、送信モジュール412へ送る。
データ変換モジュール411は、中間データ生成モジュール422が生成した、イベントログに相当する中間データ(第1データ形式のデータ)を、管理サーバ110が解釈可能なデータ形式のデータ(第2データ形式のデータ)へ変換する。本実施形態では、一例として、データ変換モジュール411による変換により生成されるイベントログのデータ形式(第2データ形式)は、JSON(JavaScript(登録商標) Object Notation)形式である。JSON形式は、一般的に、インターネット通信で広く用いられるデータ形式である。このような一般的なデータ形式を用いることにより、イベントログの加工、分析又は可視化に使用される各種ソフトウェア間の相互運用性を高めることが可能となる。
このようにして、データ変換モジュール411は、バッファDB409にバッファリングされた中間データの送信前に、当該中間データの形式を、管理サーバ110への送信用のデータ形式(本実施形態ではJSON形式)に変換する。
送信モジュール412は、データ変換モジュール411による変換後のデータを、MFP120のイベントログとして、ネットワーク100を介して管理サーバ110へ送信する。フィルタリングモジュール413は、送信モジュール412による送信対象のイベントログの内容を確認し、当該イベントログを実際に管理サーバ110へ送信すべきか否かを判定するフィルタリング処理を行う。送信モジュール412は、フィルタリングモジュール413による判定の結果に従って、イベントログを管理サーバ110へ送信する。
<イベントログのバッファリング処理>
図5は、イベントログを中間データとしてバッファリングする処理の手順を示すフローチャートである。本フローチャートの各ステップの処理は、ROM302又はHDD304に格納されたコンピュータプログラムを、CPU301が必要に応じてRAM303に展開して実行することによって実現されうる。なお、本フローチャートの手順による処理を実行する前準備として、構造化モジュール403は、中間データの生成に必要なイベントデータを取得するために、MFPファームウェア400の起動時にジョブ管理モジュール401に対してイベント購読要求を行う。イベント購読要求に対応してジョブ管理モジュール401から何らかのイベントが伝達されると、構造化モジュール403は、本フローチャートの手順による処理を開始する。
S501で、構造化モジュール403は、ジョブ管理モジュール401からイベントデータを受信すると、受信したイベントデータが示すイベントの内容を確認する。確認されるイベントの内容には、イベントの種別が含まれる。イベントの種別とは、例えば、ジョブの開始、一時停止及び終了のタイミングといった、ジョブの実行状態に変化の具体的な内容に対応する。
イベントの内容の確認が完了すると、S502で、構造化モジュール403は、確認したイベントの内容に基づいて、中間データに含められるデータの一部を構成するデータ共通部を生成する。
データ共通部は、イベントの具体的な内容に関わらず中間データに対して必ず付与される情報で構成され、例えば、イベントの発生日時、イベントの種別、及びイベントが発生した装置の識別ID等から構成される。なお、構造化モジュール403は、データ共通部の生成に必要な情報を中間データ生成モジュール422に送信することによって、中間データ生成モジュール422にデータ共通部を生成させる。
次にS503で、構造化モジュール403は、S501で確認したイベントの種別に応じて、中間データに含めるべきデータ(中間データの生成に必要なデータ)を決定する。例えば、ジョブの種別がジョブの開始イベントである場合には、ジョブの投入者、及びコピー又はプリントといったジョブの種別等のデータが、必要なデータとして決定される。また、イベントの種別がジョブの終了イベントである場合、ジョブの実行の成否等のデータが、必要なデータとして決定される。なお、決定されるデータは、これらのデータに限定されず、任意の方法でデータが決定されてよい。
必要なデータを決定すると、次にS504で、構造化モジュール403は、決定したデータをジョブ管理モジュール401から取得する。このようにして、構造化モジュール403は、MFP120において発生したイベントの種別に応じて、当該イベントに関連するデータを収集する。更にS505で、構造化モジュール403は、所定のデータスキーマに従って、イベント種別ごとに個別に定められた、中間データに含められるデータの一部を構成するデータ個別部を生成する。
S505で使用されるデータスキーマは、各データに対して付与される識別子、及びデータ間の階層構造を規定している。データスキーマには、例えば、ジョブの投入者のデータには識別用の文字列として「JobCreator」を関連付ける、といった規定が含まれる。なお、データスキーマに関する情報は、構造化モジュール403に対応するプログラムに含まれてもよいし、又は、当該プログラムとは別にHDD304に格納され、必要に応じてHDD304から読み出されてもよい。なお、構造化モジュール403は、データ個別部の生成に必要な情報を中間データ生成モジュール422に送信することによって、中間データ生成モジュール422にデータ個別部を生成させる。
最後にS506で、構造化モジュール403は、S502で生成したデータ共通部と、S505で生成したデータ個別部とを連結して中間データを生成し、生成した中間データをバッファ制御モジュール407に送信する。これにより、バッファ制御モジュール407は、受信した中間データをバッファDB409に格納(バッファリング)するとともに、中間データをバッファリングしたことをバッファ通知モジュール410へ通知する。以上により、図5の手順による処理が終了する。
このようにして、構造化モジュール403によって収集されたデータ(イベントログ)を、管理サーバ110への送信用のデータ形式とは異なるデータ形式の中間データとしてバッファDB409にバッファリングする処理を実現できる。なお、構造化モジュール405,421によって収集されたデータ(イベントログ)を、管理サーバ110への送信用のデータ形式とは異なるデータ形式の中間データとしてバッファDB409にバッファリングする処理も、同様の処理により実現可能である。
<イベントログの送信処理>
図6は、中間データとしてバッファリングされたイベントログを管理サーバ110へ送信する処理の手順を示すフローチャートである。本フローチャートの各ステップの処理は、ROM302又はHDD304に格納されたコンピュータプログラムを、CPU301が必要に応じてRAM303に展開して実行することによって実現されうる。中間データ生成モジュール422によって生成された中間データを、バッファ制御モジュール407が受け付けてバッファDB409に格納すると、本フローチャートの手順による処理が開始される。
S601で、バッファ制御モジュール407は、中間データ生成モジュール422によって生成された中間データをバッファDB409に格納すると、中間データの格納通知を、バッファ通知モジュール410を介して送信モジュール412へ伝達する。この通知を行う際、バッファ通知モジュール410は、データ変換モジュール411を通じて、中間データを、管理サーバ110への送信用のデータ形式(本実施形態では、JSON形式)のデータに変換する。
S602で、送信モジュール412は、バッファ通知モジュール410から中間データ(イベントログ)の格納通知を受信すると、当該イベントログを実際に管理サーバ110に送信するか否かを判定する。送信モジュール412は、イベントログを管理サーバ110へ送信すると判定した場合には、S603へ処理を進め、送信しないと判定した場合には、S604へ処理を進める。
本実施形態では、この判定を行うために、送信モジュール412は、フィルタリングモジュール413にイベントログを与えて、管理サーバ110へ送信すべきか否かをフィルタリングモジュール413に問い合わせる。このフィルタリング処理は、例えば、通信回線の状態に合わせて送信データ量を削減するため、又は所定の状態にある装置のみから管理サーバ110が特定のイベントを取得できるようにするために行われる。
S603で、送信モジュール412は、ネットワークI/F305及びネットワーク100を通じて、管理サーバ110を宛先としてイベントログを送信する。イベントログの送信に用いられる通信プロトコルは、例えば、HTTP(Hypertext Transfer Protocol)である。この場合、JSON形式で表現されたイベントログは、HTTPデータのペイロードに格納された状態で、管理サーバ110へ送信される。なお、HTTP以外の通信プロトコルをイベントログの送信に使用してもよい。例えば、MQTT(Message Queue Telemetry Transport)等のプロトコルを、イベントログの送信に使用することも可能である。送信モジュール412は、管理サーバ110へのイベントログの送信が完了すると、S604へ処理を進める。
S604で、送信モジュール412は、バッファ制御モジュール407に対して、イベントログの送信が完了したことを伝達する。これに応じて、バッファ制御モジュール407は、送信が完了したデータに対応する中間データ(第1データ形式のデータ)をバッファDB409から削除する。以上により、図6の手順による処理が終了する。
なお、本実施形態では、バッファDB409をMFPファームウェア400内で管理しているが、バッファDB409を管理するバッファDBサーバをネットワーク100上に配置する構成を採用することも可能である。この構成においては、MFP120は、中間データをバッファDBサーバに対して送信する。バッファDBサーバは、MFP120から受信した中間データをバッファリングし、適宜、当該中間データをイベントログのデータ形式(JSON形式等)に変換して管理サーバ110に送信する。
以上説明したように、本実施形態では、構造化モジュール403,405,421は、MFP120において行われる処理に関連して発生するデータを収集する。バッファ制御モジュール407は、各構造化モジュールによって収集されたデータを、外部の管理サーバ110への送信用の第2データ形式(JSON形式等)と異なる第1データ形式(CBOR形式等)で、バッファDB409にバッファリングする。データ変換モジュール411は、バッファ制御モジュール407によってバッファリングされたデータの管理サーバ110への送信前に、当該データの形式を第1データ形式から第2データ形式に変換する。送信モジュール412は、データ変換モジュール411による変換後の第2データ形式のデータを、MFP120のイベントログとして管理サーバ110へ送信する。
このように、本実施形態では、MFP120は、管理サーバ110へイベントログを送信する際のデータ形式(JSON形式等)とは異なるデータ形式(CBOR形式等)で、イベントログのバッファリングを行う。これにより、MFP120内でイベントログを効率的にバッファリングしながら、管理サーバ110に適合したデータ形式(管理サーバ110が解釈可能又は処理が容易なデータ形式)でイベントログを送信することが可能になる。特に、管理サーバ110へイベントログを送信する際のデータ形式よりもデータサイズが小さいデータ形式を、バッファリングされる中間データのデータ形式として用いることで、MFP120内にバッファリング可能なデータ量を増やすことが可能である。その結果、管理サーバ110との通信が途絶した場合等に、送信対象のイベントログを喪失する可能性を低減することが可能である。
[第2実施形態]
第2実施形態では、上述のMFP120において、必要に応じてバッファDB409に格納(バッファリング)するデータのデータ形式を変更することにより、イベントログの送信処理を効率的に行うことを可能にする。以下では、第1実施形態と共通する部分については説明を省略する。
本実施形態では、図5のフローチャートのS505において、構造化モジュール403は、以下の処理を実行する。構造化モジュール403は、バッファリング対象の中間データのデータ個別部のサイズが所定の閾値(第1閾値)より小さい場合に、当該データを管理サーバ110への送信用のデータ形式のデータとしてバッファDB409にバッファリングする。即ち、構造化モジュール403は、データ変換モジュール411によって中間データから生成されるデータを、バッファDB409に格納する。なお、構造化モジュール403は、データ個別部とデータ共通部とを連結したデータのサイズと所定の閾値とを比較して、このような制御を行ってもよい。
また、構造化モジュール403は、データ個別部に含まれるデータ項目(属性等)の数が所定の閾値(第2閾値)より小さい場合に、当該データを管理サーバ110への送信用のデータ形式のデータとしてバッファDB409にバッファリングしてもよい。S603で、送信モジュール412は、送信用のデータ形式(JSON形式等)でバッファDB409にバッファリングされたデータについては、当該バッファリングされたデータをそのままイベントログとして管理サーバ110へ送信する。
このように、バッファDB409にデータをバッファリングする際のデータ形式を必要に応じて切り替えることにより、管理サーバ110への送信に関連する処理速度を向上させることが可能である。具体的には、中間データのサイズが小さい場合には、例えば、中間データに用いられるCBOR形式と、送信用データに用いられるJSON形式とで、データサイズの差が小さい。このような場合には、中間データをバッファリングして、バッファDB409に格納するデータのサイズを削減することよりも、送信用のデータに変換してバッファリングすることで、データの送信時のデータ形式の変換を省略することを優先してもよい。これにより、イベントログの送信に関連するMFP120の処理効率を向上させることが可能である。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
120(120a,120b):MFP、110:管理サーバ、100:ネットワーク、201:情報処理コントローラ、202:プリンタコントローラ、203:スキャナコントローラ、301:CPU

Claims (10)

  1. 情報処理装置であって、
    前記情報処理装置において行われる処理に関連して発生するデータを収集する収集手段と、
    前記収集手段によって収集されたデータを、外部のサーバ装置への送信用の第2データ形式と異なる第1データ形式でバッファリングするバッファリング手段と、
    前記バッファリング手段によってバッファリングされたデータの前記サーバ装置への送信前に、当該データの形式を前記第1データ形式から前記第2データ形式に変換する変換手段と、
    前記変換手段による変換後の前記第2データ形式のデータを、前記情報処理装置のイベントログとして前記サーバ装置へ送信する送信手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記第2データ形式は、前記サーバ装置が解釈可能なデータ形式であり、
    前記第1データ形式は、前記第2データ形式よりもデータサイズが小さいデータ形式であるさ
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記バッファリング手段は、前記送信手段による前記サーバ装置への送信が完了するまで、バッファリングしたデータを保持し続ける
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記バッファリング手段によってバッファリングされる前記第1データ形式のデータが格納される記憶手段を更に備え、
    前記バッファリング手段は、前記送信手段による前記第2データ形式のデータの送信が完了すると、当該送信が完了したデータに対応する前記第1データ形式のデータを前記記憶手段から削除する
    ことを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。
  5. 前記バッファリング手段は、バッファリング対象の前記第1データ形式のデータのサイズが第1閾値より小さければ、当該データを前記第2データ形式のデータとしてバッファリングし、
    前記送信手段は、前記第2データ形式でバッファリングされたデータについては、当該バッファリングされたデータをそのまま前記サーバ装置へ送信する
    ことを特徴とする請求項1から4のいずれか1項に記載の情報処理装置。
  6. 前記バッファリング手段は、バッファリング対象の前記第1データ形式のデータに含まれる属性の数が第2閾値より小さければ、当該データを前記第2データ形式のデータとしてバッファリングし、
    前記送信手段は、前記第2データ形式でバッファリングされたデータについては、当該バッファリングされたデータをそのまま前記サーバ装置へ送信する
    ことを特徴とする請求項1から5のいずれか1項に記載の情報処理装置。
  7. 前記収集手段は、前記情報処理装置において発生したイベントの種別に応じて、当該イベントに関連するデータを収集する
    ことを特徴とする請求項1から6のいずれか1項に記載の情報処理装置。
  8. 前記収集手段は、前記情報処理装置におけるジョブの実行に関連するデータ、前記情報処理装置が備えるデバイスの制御に関連するデータ、及び、前記情報処理装置の操作部におけるユーザ操作に関連するデータを収集する
    ことを特徴とする請求項1から7のいずれか1項に記載の情報処理装置。
  9. 情報処理装置の制御方法であって、
    前記情報処理装置において行われる処理に関連して発生するデータを収集する収集工程と、
    前記収集工程で収集されたデータを、外部のサーバ装置への送信用の第2データ形式と異なる第1データ形式でバッファリングするバッファリング工程と、
    前記バッファリング工程でバッファリングされたデータの前記サーバ装置への送信前に、当該データの形式を前記第1データ形式から前記第2データ形式に変換する変換工程と、
    前記変換工程における変換後の前記第2データ形式のデータを、前記情報処理装置のイベントログとして前記サーバ装置へ送信する送信工程と、
    を含むことを特徴とする情報処理装置の制御方法。
  10. 請求項9に記載の情報処理装置の制御方法の各工程を、コンピュータに実行させるためのプログラム。
JP2018035420A 2018-02-28 2018-02-28 情報処理装置及びその制御方法、並びにプログラム Active JP7071161B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018035420A JP7071161B2 (ja) 2018-02-28 2018-02-28 情報処理装置及びその制御方法、並びにプログラム
US16/285,594 US10691389B2 (en) 2018-02-28 2019-02-26 Information processing apparatus that, depending on the size of collected data in a first data format, converts the data to a second data format before transmission, method for controlling the same, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018035420A JP7071161B2 (ja) 2018-02-28 2018-02-28 情報処理装置及びその制御方法、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2019152902A true JP2019152902A (ja) 2019-09-12
JP2019152902A5 JP2019152902A5 (ja) 2021-03-25
JP7071161B2 JP7071161B2 (ja) 2022-05-18

Family

ID=67684549

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018035420A Active JP7071161B2 (ja) 2018-02-28 2018-02-28 情報処理装置及びその制御方法、並びにプログラム

Country Status (2)

Country Link
US (1) US10691389B2 (ja)
JP (1) JP7071161B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10589572B2 (en) * 2016-01-13 2020-03-17 Sumitomo Rubber Industries, Ltd. Pneumatic tire
JP7399548B2 (ja) 2021-01-06 2023-12-18 テンセント・アメリカ・エルエルシー メディアシーン記述のための方法および装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7172342B2 (ja) * 2018-09-19 2022-11-16 富士フイルムビジネスイノベーション株式会社 情報処理装置および画像処理装置
CN110727646B (zh) * 2019-10-10 2021-05-04 京东数字科技控股有限公司 系统日志的格式转换方法、装置、电子设备及计算机介质
JP7358287B2 (ja) 2020-03-30 2023-10-10 キオクシア株式会社 半導体記憶装置及びその制御方法
US11797475B2 (en) * 2021-01-14 2023-10-24 Tencent America LLC Method and apparatus for media scene description

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134544A (ja) * 1999-11-09 2001-05-18 Hitachi Ltd 共通ログ生成方法及び共通ログ分析方法
JP2005517243A (ja) * 2002-02-06 2005-06-09 ジャムダット モービル インコーポレイテッド ポータブル電子装置内の常駐アプリケーションのためのデータロギング
JP2007050177A (ja) * 2005-08-19 2007-03-01 Toshiba Corp ログ管理システム、ログ管理システムプログラム及びログ管理システムプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008292825A (ja) * 2007-05-25 2008-12-04 Seiko Epson Corp プリンタ
JP2010081011A (ja) * 2008-09-24 2010-04-08 Kyocera Mita Corp 電子機器、管理システム及び管理プログラム
JP2013171420A (ja) * 2012-02-21 2013-09-02 Canon Inc 管理システム、画像形成装置、画像形成装置の制御方法、及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009448A (ja) 2007-06-29 2009-01-15 Mitsubishi Electric Corp データ送信装置及びデータ送信方法及びプログラム
JP5424765B2 (ja) * 2009-07-28 2014-02-26 キヤノン株式会社 監視装置及び情報処理方法
JP6485989B2 (ja) * 2011-12-26 2019-03-20 キヤノン株式会社 画像形成装置およびその制御方法
JP5612036B2 (ja) * 2012-07-31 2014-10-22 京セラドキュメントソリューションズ株式会社 プッシュ通知システム及びこれを構成するプロバイダ
JP6102627B2 (ja) * 2013-08-09 2017-03-29 ブラザー工業株式会社 中継装置、画像処理装置、中継方法、プログラム、及びシステム
JP6355330B2 (ja) 2013-12-24 2018-07-11 キヤノン株式会社 ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム
EP3187949B1 (en) * 2014-08-27 2024-02-14 Kabushiki Kaisha Toshiba Monitoring control system and data collecting device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134544A (ja) * 1999-11-09 2001-05-18 Hitachi Ltd 共通ログ生成方法及び共通ログ分析方法
JP2005517243A (ja) * 2002-02-06 2005-06-09 ジャムダット モービル インコーポレイテッド ポータブル電子装置内の常駐アプリケーションのためのデータロギング
JP2007050177A (ja) * 2005-08-19 2007-03-01 Toshiba Corp ログ管理システム、ログ管理システムプログラム及びログ管理システムプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008292825A (ja) * 2007-05-25 2008-12-04 Seiko Epson Corp プリンタ
JP2010081011A (ja) * 2008-09-24 2010-04-08 Kyocera Mita Corp 電子機器、管理システム及び管理プログラム
JP2013171420A (ja) * 2012-02-21 2013-09-02 Canon Inc 管理システム、画像形成装置、画像形成装置の制御方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10589572B2 (en) * 2016-01-13 2020-03-17 Sumitomo Rubber Industries, Ltd. Pneumatic tire
JP7399548B2 (ja) 2021-01-06 2023-12-18 テンセント・アメリカ・エルエルシー メディアシーン記述のための方法および装置

Also Published As

Publication number Publication date
US10691389B2 (en) 2020-06-23
US20190265931A1 (en) 2019-08-29
JP7071161B2 (ja) 2022-05-18

Similar Documents

Publication Publication Date Title
JP7071161B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
KR101377468B1 (ko) 화상처리장치, 화상처리장치의 제어 방법 및 컴퓨터 프로그램을 격납한 기록 매체
US20110261401A1 (en) Server apparatus, and terminal apparatus
JP5704800B2 (ja) データ処理装置、データ処理処理方法、プログラム
JP5868138B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム
US10379797B2 (en) Image forming apparatus that notifies a server, based on data size information, whether a portable document format is supported, and related method of controlling printing and printing system
JP2012088838A (ja) 情報処理装置、情報処理装置を制御する制御方法、およびそのプログラム
EP1059583A2 (en) Methods and apparatus for remote execution of an application over the internet
JP5571911B2 (ja) 画像処理装置、その制御方法、及びプログラム
JP5371611B2 (ja) データ処理システム、サーバ、サーバの制御方法、及びプログラム
JP2014011582A (ja) 画像処理装置及びその制御方法とプログラム
JP2008269404A (ja) 画像形成装置、プログラム及び記憶媒体
JP2010218442A (ja) 情報処理装置及びその制御方法、コンピュータプログラム
JP7240246B2 (ja) 画像形成装置、その制御方法と画像形成システム、およびプログラム
JP2012023716A (ja) 画像処理装置とその制御方法
JP5691492B2 (ja) 印刷システム、印刷装置、印刷方法および印刷プログラム
JP5274203B2 (ja) データ処理装置、方法、プログラム、並びに、データ処理システム
JP2017011538A (ja) 画像処理装置、その制御方法、及びプログラム
JP6287174B2 (ja) 情報処理システム、情報処理装置、情報処理方法および情報処理プログラム
JP2019062476A (ja) 画像処理装置、画像処理装置の制御方法、プログラムおよび記憶媒体
JP7293317B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
JP2012250437A (ja) 画像形成装置管理システム
JP2020042425A (ja) 情報処理装置、制御方法、およびプログラム
JP6756234B2 (ja) スキャナ
JP2021117537A (ja) 画像形成装置、画像形成装置の制御方法及びプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210204

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220302

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220506

R151 Written notification of patent or utility model registration

Ref document number: 7071161

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151