説明

情報処理装置、稼働時間計算方法、及び、プログラム

【課題】ユーザ操作時間を含んだより実際の稼動時間に近いデバイスの稼働時間を算出すること。
【解決手段】分析サーバ104の認証ログ収集部504が複合機から認証ログ情報を収集する。また、分析サーバ104のジョブログ収集部503が複合機からジョブログ情報を収集する。そして、分析サーバ104の分析処理部502が、ジョブログ情報で特定されるジョブ処理期間に対応する第1の稼働期間、及び、認証ログ情報から特定されるログイン期間のうち前記認証ログ情報に関連するジョブログ情報から特定されるジョブ処理期間と重複しない期間に対応する第2の稼働期間から、デバイスの稼働時間を計算する構成を特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プリンタや複合機等の画像処理装置(以下、デバイスと呼ぶ)の稼働時間を導出するための技術に関するものである。
【背景技術】
【0002】
近年、デバイスの最適配置、最適機種選定といった分析のために、デバイス稼働率が使用されている。
デバイスなどの稼働率とは、デバイスが運用されている時間(例えば勤務時間)のうち、デバイスが使用されていた時間(稼働時間)の割合を指す。この稼働率より、デバイスの負荷状況を分析し、その結果を元に、顧客に最適な機種の選定、提案などが行われている。
【0003】
従来、デバイスの稼動率の算出機能では、デバイスが使用されていた時間として、ジョブ処理を行っている時間(ジョブ処理時間)を使用して計算を行っていた。
ジョブ処理時間は、デバイスから収集されるログ情報に含まれるジョブの開始時刻と終了時刻の情報をもとに、ジョブの終了時間からジョブの開始時間を減算して算出される。ジョブ処理時間は、例えばある期間に処理されたジョブの合計処理時間を算出して、デバイス稼働状態の分析などに利用していた。
【0004】
また、Webアプリケーションなどのサーバシステムの稼働率の分析においては、サーバの稼働率の算出方法として、サーバの使用されていた時間として、ユーザがログインしていた時間(ログイン時間)を使用して計算が行われていた。
ログイン時間は、サーバへのログイン履歴を保持し、ログアウト時刻からログイン時刻を減算して算出される。そして、ある期間にログインされていた時間の合計を算出してサーバの稼働状況の分析などに利用していた。
【0005】
特許文献1のシステムでは、画像形成装置において、操作パネルのキーの操作や、原稿のフィーダーへのセットのようなコピー操作開始を検知し、その時刻から、コピー処理完了までの時間を計測し、ジョブ処理時間を計測している。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平06−251218号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述したように、デバイスの稼働時間/稼働率の計算において、従来は、ジョブ処理時間を累積した時間をデバイスの稼働時間としていた。しかし、この方法では、ユーザがデバイスを操作しジョブを発行するまでの時間(操作時間)は、稼働時間に含まれない。
また、それら操作時間以外にも、例えば、デバイスのボックス機能に保存されている文書の操作(閲覧、編集)などのジョブとしてデバイスで処理されない操作に関する時間は計測されない。また、ジョブに関連する操作は行ったが、そのジョブの発行をキャンセルした場合などの時間も計測されない。
【0008】
本来、デバイスの稼働時間の計算においては、デバイスが使用されている全ての時間を計測する必要がある。よって、従来のデバイスから収集したログ情報をもとにデバイスの稼働時間を計算する方法では、適切なデバイスの稼働時間の計算されているとはいえなかった。
【0009】
本発明は、上記の問題点を解決するためになされたものである。
本発明の目的は、例えば適切な稼働率の分析などのために、画像処理装置より収集されるログ情報を用いて、より実際の運用に近い稼動時間を求めることができる仕組みを提供することである。
【課題を解決するための手段】
【0010】
本発明は上記目的を達成するため、画像処理装置の稼働時間を計算する情報処理装置であって、前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得手段と、前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得手段と、前記ジョブログで特定されるジョブ処理期間に対応する第1の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第2の稼働期間から、前記画像処理装置の稼働時間を計算する計算手段とを有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、適切な稼働率の分析などのために、画像処理装置より収集されるログ情報を用いて、より実際の運用に近い稼動時間を求めることができる。
【図面の簡単な説明】
【0012】
【図1】本発明におけるデバイス稼動状況分析システムの構成を示す模式図である。
【図2】分析サーバ等を構成するコンピュータの構成の例を示した図である。
【図3】複合機の内部構成の一例を示したブロック図である。
【図4】ホストコンピュータの詳細な機能構成を示すブロック図である。
【図5】分析サーバの詳細な機能構成を示すブロック図である。
【図6】複合機の詳細な機能構成を示すブロック図である。
【図7】ジョブログ情報テーブルを示す図である。
【図8】認証ログ情報テーブルを示す図である。
【図9】ユーザ別の認証情報を格納するテーブルを示す表である。
【図10】実施例1における稼働時間の分析処理の流れを示したフローチャートである。
【図11】ジョブ処理に関す稼動時間の算出処理の概念を示した図である。
【図12】認証ログによる稼働時間の算出処理の概念を示した図である。
【図13】S1505に示した稼働時間算出処理のを示すフローチャートである。
【図14】分析結果テーブルの構成を示す図である。
【図15】S1507に示した稼働時間加算処理を示すフローチャートである。
【図16】実施例2における稼働時間の分析処理を示したフローチャートである。
【図17】認証経路・ジョブタイプ関連テーブルを示す図である。
【図18】S1509の認証ID設定処理を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、図面などを用いて本発明の実施例について説明する。
【実施例1】
【0014】
図1は、本発明におけるデバイス稼動状況を分析するシステムの構成を示す模式図である。
図1において、101はホストコンピュータであり、ユーザが使用して画像データを生成し、印刷指示を行うためのものである。
102,103は複合機であり、ホストコンピュータ101等からネットワークを介して印刷データを受信し、電子写真技術やインクジェット技術などの既知の印刷技術を利用して実際の用紙に印刷を行う。
【0015】
複合機102、複合機103は、スキャナを介して紙原稿を読み取り、コピーを行ったり、画像データに変換してEmailやファクシミリなどで送信する機能も持つ。なお、ここでは、複合機を例に挙げるが、もちろん、コピー機能を持たない単機能のプリンタやスキャナ等を含む画像処理装置(デバイス)が稼動状況分析の対象デバイスとなってもよい。
104は分析サーバであり、複合機102,103の稼動状況分析を行う。ホストコンピュータ101、複合機102、複合機103、分析サーバ104は、イーサネット(登録商標)などの既知の技術によるネットワーク105により相互に通信可能に接続されている。
【0016】
本実施例では、分析サーバ104を、複合機102、複合機103とは別構成として設けているが、同様の機能をもつモジュールを複合機102、複合機103の内部に設けるように構成しても構わない。この場合、分析サーバ104と複合機102、複合機103の間で行われるネットワーク通信は、システムバスなどを介したデータの受け渡しに置き換えて考えられる。
【0017】
<コンピュータの構成>
図2は、ホストコンピュータ101、分析サーバ104を構成するコンピュータの内部構成の例を示した図である。
図2において、200はコンピュータ(PC)全体である。PC200は、ROM202或いは例えばハードディスク(HD)などの大規模記憶装置211に記憶されたソフトウェアを実行するCPU201を備える。CPU201は、システムバス204に接続される各デバイスを総括的に制御する。
【0018】
203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。205はキーボードコントローラ(KBDC)で、PC200に備えられたキーボード(KBD)209からの指示入力を制御する。
206はディスプレイコントローラ(DISPC)で、例えば液晶ディスプレイなどで構成される表示モジュール(DISPLAY)210の表示を制御する。
207はディスクコントローラ(DKC)であり、大容量記憶デバイスであるハードディスク(HD)211などの大規模記憶装置を制御する。
208はネットワークインタフェースカード(NIC)で、ネットワーク105を介して、他のノードと双方向にデータをやりとりする。212はタイマ(Timer)である。
【0019】
<複合機の構成>
図3は、複合機102,103の内部構成の一例を示したブロック図である。
図3において、300は複合機全体である。複合機300は、ROM302或いは例えばハードディスク(HD)などの大規模記憶装置311に記憶されたソフトウェアを実行するCPU301を備える。CPU301は、システムバス304に接続される各デバイスを総括的に制御する。
303はRAMで、CPU301の主メモリ、ワークエリア等として機能する。305はパネルコントローラ(PanelC)で、複合機に備えられたオペレーションパネル(Panel)309からの指示入力を制御する。
【0020】
306はディスプレイコントローラ(DISPC)で、例えば液晶ディスプレイなどで構成される表示モジュール(DISPLAY)310の表示を制御する。
307はディスクコントローラ(DKC)であり、大容量記憶デバイスであるハードディスク(HD)311を制御する。
308はネットワークインタフェースカード(NIC)で、ネットワーク105を介して、他のノードとデータをやりとりする。
312はスキャナコントローラ(SCANC)で、複合機に備えられた光学式スキャナ装置313を制御し、紙原稿の読み取りを行う。
314はプリンタコントローラ(PRNC)で、複合機に備えられたプリンタ装置315を制御し、電子写真技術やインクジェット技術などの既知の印刷技術を利用して実際の用紙に印刷を行う。
【0021】
<ホストコンピュータの詳細構成>
図4は、ホストコンピュータ101の詳細な機能構成を示すブロック図である。
図4において、401は、印刷指示を行う印刷アプリケーションであり、プリンタドライバ402に対して描画命令などを送信することにより、印刷指示を行う。
プリンタドライバ402は、印刷アプリケーションから受けた描画命令などを複合機102,103が解釈可能な印刷データ、すなわちPDL(Page Description Language;ページ記述言語)に変換する。
【0022】
さらに、プリンタドライバ402は、デバイス認証が設定されている場合、ユーザ認証ダイアログを表示し、ユーザに複合機を使用するためにユーザ名、パスワードの入力を要求する。そして、入力されたユーザ名、パスワードを、プリンタドライバ402が、ネットワーク105経由で印刷先の複合機に送信して認証要求を行う。複合機では、後述する認証処理部613(図6)でユーザ名、パスワードを照合し、認証の成否をプリンタドライバ402に返信する。
【0023】
認証が失敗した場合、プリンタドライバ402は、印刷をキャンセルする。一方、認証が成功した場合、プリンタドライバ402は、入力されたユーザ名をジョブオーナー情報として印刷ジョブに付加し、印刷ジョブを作成する。
なお、プリンタドライバ402にデバイス認証が設定されていない場合には、プリンタドライバ402は、ホストコンピュータへログインしているユーザ名をジョブオーナー情報として印刷ジョブに付加し、印刷ジョブを作成する。
【0024】
続いて、プリンタドライバ402は、作成した印刷ジョブデータを印刷ジョブ送信部403に送信する。
印刷ジョブ送信部403は、プリンタドライバ402より受け取った印刷ジョブを複合機に送信する。
404はWebブラウザであり、HTMLデータを解釈し、ディスプレイ210へ画面描画を行い、キーボードなどからユーザ操作を受けて付け、HTTP通信部405へ要求を送信する。なお、Webは、World Wide Webを示し、HTMLは、HyperText Markup Languageを示す。
【0025】
405はHTTP通信部であり、Webブラウザ404からの通信要求を受けて、NIC208を経由してHTTP又はHTTPSプロトコルを用いて複合機等と通信を行い、Webページの要求、Webページデータの受信などを行う。なお、HTTPは、HyperText Transfer Protocolを示し、HTTPSは、Hypertext Transfer Protocol over Secure Socket Layerを示す。
なお、上述した401〜405は、ホストコンピュータ101のCPU201がホストコンピュータ101のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
【0026】
<分析サーバ:詳細構成>
図5は、分析サーバ104の詳細な機能構成を示すブロック図である。
図5において、500は分析サーバ104全体を示す。501はインタフェース部であり、NIC208を通じてネットワーク105を経由して、複合機102,103との通信を行う。
502は分析処理部であり、ジョブログや認証ログを元にデバイスの稼動状況分析処理を行い、分析結果を記憶装置211に記録する。
【0027】
503はジョブログ収集部であり、複合機102、複合機103よりジョブログ情報(後述する図7に示す)を収集し、分析サーバ104の記憶装置211に保管するジョブログ取得処理を実行する。504は認証ログ収集部であり、複合機102、複合機103より認証ログ情報(後述する図8に示す)を収集し、分析サーバ104の記憶装置211に保管する認証ログ取得処理を実行する。これらログ情報の収集は、デバイスから所定のタイミングで送る設定であっても、分析サーバ側から要求することで取得する設定であってもよい。
なお、上述した各機能部501〜504は、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
【0028】
<複合機:詳細構成>
図6は、複合機102、複合機103の詳細な機能構成を示すブロック図である。
図6において、600は複合機全体を示す。601はインタフェース部であり、ネットワーク105と接続し、ホストコンピュータ101から印刷ジョブを受信する。
602は印刷データ格納部であり、RAM303やハードディスク(HD)311に、印刷ジョブデータを一時的に格納する。
610はUI制御部であり、パネルコントローラ(Panel C)305を経由してオペレーションパネル309を制御し、ユーザの複合機へのログイン要求や、コピー指示や、スキャン送信指示を受け付ける。
【0029】
UI制御部610は、ユーザからのログイン要求を受けると、認証処理部613にユーザ名、パスワードなどの認証情報を送り認証要求を行う。認証処理部613において認証が成功すると、UI制御部610は、認証処理部613から認証IDを受け取る。その後、UI制御部610は、ログアウト要求を受けるまでユーザ名、認証IDを保持し、ユーザ操作によりコピーなどのジョブ発行が指示されると、ジョブ管理部603へジョブ発行要求と共にユーザ名、認証IDを送る。また、UI制御部610は、オペレーションパネルからログアウト操作がなされるとログアウト処理を行う。
【0030】
また、UI制御部610は、動作設定情報として、「タイムアウト時間」を持ち、オペレーションパネルから「タイムアウト時間」で設定された時間内に、操作が行われなかった場合には、ログアウト処理を行う。なお、「タイムアウト時間」の設定値は、外部モジュール、例えば分析サーバ104などからも参照可能とする。また、「タイムアウト時間」は、複合機のパネル309やホストコンピュータ101等から設定可能である。
さらに、UI制御部610は、ログアウト処理において、認証処理部613にユーザ名、認証ID、ログアウト要因情報と共にログアウト通知を行い、認証情報や認証IDを破棄する。
【0031】
ジョブ管理部603は、印刷ジョブを解析し、ユーザ名や、印刷部数やカラー印刷などの出力属性情報を取得し、ジョブの開始時刻と共にジョブ情報として管理する。ジョブ管理部603は、コピーなどオペレーションパネルからのジョブが発行された場合にはUI制御部610から、Webブラウザからのジョブ発行の場合にはリモートUI制御部612から、出力属性情報やユーザ名などを受信する。
604は印刷データ展開部であり、ジョブ管理部に格納されたジョブ情報に従い、前記印刷データ格納部から前記印刷データを取得して画像生成処理を行い、イメージデータを生成する。
【0032】
605はスキャナ制御部であり、スキャナコントローラ312を制御し、紙原稿のスキャンを行い、作成されたイメージデータを作成する。
606はイメージ格納部であり、前記印刷データ展開部604、スキャナ制御部605が生成したイメージデータをRAM303やハードディスク(HD)311に一時的に格納する。
【0033】
607はプリンタ制御部であり、プリンタエンジン609を制御し、イメージ格納部606に格納されたイメージデータの印刷を行わせる。
プリンタエンジン609は、前記イメージ格納部に格納されたイメージデータを、電子写真技術やインクジェット技術などの既知の印刷技術を用いて印刷用紙などのメディアに実際に印刷するプリンタ装置を示している。
【0034】
608はジョブログ管理部であり、ジョブログ情報(図7に示すジョブログ情報)を保管・管理する。ジョブ管理部603は、ジョブが完了すると管理するジョブ情報をジョブログ情報としてジョブログ管理部608に送信し、ジョブログ管理部608は、このジョブログ情報を保管する。また、ジョブログ管理部608は、分析サーバ104からの要求に応答してジョブログ情報を送信する。
【0035】
リモートUI制御部612は、HTTP又はHTTPSサーバとして働き、ホストコンピュータ101上で動作するWebブラウザ404からの要求を受け付ける。リモートUI制御部612は、Webブラウザ404からの要求を受けるとセッション情報から認証情報を取得し、認証処理部613にアクセス可否を問い合わせる。認証処理部613によりアクセスが許可された場合には、リモートUI制御部612は、要求されたHTMLデータをWebブラウザ404に送信する。一方、認証処理部613にアクセスが許可されない場合には、リモートUI制御部612は、ログインフォーム画面を表示するためのHTMLデータをWebブラウザ404に送信する。
【0036】
リモートUI制御部612は、Webブラウザ404からログインフォームへの入力データを受信すると、認証処理部613へ認証要求を出し、認証が成功した場合には要求されたHTMLデータを送信する。
認証処理部613は、複合機への認証処理及び管理を行う。認証処理部613は、ユーザがオペレーションパネル309や、Webブラウザ404のログインフォームへ入力したログイン名、パスワードなどを元にユーザ認証を行う。また、認証処理部613は、プリンタドライバ402からの認証要求を受け、ユーザ名、パスワードの照合を行い、認証が成功した場合には認証IDを発行し、認証の成否と共に返信する。
【0037】
認証処理部613は、認証情報テーブル(図9)を保持し、該テーブルに登録されたユーザ名、パスワードと比較することによりユーザ認証を行う。若しくは、認証処理部613は、図示していない認証サーバとの通信を行い、認証サーバ側で保持する認証情報テーブルを使用してユーザ認証を行ってもよい。
認証処理部613は、認証処理を行うと、認証ID、ログインユーザ名、ログイン時刻、ログアウト時刻、認証の成否、認証経路などの情報を認証ログ情報として、認証ログ管理部611に送信し、認証ログ管理部611で保管する。
【0038】
なお、認証経路情報として使用する情報は、認証処理部613がどのモジュールからログイン要求を受けたかを判定してもよいし、ログイン要求側のモジュールが識別情報を送信するようにしてもよい。
さらに、認証処理部613は、ログアウト通知を受けると、受信したユーザ名、認証ID、ログアウト要因情報を認証ログ管理部611に送信し、認証ログ管理部611は認証ログ情報に情報を追加する。
【0039】
認証ログ管理部611は、認証ログ情報(後述する図8に示す認証ログ情報)を保管・管理する。認証ログ情報は、後述する図8に示すように、認証ID、ログインユーザ名、ログイン時刻、ログアウト時刻などを含む。また、認証ログ管理部611は、分析サーバ104からの要求に応答して認証ログを送信する。
【0040】
<ジョブログ情報テーブル>
図7は、ジョブログ管理部608で保持されるジョブログ情報を格納するテーブル(ジョブログ情報テーブル)を示す図である。
図7において、701はジョブログIDであり、ジョブログをシステム内で一意に識別するIDである。702はジョブのタイプ(ジョブ種別)である。ジョブタイプ702としては、ホストからの印刷であるプリント、複合機上におけるコピー、スキャン、及び複合機内に保存された文書を印刷するボックスプリントがここでは図示されている。ほかにも、複合機から外部装置にデータ送信するSENDなどもジョブタイプに含まれる。
【0041】
703は、ジョブの開始時刻である。この開始時刻703により、ジョブ開始時点を特定可能となる。704は、ジョブの終了時刻である。この終了時刻704により、ジョブ終了時点を特定可能となる。705はユーザ名であり、ジョブを発行したユーザ名が記録される。706は認証IDであり、ジョブを発行するときにログインした際に記録された認証ログのID(ジョブに対応するログイン処理の認証ID)である。
【0042】
これらの情報により、ジョブログ管理部608では、誰が、どのようなジョブがどの時刻に開始され終了したかという情報を記録する。
711〜713は、各ジョブログを示す。例えば、711は、「Matsuki」というユーザが、「2007/04/30 14:31:33」に開始し、「2007/04/30 14:34:36」に終了した「プリント」ジョブに関するジョブログである。
なお、ジョブログ情報テーブルを、ジョブ種毎に作成するように構成してもよい。
【0043】
<認証ログ情報テーブル>
図8は、認証ログ管理部611で保持される認証ログ情報を格納するテーブル(認証ログ情報テーブル)を示す図である。
図8において、801は認証ログIDであり、認証ログをシステム内で一意に識別するIDである。802は認証IDであり、認証が成功した際に認証処理部613が発行したIDである。ここでは、認証が成功し、ユーザのログイン処理が成功することになる。
803は、認証要求時に指定されたユーザ名である。804は、認証(ログイン)要求があった時刻を示す。認証が成功した場合には、この時刻とログイン時刻は同義となる。よって、この認証要求があった認証時刻804により、ログイン時点を特定可能となる。
805はログアウト時刻であり、ユーザがオペレーションパネル309や、Webブラウザ404でログアウトを指定した時刻や、一定時間以上操作しなかった場合に自動的にログアウトされた時刻が記録される。このログアウト時刻805により、ログアウト時点を特定可能となる。
【0044】
806はログアウト要因であり、ユーザがオペレーションパネル309や、Webブラウザ404でログアウトを指定したのか(ユーザ操作)、一定時間以上操作しなかった場合に自動的にログアウトされたか(タイムアウト)を記録する。
807は認証経路であり、認証処理部613に認証要求を送信したモジュールの種別が記録される。認証経路の種別としては、オペレーションパネル309(パネル)や、Webブラウザ404(Web)、プリンタドライバ402(ドライバ)などが挙げられる。808は認証の成否であり、認証が成功したのか、失敗したのかが記録される。
【0045】
811〜815は、各認証ログを示す。認証ログ811は、ユーザ「matsuki」が、「パネル」から「2007/04/30 14:30:30」にログインに成功し、「2007/04/30 14:35:30」に「ユーザ操作」によりログアウトしたことを示している。
【0046】
<認証情報テーブル>
図9は、認証処理部613が保持しているユーザ別の認証情報を格納するテーブルを示す表である。
図9において、各行はユーザのエントリを示し、各列はユーザ別の認証情報が記述されている。1201はユーザ名を示し、1202はパスワードを示す。
1211の行は「kato」という名前のユーザのエントリを示す。パスワードは"Akd5sj4f"という文字列である。同様に1212において「matsuki」、1213において「sakai」という名前のユーザのエントリも定義されている。
【0047】
<分析サーバによるジョブ処理時間の分析処理>
図10は、本発明の実施例1における分析サーバ104による稼働時間の分析処理の流れを示したフローチャートである。このフローチャートに示す処理は、分析サーバ104の各機能部により実行される。即ち、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
【0048】
<分析サーバによりログ収集>
まず、ステップS1501において、分析サーバ104の分析処理部502は、稼働時間分析を開始する。
ステップS1502において、分析サーバ104のジョブログ収集部503は、インタフェース部501を介して複合機102や複合機103と通信し、ジョブログ管理部608に管理されているジョブログ情報を収集する。そして、ジョブログ収集部503は、取得したジョブログ情報を、図7で示したようなジョブログ情報テーブルで保管する。なお、ここでは図7のジョブログ情報テーブルに「補正後稼働時間」の列(不図示)を設けた形式のテーブルで保管する。また、複数のデバイスからログ情報を収集する場合、テーブル上ではデバイスの識別子の列を設けて管理される。
【0049】
続いて、ステップS1503において、分析サーバ104の認証ログ収集部504は、インタフェース部501を介して複合機102や複合機103と通信し、認証ログ管理部611で管理されている認証ログを収集する。そして、認証ログ収集部504は、取得した認証ログを、図8で示すような認証ログ情報テーブルで保管する。なお、ここでは図8の認証ログ情報テーブルに「補正後稼働時間」の列(不図示)を設けた形式のテーブルで保管する。また、複数のデバイスからログ情報を収集する場合、テーブル上ではデバイスの識別子の列を設けて管理される。
【0050】
以下、稼働時間を算出する処理について説明する。ステップS1504〜S1506のループにおいて、分析処理部502は、ステップS1503で取得した各認証ログを順番に処理対象とし、ステップS1505の処理を実行するように制御する。
ステップS1505では、分析処理部502は、処理対象の認証ログによる稼働時間の算出処理を行う。即ち、処理対象の認証ログに対応するログインに起因した稼働時間(所定の操作に対応する操作時間に対応する稼働時間、ジョブ処理時間に対応する稼働時間を含む)を算出する。この稼働時間計算処理の詳細については後述する図13で説明する。
【0051】
そして、分析処理部502は、S1505の処理を、全ての認証ログに対して実行し、全ての認証ログについてS1505の処理が終了すると、S1504〜S1506のループを抜け、ステップS1507へ処理を進める。
ステップS1507では、分析処理部502は、S1504〜S1506で算出された稼働時間を合計し、デバイスごとの合計稼働時間を計算し、分析結果テーブル(図14)へ出力する。そして、ジョブ処理時間の分析処理を終了する(S1508)。なお、S1507の稼働時間加算処理の詳細については後述する図15で説明する。
【0052】
<分析サーバにおける、稼働時間の算出>
以下、図11〜図13を参照して、図10のステップS1505の稼動時間の算出処理について、詳細に説明する。
図11は、分析サーバ104の分析処理部502におけるジョブ処理に関す稼動時間の算出処理の概念を示した図である。
<単純系>
図11では、横軸が時間軸であり、右方向が時間の流れを示している。
図11において、認証ログ812は、図8の認証ログ情報テーブルの認証ログ812を図示したものである。認証ログ812は、「2007/04/30 14:30:30」にログインし、「2007/04/30 14:35:30」にログアウトしたことを示している。
一方、ジョブログ711は、図7のジョブログ情報テーブルのジョブログ711を図示したものである。ジョブログ711は、「14:31:33」にジョブが開始され、「14:34:36」に終了したことを示している。
【0053】
デバイスでのジョブ発行までの操作時間を考慮しない場合のジョブの稼働時間(純粋なジョブ処理時間)は、以下の式で求められる。
操作時間を考慮しないジョブの稼働時間=[ジョブの終了時刻]−[ジョブの開始時刻]
ジョブログ711のコピージョブは、認証IDが「010」であり、認証IDが一致する認証ログ811で示されるログイン期間中1002〜1003に、ジョブ発行されたことが分かる。このため、ユーザログインした1002から操作が開始され、1012でジョブが開始され、1013でジョブが終了したことが分かる。即ち、1002〜1012が操作時間と推測でき、1012〜1013がジョブ処理時間となる。
【0054】
これらより、ジョブログ711で示されるジョブに起因するデバイスの稼働時間は、1002〜1013の間、即ち、図中の1020で示した時間と考える。
また、1度のログインに基づいて複数のジョブが処理される場合、2番目以降に処理されるジョブでは、直前のジョブの終了時刻からこのジョブの開始時刻までの時間を、このジョブの操作時間と推測する。これらより、このジョブに起因するデバイスの稼働時間は、直前のジョブの終了時刻からこのジョブの開始時刻までの時間(ユーザ操作時間)+このジョブの開始時刻からこのジョブの終了時刻までの時間(ジョブ処理時間)と考える。即ち、このジョブに起因するデバイスの稼働時間は、直前のジョブの終了時刻からこのジョブの終了時刻までの時間と考える。
【0055】
以上で示したように、ユーザがログインしてから最初のジョブの開始時刻までの時間や、直前のジョブの終了時刻から次のジョブの開始時刻までの時間は、ジョブの発行のためにデバイスを操作していた時間と考えられる。このため、これらの時間(ユーザ操作時間)をジョブ処理時間に加算し、稼動時間を補正する(以下、補正後稼働時間という)。これにより、より実際に近い稼働時間を求めることができる。
なお、認証ログ811のログアウト要因は「ユーザ操作」、認証経路807は「パネル」であるので、1013にコピージョブが終了し、1003にユーザのパネル操作によりログアウトされたことがわかる。即ち、1013〜1003がユーザによるログアウト操作時間と推測できる。
【0056】
これらより、認証ログ811に起因するユーザ操作時間は、1002〜1012の間、及び、1013〜1003の間と考えられる。即ち、認証ログ811に起因するユーザ操作期間は、認証ログ811のログイン期間1002〜1003のうち、関連するジョブログ711のジョブ処理期間1012〜1013と重複しない期間と考えられる。なお、1度のログインに基づいて複数のジョブが処理される場合も同様である。ただし、ログアウト要因が「タイムアウト」となっている場合等には、ユーザ操作期間からタイムアウトに要する期間を除く必要がある(詳細は、以下の「ジョブ無し系」で説明する)。
【0057】
<ジョブ無し系>
ユーザがデバイスを操作した際に、必ずジョブを発行するとは限らない。複合機に登録されている文書の閲覧、編集、削除などの操作を行う場合もあるし、途中まで操作を行ってジョブを発行せずに終了する場合も考えられる。これらの時間(操作時間)もデバイスは占有されているため、稼働時間に含めるべきである。
図12は、分析サーバ104の分析処理部502における認証ログによる稼働時間の算出処理の概念を示した図である。
図12では、横軸が時間軸であり、右方向が時間の流れを示している。
図12において、認証ログ814は、図8の認証ログ情報テーブルの認証ログ814を図示したものである。認証ログ814は、「2007/05/01 10:01:00」にログインし、「2007/05/01 10:10:00」にログアウトしたことを示している。
【0058】
また、認証ログ814では、ログアウト要因が「タイムアウト」となっている。この場合、ログアウトした時間より前のタイムアウトと判定されるまでの時間(図中、1111)に関しては、当然ユーザはなにも操作していないことになる。また、この時間に関しては、他のユーザは通常通りデバイスを利用できる時間になる。ジョブの処理やユーザ操作が全く行われていない図中1111の時間は、稼働時間に含めるべきではない。
このため、このような場合では、図中1111で示すタイムアウト時間を省いた、図中の1110の時間を、認証ログ814による稼働時間とする。
図12の例では、ログイン1101してからログアウト1102するまでのログイン時間は9分(10:01〜10:10)であり、例えば、タイムアウト時間(1111)が3分である場合には、稼働時間は6分となる。ここでは、ユーザの操作終了のタイミングを1103とみなしている。
【0059】
なお、タイムアウト時間の設定は、複合機のUI制御部610が保持しており、分析サーバ104からもネットワークを通じて取得することができる。
一方、認証ログ814でのログアウト要因が「ユーザ操作」となっている場合、ジョブが終了してからログアウトされるまでの時間もユーザがデバイスを占有していた(操作時間)と考えられ、この時間は稼働時間に含めるべきである。
即ち、認証ログ814に起因するユーザ操作期間は、認証ログ814のログイン期間1101〜1102のうち、関連するジョブログのジョブ処理期間と重複しない期間と考えられる。なお、関連するジョブの発行がない場合、ログイン期間とユーザ操作期間とが一致することとなる。
【0060】
よって、<単純系>、<ジョブ無し系>のいずれも、デバイスの稼働時間は次のようになる。ジョブ処理期間(第1の稼働期間)、及びユーザがログインしている期間のうちジョブ処理期間と重複しないユーザ操作期間(第2の稼働期間)に対応する時間の和が、デバイスの稼働時間となる。ただし、ログアウト要因が「タイムアウト」となっている場合には、ユーザ操作期間に、タイムアウトに要する期間を含めないものとする。
【0061】
また、詳細は後述するが、認証経路807が「Web」の場合には、ジョブ終了からログアウトまでの間は、複合機が占有されることはなく処理も行われていない。このため、認証経路807が「Web」の場合には、関連する最後のジョブの終了時点からログアウト時点までの期間は稼働時間には含める必要はない。よって、認証経路807が「Web」の場合には、関連する最後のジョブの終了時点からログアウト時点までの期間をユーザ操作期間に含めないものとする。
さらに、認証経路807が「ドライバ」の場合には、ジョブ処理時間以外に複合機が占有されることはないため、ジョブ処理時間以外の時間を稼働時間に含める必要はない。よって、認証経路807が「ドライバ」の場合には、そのログイン期間をユーザ操作期間には含めないものとする。
【0062】
以下、図13のフローチャートを参照して、図10のS1505に示した稼働時間算出処理(認証ログ1件ごとによる補正処理を含んだ稼働時間の算出処理)の詳細な流れの一例を示すフローチャートである。このフローチャートに示す処理は、分析サーバ104の分析処理部502により実行される。即ち、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
【0063】
まず、ステップS901において、分析サーバ104の分析処理部502は、処理対象の認証ログについて稼動時間算出処理を開始する。
ステップS902において、分析処理部502は、処理対象の認証ログの認証経路属性807が「ドライバ」(プリンタドライバ)であるか否かを判定する。そして、認証経路属性807が「ドライバ」であると判定した場合には、分析処理部502は、稼動時間算出処理を終了させる(S923)。なお、プリンタドライバ402からの認証処理である場合には、プリンタドライバ402からの認証処理が終わった後に、ネットワーク105を介して印刷ジョブが複合機に投入される。このため、ジョブが投入されるまでの間は、複合機が占有されることはなく処理も行われていない。このため、この場合、ログインしてからジョブが開始されるまでの時間、直前のジョブの終了から次のジョブの開始までの時間、最後のジョブの終了からログアウトまでの時間等は、稼働時間には含めない。
【0064】
なお、S902では「ドライバ」の場合に、処理を終了させるものとしているが、「ドライバ」又は「Web」の場合(即ち、「パネル」でない場合)に、処理を終了させるように構成してもよい。
一方、ステップS902において、認証経路属性807が「ドライバ」でないと判定した場合には、分析処理部502は、ステップS925に処理を進める。
ステップS925では、分析処理部502は、処理対象の認証ログの成否属性808が「失敗」であるか否かを判定する。そして、成否属性808が「失敗」であると判定した場合には、分析処理部502は、稼働時間算出処理を終了させる(S923)。本実施例では、ログイン処理に失敗した場合には、稼働時間には含めないものとするが、この時間も稼働時間に含める構成であってもよい。
【0065】
一方、ステップS925において、成否属性808が「失敗」でないと判定した場合には、分析処理部502は、ステップS903に処理を進める。
ステップS903では、分析処理部502は、ジョブログ収集部503が保持するジョブログテーブルを参照して、認証ログ706が、処理対象の認証ログの認証ID802属性と一致するジョブログを検索する。さらに、分析処理部502は、前記検索したジョブログを、開始時刻703の昇順にソートする。
【0066】
続いて、ステップS904において、分析処理部502は、分析サーバ104のRAM203に記憶される変数As、Ae、Aoを以下の値で初期化する。
As=ログイン時刻(処理対象の認証ログの認証(ログイン)時刻804)
Ae=ログアウト時刻(処理対象の認証ログのログアウト時刻805)
Ao=タイムアウト時間
なお、タイムアウト時間は、認証ログの取得元の複合機のUI制御部610が保持しており、ネットワークを通じて取得する。分析処理部502は、各複合機のタイムアウト時間を予め取得しておいてもよい。
【0067】
続いて、ステップS905〜S916のループにおいて、分析処理部502は、ステップS903で検索されたジョブログを順番に処理対象とし、ステップS906〜ステップS915の処理を行うように制御する。なお、ステップS903で、ジョブログが1件も検索されなかった場合には、分析処理部502は、そのままS905〜S916のループを抜けて、ステップS917に処理を進める。
【0068】
まず、ステップS906において、分析処理部502は、式「As<Ae」を評価し、式「As<Ae」が真であると判定した場合には、ステップS907に処理を進める。
ステップS907では、分析処理部502は、分析サーバ104のRAM203に記憶される変数Js、Je、Jwを以下のように初期化する。
Js=開始時刻(処理対象のジョブログの開始時刻703)
Je=終了時刻(処理対象のジョブログの終了時刻704)
Jw=0
続いて、ステップS908において、分析処理部502は、式「Ae<Js」を評価し、式「Ae<Js」が偽であると判定した場合には、分析処理部502は、ステップS924に処理を進める。
【0069】
ステップS924では、分析処理部502は、式「As<Js」を評価し、式「As<Js」が真であると判定した場合には、ステップS909に処理を進める。なお、式「As<Js」が真の場合、ログインからログアウトまでの時間と、ジョブの開始から終了までの時間で重なりがあることを示している。
ステップS909では、分析処理部502は、補正後稼働時間を示す変数Jwに「Jw=Je−As」のように値を代入する。これは、図11の概念図の1020に当たる時間である。即ち、この補正稼働時間は、従来の稼働時間であるジョブ処理時間「Je−Js」に操作時間「Js−As」を加えて補正した時間である。よって、補正稼働時間は「Jw=Je−Js+Js−As」と記載してもよい。
【0070】
次に、ステップS910において、分析処理部502は、変数AsをJeの値で更新する。これは、補正後稼働時間として使用できる時間As〜Aeのうち、As〜Jeの時間を、上記S909で既に補正稼動時間として使用したため、稼働時間として使用できる時間をJe〜Aeに変更するステップである。これにより、変数Asには、処理対象のジョブの終了時刻が格納されたことになる。
【0071】
そして、ステップS910の処理が終了すると、分析処理部502は、ステップS915に処理を進める。
一方、上記ステップS924において、式「As<Js」が偽であると判定した場合には、分析処理部502は、ステップS916に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。なお、式「As<Js」が偽となるのは、複数のジョブが平行して実行されて、他のジョブログに対する上記S910の処理により、Asがログイン時間ではなく他のジョブの終了時刻に変更されることにより起こりうる。この場合、操作時間が重複して加算され、補正後稼働時間が算出されしまうことを避けるため、特に処理を行わず、処理対象を次のジョブログに移す。
【0072】
一方、上記ステップS908において、式「Ae<Js」が真であると判定した場合には、ステップS911に処理を進める。なお、式「Ae<Js」が真の場合、ログアウトした後にジョブが開始していることを示している。
ステップS911では、分析処理部502は、処理対象の認証ログのログアウト要因806が「タイムアウト」であるかどうかを判定し、「タイムアウト」でないと判定した場合には、ステップS912に処理を進める。
【0073】
ステップS912では、分析処理部502は、以下の計算式で補正後稼働時間Jwを算出する。
Jw=(Je−Js)+(Ae−As)
これは、タイムアウトでないログアウト後にジョブが開始したジョブログの補正後稼働時間Jwは、ジョブ処理時間「Je−Js」と、ログインからログアウトまでの時間「Ae−As」を加算した時間となることを示している。この場合、ログインからログアウトまでの時間「Ae−As」が操作時間となる。よって、補正後稼働時間Jw=ジョブ処理時間「Je−Js」+操作時間「Ae−As」となる。
そして、ステップS912の処理が終了すると、分析処理部502は、ステップS914に処理を進める。
【0074】
一方、上記ステップS911において、処理対象の認証ログのログアウト要因806が「タイムアウト」であると判定した場合には、分析処理部502は、ステップS913に処理を進める。
ステップS913では、以下の計算式で補正後稼働時間Jwを算出する。
Jw=(Je−Js)+(Ae−As−Ao)
これは、タイムアウトによるログアウト後に開始したジョブのジョブログによる補正後稼働時間Jwが、ジョブ処理時間「Je−Js」に、ログインからログアウトまでの時間「Ae−As」からタイムアウト時間Aoを減算した時間を、加算した時間となることを示している。なお、上記「Ae−As−Ao」は、図12の概念図の1110に当たる時間である。この場合、ログインからログアウトまでの時間からタイムアウト時間Aoを減算した時間「Ae−As−Ao」が操作時間となる。よって、補正後稼働時間Jw=ジョブ処理時間「Je−Js」+操作時間「Ae−As−Ao」となる。
【0075】
そして、ステップS913の処理が終了すると、分析処理部502は、ステップS914に処理を進める。
次に、ステップS914では、分析処理部502は、変数AsをAeで更新する。これは、上記S912,S913でログインからログアウトまでの時間を既に補正後稼働時間として使用したため、補正後稼働時間として使用できる時間が残っていないことを示す。
そして、ステップS914の処理が終了すると、分析処理部502は、ステップS915に処理を進める。
【0076】
次に、ステップS915では、分析処理部502は、S910、S912、又はS913で計算した変数Jwの値を、ジョブログテーブルの該当ジョブログの「補正後稼働時間」の列(不図示)に設定する。
そして、ステップS915の処理が終了すると、分析処理部502は、ステップS916に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。
一方、上記ステップS906において、式「As<Ae」が偽であると判定した場合には、分析処理部502は、ステップS916に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。なお、式「As<Ae」が偽である場合とは、As〜Aeが稼働時間に加算できる時間であるが、上記S910や上記S914等の処理により、変数Asが更新され、補正後稼働時間として使用できる時間が残っていないことを示している。
【0077】
そして、ステップS905〜S916のループ処理が終了し、処理対象の認証ログに関連する全ジョブログ(S903で検索された全ジョブログ)に対する補正処理が終了すると、分析処理部502は、ステップS917に処理を進める。
ステップS917では、分析処理部502は、式「As<Ae」を評価し、式「As<Ae」が偽であると判定した場合には、ステップS923に進み処理を終了する。これは、稼働時間として加算可能な時間が残っていないことを示す。
【0078】
一方、ステップS917において、式「As<Ae」が真であると判定した場合には、分析処理部502は、ステップS918に処理を進める。
ステップS918では、分析処理部502は、処理対象の認証ログの認証経路807属性が「パネル」であるか否かを判定し、「パネル」でないと判定した場合には、ステップS923に進み処理を終了する。この場合、認証経路が「Web」である場合が含まれる。認証経路が「Web」である場合、ユーザがブラウザでアクセスしただけの時間は稼働時間には含めず、ジョブが発行された場合のみ、そのジョブ発行のための操作時間分だけを稼働時間に含める。
【0079】
一方、ステップS918において、処理対象の認証ログの認証経路807属性が「パネル」であると判定した場合には、分析処理部502は、ステップS919に処理を進める。
ステップS919では、分析処理部502は、処理対象の認証ログのログアウト要因806が「タイムアウト」であるかどうかを判定し、「タイムアウト」でないと判定した場合には、ステップS920に処理を進める
ステップS920では、分析処理部502は、以下の計算式で認証ログの補正後稼働時間Awを算出する。
Aw=Ae−As
これは、「タイムアウト」していない認証ログの補正後稼働時間Awが、ログインからログアウトまでの時間「Ae−As」(操作時間)となることを示している。
【0080】
そして、ステップS920の処理が終了すると、分析処理部502は、ステップS922に処理を進める。
一方、ステップS919において、認証ログのログアウト要因806が「タイムアウト」であると判定した場合には、分析処理部502は、ステップS921に処理を進める
ステップS921では、分析処理部502は、以下の計算式で認証ログの補正後稼働時間Awを算出する。
Aw=Ae−As−Ao
これは、「タイムアウト」した認証ログの補正後稼働時間Awが、ログインからログアウトまでの時間「Ae−As」からタイムアウト時間Aoを減算した時間(操作時間)となることを示している。これは、図12の概念図の1110に当たる時間である。
【0081】
そして、ステップS921の処理が終了すると、分析処理部502は、ステップS922に処理を進める。
なお、上記ステップS920,S921で使用する「As」は、それ以前のステップで初期値の認証(ログイン)時刻804から変更されている場合がある。これは、既にジョブログの稼働時間処理(S905〜S916)で補正加算のために使用された場合である。この場合、「As」は最後のジョブの終了時刻などに設定されている。例えば、S920の場合、図11の711の終了時刻1013から811のログアウト時刻1003の時間が、操作時間として、補正後稼働時間Awに使用される。
【0082】
続いて、ステップS922において、分析処理部502は、認証ログテーブルの該当認証ログの「補正後稼働時間」列(不図示)に、ステップS920又はS921で計算されたAwを設定し、稼働時間算出処理を終了する(S923)。
【0083】
次に、図14〜図15を参照して、図10のステップS1507の稼動時間加算処理について、詳細に説明する。
<分析結果テーブル>
図10のステップS1507において分析結果(稼働時間加算結果)が出力される分析結果テーブルについて説明する。図14は、分析結果テーブルの構成を示す図である。なお、分析結果テーブルは記憶装置211に記憶される。
図14において、1401は複合機IDであり、複合機を識別するIDが設定される。
1402は稼動時間であり、図10のS1507の稼働時間加算処理により算出された稼動時間が格納される。
【0084】
<稼動時間加算処理>
図15は、図10のステップS1507に示した稼働時間加算処理の詳細な流れの一例を示すフローチャートである。このフローチャートに示す処理は、分析サーバ104の分析処理部502により実行される。即ち、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
【0085】
まず、ステップS1301において、分析処理部502は、稼働時間加算処理を開始する。
次に、ステップS1302〜S1316のループにおいて、分析処理部502は、分析サーバ104で管理する各複合機を順番に処理対象とし、ステップS1303〜S1315の処理を行うように制御する。
【0086】
まず、ステップS1303において、分析処理部502は、分析サーバ104のRAM203に記憶される、処理対象の複合機の稼動時間を表す変数Dwを「0」で初期化する。
続いて、ステップS1304において、分析処理部502は、ジョブログ収集部503が保持するジョブログテーブルより、処理対象の複合機のジョブログを検索する。
次に、ステップS1305〜S1309のループにおいて、分析処理部502は、上記S1304で検索された全てのジョブログを順番に処理対象とし、ステップS1306〜S1308の処理を行うように制御する。
【0087】
まず、ステップS1306では、分析処理部502は、処理対象のジョブログの「補正後稼働時間」が設定されているか否かを判定し、設定されていると判定した場合には、ステップS1307に処理を進める。
ステップS1307では、分析処理部502は、変数Dwに、ジョブログの「補正後稼働時間」を加算する。なお、図13のフローチャートで示したように、このジョブログの「補正後稼働時間」は、ジョブの操作時間+処理時間を意味する。
【0088】
一方、上記ステップS1306において、処理対象のジョブログの「補正後稼働時間」が設定されていないと判定した場合には、分析処理部502は、ステップS1308に処理を進める。
ステップS1308では、分析処理部502は、処理対象のジョブログの終了時刻704から開始時刻703を減算した時間を変数Dwに加算する。これは、認証ログによる稼働時間補正がなされていない場合、ジョブの処理時間を稼働時間として加算すること意味する。
そして、ステップS1307又はS1308の処理が終了すると、分析処理部502は、ステップS1309に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。
【0089】
一方、ステップS1309で、S1304で検索された全ジョブログについて、S1306〜S1308の処理を終了したと判定した場合、分析処理部502は、S1305〜S1309のループを抜け、ステップS1310に処理を進める。
ステップS1310では、分析処理部502は、認証ログ収集部504が保持する認証ログテーブルより処理対象の複合機の認証ログを検索する。
次に、ステップS1311〜S1314のループにおいて、分析処理部502は、上記S1310で検索された全ての認証ログを順番に処理対象とし、ステップS1312〜S1313の処理を行うように制御する。
【0090】
まず、ステップS1312では、分析処理部502は、処理対象の認証ログの「補正後稼働時間」が設定されているかを判定し、設定されている場合にはステップS1313に処理を進める。
ステップS1313では、分析処理部502は、変数Dwに、認証ログの「補正後稼働時間」を加算し、ステップS1314に処理を進める。
一方、上記ステップS1312において、処理対象の認証ログの「補正後稼働時間」が設定されていないと判定した場合には、分析処理部502は、そのままステップS1314に処理を進める。
【0091】
そして、ステップS1314において、分析処理部502は、まだ未処理の認証ログがあれば、処理対象を次の認証ログに移す。
一方、S1314において、S1310で検索された全認証ログについて、S1312〜S1313の処理を終了したと判定した場合、分析処理部502は、S1311〜S1314のループを抜け、ステップS1315に処理を進める。
【0092】
次に、ステップS1315では、分析処理部502は、図14に示した稼働時間分析結果テーブルに行を追加し、複合機ID1401に、処理対象の複合機の識別子を設定し、稼働時間1402に、Dwを設定する。
そして、ステップS1316において、分析処理部502は、まだ未処理の複合機があれば、処理対象を次の複合機に移す。
一方、ステップS1316において、全ての複合機について、S1303〜S1315の処理を終了したと判定した場合には、分析処理部502は、S1302〜S1316のループを抜け、処理を終了する(S1317)。
【0093】
以上のように、ジョブログによるジョブ処理時間に、認証ログによるユーザ操作時間(認証ログとジョブログにより特定される)を加えてデバイスの稼働時間を計算することにより、より実際に近いデバイスの稼働時間を算出できる。
なお、図13のS909、S912、S913では、ジョブ処理時間にユーザ操作時間を加算した値を、ジョブログによる補正後稼働時間として算出した。しかし、図13のS909、S912、S913において、ユーザ操作時間をジョブログによる「操作時間」として算出するようにしてもよい。この構成の場合、図15のS1307を、DW=DW+上記「操作時間」+(ジョブ終了時刻−ジョブ開始時刻)とする。これにより、上述した実施例と同様の結果を得ることができる。
【実施例2】
【0094】
上記実施例1では、複合機のジョブログに認証IDが設定されており、認証ログとジョブログの関連付けが明確であった。
実施例2では、複合機のジョブログに認証IDが設定されていない場合のジョブログと認証ログの関連付け方法について説明する。即ち、本実施例のジョブログ情報テーブルでは、認証ID706列が設定されていないものとする。
【0095】
<分析サーバによるジョブ処理時間の分析処理>
図16は、本発明の実施例2における分析サーバ104によるの流れを示したフローチャートである。このフローチャートに示す処理は、分析サーバ104の各機能部により実行される。即ち、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
なお、本実施例の稼働時間の分析処理は、上述した実施例1の図10で示した稼働時間の分析処理の、ステップS1503とステップS1504の間に、ステップS1509を追加したものである。
【0096】
図16のステップS1509では、分析処理部502は、ジョブログに対して認証IDを設定する認証ID設定処理(図18)を実行する。以下、ステップS1509の認証ID設定処理について、図17,図18を参照して説明する。
まず、図17を用いて、分析サーバ104の分析処理部502で保持される認証経路・ジョブタイプ関連テーブルについて説明する。
図17は、分析サーバ104の分析処理部502で保持される認証経路・ジョブタイプ関連テーブルを示す図である。
図17に示すように、認証経路・ジョブタイプ関連テーブルは、認証経路の種類1701と、その認証経路の認証ログと関連付け可能なジョブのタイプの種類1702を示している。
【0097】
1711のレコードは、認証経路が「パネル」(オペレーションパネル)である認証ログは、ジョブタイプが「コピー」、「ボックスプリント」、「スキャン」の種類のジョブログと関連付けが可能であることを示している。
同様に、1712のレコードは、認証経路が「Web」(Webブラウザ)である認証ログは、ジョブタイプが「ボックスプリント」であるジョブログと関連付けが可能であることを示している。
同様に、1713のレコードは、認証経路が「ドライバ」である認証ログは、ジョブタイプが「プリント」であるジョブログと関連付けが可能であることを示している。
【0098】
ユーザがどのモジュールで操作を行うかによって発行されるジョブタイプが変わってくる。このため、間違って関係の無い認証ログとジョブログを関連付けられてしまうことを防止するために、本テーブルは使用される。なお、この認証経路・ジョブタイプ関連テーブルは、システム固定でもよいし、ユーザが設定可能としてもよい。
【0099】
次に図18で示すフローチャートを用いて、分析処理部502で処理されるジョブログ認証ID設定ステップS1509の詳細な処理の流れを説明する。このフローチャートに示す処理は、分析サーバ104の分析処理部502により実行される。即ち、分析サーバ104のCPU201が分析サーバ104のHD211等に格納されたプログラムを読み出して実行することにより実現されるものである。
まず、ステップS1601において、分析処理部502は、認証ID設定処理を開始する。
ステップS1602〜S1608のループにおいて、分析処理部502は、ジョブログ収集部503で収集されたジョブログを順番に処理対象とし、ステップS1603〜S1607の処理を行うように制御する。
【0100】
まず、ステップS1603において、分析処理部502は、処理対象のジョブログのユーザ名705とログインユーザ名(ユーザ名803)が一致する認証ログを検索する。
続いて、ステップS1604では、分析処理部502は、図17の認証経路・ジョブタイプ関連テーブルを参照し、処理対象のジョブログのジョブタイプ702がジョブタイプ1702列に含まれる行を検索し、その行の認証経路1701を取得する。例えば、ジョブタイプが「ボックスプリント」であれば、ジョブタイプ1702列に「ボックスプリント」を含む行1711,1712を検索し、その行の認証経路1701である「パネル」と「Web」を取得する。
続いて、ステップS1605において、分析処理部502は、ステップS1603で検索された認証ログのうち、認証ログの認証経路807がステップS1604で取得された認証経路に含まれる認証ログを検索する。
【0101】
次に、ステップS1606において、分析処理部502は、ステップS1605で検索された認証ログのうち、ジョブログの開始時刻703以前で最も近い認証(ログイン)時刻804である認証ログを選択する。
次に、ステップS1607において、分析処理部502は、ステップS1606で選択された認証ログの認証IDを、ジョブログ収集部503が保持するジョブログテーブルの該当ジョブログの認証ID706列に設定し、関連付けを行う。即ち、S1606で選択された認証ログの認証IDを、ジョブログテーブル内の処理対象のジョブログの認証ID706に設定して、ジョブログと認証ログを関連付ける。
【0102】
そして、ステップS1608において、分析処理部502は、全ジョブログに対してS1603〜S1607の処理を終了したか判定し、まだ終了していない場合には、処理対象を次のジョブログに移す。
一方、全ジョブログに対してS1603〜S1607の処理を終了したと判断した場合には、分析処理部502は、S1602〜S1608のループを抜け、認証ID設定処理を終了する(S1609)。
【0103】
以後、分析処理部502は、上述のように関連付けされたジョブログと認証ログを用いて、図16のS1504以降の処理を実行して、ジョブ処理時間の分析を行う。
以上のように、認証ログとジョブログの関連付けが明確でない場合でも、ユーザ名、ログイン時間と処理時間の関係等から、認証ログとジョブログを関連付け、実際にデバイスが使用されている時間により近いデバイスの稼働時間を算出できる。
【0104】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施例について示したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0105】
デバイスの稼働時間の計算では、デバイスが使用されている時間を計測しなければならないが、従来では、ジョブ処理時間だけでデバイスの稼働時間の計算を行っていて不十分であった。本実施例では、認証ログを使用し、ユーザが操作を開始してからジョブが完了するまでの時間を推測して、デバイスの稼働時間を補正することにより、実際にデバイスが使用されている時間により近いデバイスの稼働時間を算出することができる。
【0106】
以下、本発明に係る情報処理装置で読み取り可能な(コンピュータ読取り可能な)各種データ処理プログラムを格納する記憶媒体(記録媒体)について説明する。
本発明の各工程(上述した各機能)は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア(プログラム)をパーソナルコンピュータ等の処理装置(CPU,プロセッサ)にて実行することでも実現できる。
【0107】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を該システム或いは装置に読み出すことによって、そのシステム或いは装置が、本発明の効果を享受することが可能となる。
【0108】
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。
本発明の様々な例と実施例を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
なお、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【0109】
101 ホストコンピュータ
102,103 複合機
104 分析サーバ
105 ネットワーク
501 インタフェース部
502 分析処理部
503 ジョブログ収集部
504 認証ログ収集部

【特許請求の範囲】
【請求項1】
画像処理装置の稼働時間を計算する情報処理装置であって、
前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得手段と、
前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得手段と、
前記ジョブログで特定されるジョブ処理期間に対応する第1の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第2の稼働期間から、前記画像処理装置の稼働時間を計算する計算手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記認証ログは、対応するログイン処理のログアウト要因がタイムアウトによるものか否かを特定する情報を含み、
前記計算手段は、ログアウト要因がタイムアウトであることが特定された認証ログで特定されるログイン期間については、前記タイムアウトに要する期間を前記第2の稼働期間に含めないことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記認証ログは、対応するログイン処理がネットワークを介したユーザ操作によりなされたか否かを特定する情報を含み、
前記計算手段は、ログイン処理がネットワークを介したユーザ操作によりなされたことが特定された認証ログから特定されるログイン期間については、該認証ログに関連するジョブログのジョブ処理期間のうち最も遅いジョブ処理期間の終了時点からログアウト時点までの期間を前記第2の稼働期間に含めないことを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記認証ログは、対応するログイン処理がプリンタドライバによりなされたか否かを特定する情報を含み、
前記計算手段は、ログイン処理がプリンタドライバによりなされたことが特定された認証ログから特定されるログイン期間を前記第2の稼働期間に含めないことを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項5】
前記認証ログは、対応するログイン処理がなされた際のユーザ名を含み、
前記ジョブログは、対応するジョブを発行したユーザ名を含み、
前記計算手段は、前記ユーザ名により前記認証ログに関連するジョブログを特定することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
【請求項6】
前記計算手段は、ジョブ開始時点が、前記認証ログのログイン時点より遅く、且つ、前記ログイン時点に最も近いジョブログを、前記認証ログに関連するジョブログ情報として特定することを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記認証ログは、対応するログイン処理の認証経路を特定する情報を含み、
前記ジョブログは、対応するジョブのジョブ種別を特定する情報を含み、
前記計算手段は、ジョブログに含まれるジョブ種別と前記認証ログに含まれる認証経路との組合せが予め設定されたジョブ種別と認証経路の組合せに一致する際に、前記認証ログ及び前記ジョブログが関連することを特定することを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
【請求項8】
前記認証ログは、対応するログイン処理がなされた際に発行された認証IDを含み、
前記ジョブログは、対応するジョブを処理した際のログイン処理に対応する認証IDを含み、
前記計算手段は、前記認証IDにより前記認証ログに関連するジョブログを特定することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
【請求項9】
画像処理装置の稼働時間を計算する情報処理装置における稼働時間計算方法であって、
認証ログ取得手段が、前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得ステップと、
ジョブログ取得手段が、前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得ステップと、
計算手段が、前記ジョブログで特定されるジョブ処理期間に対応する第1の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第2の稼働期間から、前記画像処理装置の稼働時間を計算する計算ステップと、
を有することを特徴とする稼働時間計算方法。
【請求項10】
請求項1乃至8のいずれか1項に記載された情報処理装置の手段としてコンピュータを機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2010−217957(P2010−217957A)
【公開日】平成22年9月30日(2010.9.30)
【国際特許分類】
【出願番号】特願2009−60640(P2009−60640)
【出願日】平成21年3月13日(2009.3.13)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】