(57)【要約】【課題】エージェントの情報を管理するサービスに障害が発生した場合でも、ジョブ履歴を速やかにジョブ履歴監査システム等の外部システムに受け渡し、ジョブ履歴監査の即時性等を維持すること。【解決手段】ジョブ履歴処理サーバ１０１の要求処理部５０１は、エージェントＩＤを含むデータ転送の予約要求を受信すると、エージェント管理部５０５に対して、前記エージェントＩＤに対応する第１のエージェント情報を要求し、エージェント管理部５０５から第１のエージェントの情報を取得できなかった場合、ＭＦＰ１１１に第２のエージェント情報を要求し、臨時エージェント管理部５０３に保存する。そして、要求処理部５０１は、第２のエージェント情報を保存された後に収集エージェント４０４から受け付けたデータを、第２のエージェント情報とともに、ジョブ履歴監査システム１３１が参照可能な記憶領域にエクスポートする。【選択図】図５
2016045930.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク機器上で動作するエージェントからロードバランサを経由して、収集対象となるデータを受付ける管理システムであって、
前記エージェントの識別情報を含むデータ転送の予約要求を受信する受信手段と、
エージェント管理サービスに対して、前記予約要求に含まれる識別情報に対応する第１のエージェント情報を要求する第１の要求手段と、
前記エージェント管理サービスから前記第１のエージェントの情報を取得できなかった場合に、前記ネットワーク機器に第２のエージェント情報を要求する第２の要求手段と、
前記ネットワーク機器から取得した第２のエージェント情報を保存する保存手段と、
前記第２のエージェント情報を保存された後に前記ネットワーク機器から受け付けたデータを、当該第２のエージェント情報とともに、外部システムが参照可能な記憶領域にエクスポートする出力手段と、
を有することを特徴とする管理システム。
【請求項２】
前記ロードバランサは、複数の管理システムに対して、エージェントからのデータの転送先を分散させることを特徴とする請求項１に記載の管理システム。
【請求項３】
前記第２のエージェント情報を要求された前記ネットワーク機器からの前記ロードバランサを経由したデータ転送は、前記第２のエージェント情報が保存された後は、宛先が前記第２のエージェント情報の送信先である前記管理システムに固定されることを特徴とする請求項２に記載の管理システム。
【請求項４】
前記エージェント管理サービスから前記第１のエージェント情報が取得できるようになった場合には、当該宛先の固定が解除されることを特徴とする請求項３に記載の管理システム。
【請求項５】
前記ネットワーク機器は、印刷装置、印刷装置から前記収集対象となるデータを収集可能な情報処理装置、または、印刷装置に対してジョブを投入する情報処理装置であることを特徴とする請求項１乃至４のいずれか１項に記載の管理システム。
【請求項６】
前記収集対象となるデータは、印刷装置で実行されたジョブのログ情報であることを特徴とする請求項１乃至５のいずれか１項に記載の管理システム。
【請求項７】
前記エージェント情報には、前記エージェントの識別情報、前記エージェントが送信するデータの出所を特定するための情報、前記エージェントがデータを送信した際の前記エージェントの設定情報が含まれことを特徴とする請求項１乃至６のいずれか１項に記載の管理システム。
【請求項８】
前記管理システムは、起動時に別の管理システムに対して起動を通知する第１の通知手段をさらに有し、
他の管理システムから起動の通知を受信した場合には、該通知を受信した管理システムに対する、前記ネットワーク機器からの前記ロードバランサを経由したデータ転送の宛先の固定が解除されることを特徴とする請求項３乃至７のいずれか１項に記載の管理システム。
【請求項９】
前記管理システムは、起動時に別の管理システムから保存している第２のエージェント情報の数を取得し、該取得した数の合計に基づいて、該取得元の各管理システムで保存して良い第２のエージェント情報の数を算出して各管理システムに通知する第２の通知手段をさらに有し、
他の管理システムから前記保存して良い第２のエージェント情報の数を受信した場合には、該受信した数に応じて、該数を受信した管理システムに対する、前記ネットワーク機器からの前記ロードバランサを経由したデータ転送の宛先の固定が解除されることを特徴とする請求項３乃至７のいずれか１項に記載の管理システム。
【請求項１０】
ネットワーク機器上で動作するエージェントからロードバランサを経由して、収集対象となるデータを受付ける管理システムの制御方法であって、
前記エージェントの識別情報を含むデータ転送の予約要求を受信する受信ステップと、エージェント管理サービスに対して、前記予約要求に含まれる識別情報に対応する第１のエージェント情報を要求する第１の要求ステップと、
前記エージェント管理サービスから前記第１のエージェントの情報を取得できなかった場合に、前記ネットワーク機器に第２のエージェント情報を要求する第２の要求ステップと、
前記ネットワーク機器から取得した第２のエージェント情報を保存する保存ステップと、
前記第２のエージェント情報を保存された後に前記ネットワーク機器から受け付けたデータを、当該第２のエージェント情報とともに、外部システムが参照可能な記憶領域にエクスポートする出力ステップと、
を有することを特徴とする管理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置や情報処理装置などのネットワーク機器上で動作するエージェントから収集対象となるデータを受付ける管理システムの制御に関する。
【背景技術】
【０００２】
従来、情報漏洩の抑止や、情報漏洩者を追跡する目的で、プリンタやＭＦＰ（ＭｕｌｔｉＦｕｎｃｔｉｏｎ Ｐｅｒｉｐｈｅｒａｌ）等が行った、印刷などのジョブに関する履歴情報を収集するジョブ履歴処理システムが開発されている。
【０００３】
ジョブ履歴処理システムは、ＭＦＰやＰＣ（パーソナルコンピュータ）上でジョブ履歴を収集する収集エージェントと、収集エージェントからジョブ履歴を受信して加工・変換を行い、ジョブ履歴を保管・監査するためのジョブ履歴監査システムに受け渡すジョブ履歴処理サーバからなる。
【０００４】
ジョブ履歴処理サーバは、各収集エージェントが動作するＭＦＰやＰＣに関する情報を含む各収集エージェントの設定情報を管理している。そして、ジョブ履歴処理サーバは、ジョブ履歴の出所や、ジョブ履歴生成時のエージェントの設定を後で確認できるように、受信したジョブ履歴に対し、該ジョブ履歴を送信してきた収集エージェントの設定情報を付加している。
【０００５】
ところで、ジョブ履歴処理システムでは、大量のジョブ履歴が送信されてくるような規模の大きい環境の場合に、ジョブ履歴処理サーバを複数台設け、負荷分散装置（ロードバランサ）によって、ジョブ履歴処理サーバの処理の負荷を分散させる構成とすることがある。このような負荷分散構成のシステムでは、各収集エージェントの設定情報を管理する共通の管理サービスをネットワーク上等に設け、各ジョブ履歴処理サーバは該管理サービスに対してアクセスして各収集エージェントの設定情報を取得する構成とする。
【０００６】
特許文献１には、負荷分散を行うシステムにおいて、より性能や信頼性を高める技術が提案されている。特許文献１では、複数のサーバが分散されたデータベースを持つ場合に、各サーバが分散データベースへのアクセス可否をフラグで管理し、アクセス不可時のデータアクセスのリトライによるネットワーク負荷を低減する技術が提案されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−１８４７４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
負荷分散構成のジョブ履歴処理システムは、特許文献１の技術を採用できる分散構成とは異なり、管理サービスが管理する各収集エージェントの設定情報は、各ジョブ履歴処理サーバから共通のものとしてアクセスできる必要がある。このため、収集エージェントの設定情報を管理する管理サービスが、何らかの原因でダウン等すると、各ジョブ履歴処理サーバにおいてジョブ履歴に収集エージェントの設定情報が付加できなくなる。このため、いずれのジョブ履歴処理サーバも、ジョブ履歴をジョブ履歴監査システムに受け渡すことができなくなってしまう。従って、管理サービスの障害が長期化した場合、監査の即時性が損なわれ、情報漏洩の発見が遅れるという問題があった。
【０００９】
また、ジョブ履歴処理サーバが単一の構成であっても、上述の管理サービス又はジョブ履歴処理サーバ内の収集エージェント設定情報の管理機能だけが一時的に利用できなくなることもあり、同様の問題が起こり得る。
【００１０】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、エージェントの情報を管理するサービスに障害が発生した場合でも、ジョブ履歴を速やかにジョブ履歴監査システム等の外部システムに受け渡すことができ、ジョブ履歴監査の即時性等を維持することができる仕組みを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、ネットワーク機器上で動作するエージェントからロードバランサを経由して、収集対象となるデータを受付ける管理システムであって、前記エージェントの識別情報を含むデータ転送の予約要求を受信する受信手段と、エージェント管理サービスに対して、前記予約要求に含まれる識別情報に対応する第１のエージェント情報を要求する第１の要求手段と、前記エージェント管理サービスから前記第１のエージェントの情報を取得できなかった場合に、前記ネットワーク機器に第２のエージェント情報を要求する第２の要求手段と、前記ネットワーク機器から取得した第２のエージェント情報を保存する保存手段と、前記第２のエージェント情報を保存された後に前記ネットワーク機器から受け付けたデータを、当該第２のエージェント情報とともに、外部システムが参照可能な記憶領域にエクスポートする出力手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、エージェントの情報を管理するサービスに障害が発生した場合でも、ジョブ履歴を速やかにジョブ履歴監査システム等の外部システムに受け渡すことができ、ジョブ履歴監査の即時性等を維持することができる。
【図面の簡単な説明】
【００１３】
【図１】実施例１におけるシステム構成図
【図２】ＭＦＰのハードウェア構成図
【図３】ジョブ履歴処理サーバ、エージェント管理サーバのハードウェア構成図
【図４】ＭＦＰのソフトウェア構成図
【図５】ジョブ履歴処理サーバ、エージェント管理サーバのソフトウェア構成図
【図６】実施例１の収集エージェントのジョブ履歴送信処理のフローチャート
【図７】実施例１のジョブ履歴処理サーバの処理要求受信処理のフローチャート
【図８】ジョブ履歴処理サーバの復旧検知処理のフローチャート
【図９】実施例２におけるシステム構成図
【図１０】実施例２の収集エージェントのジョブ履歴送信処理のフローチャート
【図１１】実施例２のジョブ履歴処理サーバの処理要求受信処理のフローチャート
【図１２】エージェント管理部障害フラグのファイルを例示する図
【図１３】ジョブ履歴受信領域に格納されるデータを例示する図
【図１４】サーバ固定フラグのファイルを例示する図
【図１５】実施例３のジョブ履歴処理サーバの起動通知処理のフローチャート
【図１６】実施例３のジョブ履歴処理サーバの起動通知受信処理のフローチャート
【図１７】実施例３のジョブ履歴処理サーバの処理要求受信処理のフローチャート
【図１８】実施例４のジョブ履歴処理サーバの起動通知処理のフローチャート
【図１９】実施例４のジョブ履歴処理サーバのエージェント数通知受信処理のフローチャート
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１５】
図１は、本発明の実施例１を示すジョブ履歴処理システム１００および、ジョブ履歴処理システム１００と連携するジョブ履歴監査システム１３１の構成を例示する図である。
本実施例のジョブ履歴処理システム１００は、ジョブ履歴処理サーバ１０１と、エージェント管理サーバ１０２と、複数台のＭＦＰ１１１とが接続されている。
【００１６】
ジョブ履歴処理サーバ１０１は、ＭＦＰ１１１で実行されたジョブ（コピージョブやプリントジョブなど）の実行記録であるジョブ履歴を、該ＭＦＰ１１１上で動作する収集エージェント（後述する図４に示す）から受信する管理システムである。ジョブ履歴は、ジョブの種別に応じて入力または出力される画像（ジョブ履歴画像）と、ジョブの実行日時や実行ユーザなどの情報からなるジョブ履歴属性情報などで構成されるＭＦＰ１１１で実行されたジョブのログ情報であり、ＭＦＰ１１１で記録される。さらに、ジョブ履歴処理サーバ１０１は、必要に応じて、受信したジョブ履歴に含まれるデータの整形や、ジョブ履歴画像の解像度変換などの処理を行い、その結果に、ジョブ履歴の送信元である収集エージェントの設定情報を付加し、連携するジョブ履歴監査システム１３１に送信する。
【００１７】
エージェント管理サーバ１０２は、各ＭＦＰ１１１上で動作している後述する収集エージェントの設定情報を管理するサーバである。ジョブ履歴処理サーバ１０１は、エージェント管理サーバ１０２から収集エージェントの設定情報を取得する。なお、エージェント管理サーバ１０２は、ジョブ履歴処理サーバ１０１に包含されていてもよい。
【００１８】
ジョブ履歴監査システム１３１は、通常、ジョブ履歴を監査するためのデータ保管や検索の機能を備えるものとし、ジョブ履歴監査専用に仕立てられたシステムであってもよいし、一般的なデータウェアハウスシステムや文書管理システムなどであってもよい。
【００１９】
図２は、ＭＦＰ１１１のハードウェア構成を例示するブロック図である。
図２において、２００はコントローラユニットである。コントローラユニット２００は、スキャナ２２２やプリンタ２２３およびネットワークや公衆回線と接続して、画像データやデバイス情報の入出力を行う。
【００２０】
コントローラユニット２００において、ＣＰＵ２０１は、ＭＦＰ１１１全体の制御を行う。ＲＡＭ２０２は、ＣＰＵ２０１が動作するためのワークメモリであると共に、入力された画像データを一時記憶するための画像メモリでもある。ＲＯＭ２０３は、ブートＲＯＭであり、システムのブートプログラムが保存されている。ＨＤＤ２０４は、システムソフトウェア、ジョブ履歴、ユーザボックス内の画像データなどを保存するハードディスクドライブである。なお、ＨＤＤ２０４の代わりにソリッドステートドライブ（ＳＳＤ）等の他の記憶装置を用いてもよい。
【００２１】
操作部Ｉ／Ｆ２０５は、操作部２２１とのインタフェース部であり、操作部２２１に表示する画面データを操作部２２１に対して出力する。ネットワークＩ／Ｆ２０６は、ＬＡＮ等のネットワークに接続し、情報の入出力を行う。モデム２０７は、公衆回線に接続し、画像データの入出力を行う。以上のデバイスが、システムバス２０８上に配置される。
【００２２】
イメージバスＩ／Ｆ２０９は、システムバス２０８と、画像データを高速で転送する画像バス２１０とを接続し、データ構造を変換するバスブリッジである。
画像バス２１０上には、以下のデバイスが配置される。
【００２３】
ＲＩＰ（ラスターイメージプロセッサ）２１１は、ＰＤＬ（ｐａｇｅ ｄｅｓｃｒｉｐｔｉｏｎ ｌａｎｇｕａｇｅ）コードをビットマップイメージに展開する。デバイスＩ／Ｆ２１２は、画像入出力デバイスであるスキャナ２２２及びプリンタ２２３と、コントローラユニット２００とを接続し、画像データの変換を行う。
【００２４】
スキャナ画像処理部２１３は、入力画像データに対し補正、加工、編集等を行う。プリンタ画像処理部２１４は、出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部２１５は、画像データの回転を行う。画像圧縮部２１６は、画像データの圧縮伸長処理を行う。
【００２５】
図３は、ジョブ履歴処理サーバ１０１やエージェント管理サーバ１０２のハードウェア構成を例示するブロック図である。
【００２６】
ＣＰＵ３１１を含む制御部３１０は、サーバ装置の動作を制御する。ＣＰＵ３１１は、ＲＯＭ３１２やＨＤＤ３１４に記憶された制御プログラムを読み出して、入力や出力といった各種制御処理や、演算処理を実行する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリアなどの一時記憶領域として用いられる。ＨＤＤ３１４は、ジョブ履歴や各種プログラムなどを記憶する。なお、ＨＤＤ３１４の代わりにソリッドステートドライブ（ＳＳＤ）等の他の記憶装置を用いてもよい。
【００２７】
操作入力Ｉ／Ｆ３１５は、接続されたキーボードやマウスなどの操作デバイスからの信号入力を受け付ける。表示出力Ｉ／Ｆ３１６は、画面表示用のディスプレイ等への信号出力を行う。ネットワークＩ／Ｆ３１７は、制御部３１０をネットワークに接続し、ネットワーク上の別の装置との情報の送受信を行う。
バス３２０は、制御部３１０内の各ブロックを接続するバスである。
【００２８】
図４は、ＭＦＰ１１１のソフトウェア構成を例示するブロック図である。
図４に示す４０１〜４０４は、ＭＦＰ１１１のＲＯＭ２０３またはＨＤＤ２０４に記憶されているプログラムとして実装されるものであり、該プログラムをＭＦＰ１１１のＣＰＵ２０１が実行することにより機能する。
【００２９】
ジョブ管理部４０１は、操作制御部４０２が受け付けたジョブや、ネットワークを介して受け付けたジョブの実行とジョブ履歴（ジョブ履歴画像およびジョブ履歴属性情報）のＨＤＤ２０４への記録、ジョブのステータス管理などを行う。ジョブ管理部４０１によって記録されるジョブ履歴属性情報の例を表１に示す。
【００３０】
【表１】
2016045930.tif 000003
【００３１】
表１において、ジョブ種別は、プリント、コピー、ＦＡＸ送信などジョブの種類を表す。実行ユーザ名は、ジョブを実行したユーザ名を表す。実行日時は、ジョブが実行された日時を表す。実行結果は、ジョブの実行結果であり、正常終了かエラー終了かが記録される。エラー終了の場合、エラーコードを記録するようにしてもよい。通信先は、ＦＡＸ送信やＦＡＸ受信、メール送信などの通信を伴うジョブ種別において、送信先または送信元を識別する番号やアドレスを表す。通信先がないジョブ種別（プリントなど）では、通信先の属性値は空（データの無い状態）となる。
また、ジョブ管理部４０１は、ジョブの処理内容に応じて、ジョブ制御部４０３に対して指示を行う。
【００３２】
操作制御部４０２は、操作部２２１が備える表示パネルに操作用の画面を表示させたり、操作部２２１で行われる操作の入力情報を受け付け、必要に応じて他の機能部に情報を伝達したりする。なお、操作制御部４０２は、ネットワークを介した遠隔操作（リモートＵＩ）の制御も行うものとする。
【００３３】
ジョブ制御部４０３は、ジョブ管理部４０１からの指示に従い、スキャナ２２２やプリンタ２２３を動作させる。また、ジョブ制御部４０３は、スキャナ２２２やプリンタ２２３のステータスをジョブ管理部４０１に通知する。
【００３４】
収集エージェント４０４は、ＨＤＤ２０４に記録されたジョブ履歴を取得し、ジョブ履歴処理サーバ１０１に送信する。なお、収集エージェント４０４の詳細な動作については後述する。
【００３５】
図５は、ジョブ履歴処理サーバ１０１およびエージェント管理サーバ１０２のソフトウェア構成を例示するブロック図である。
図５に示す５０１〜５０４は、ジョブ履歴処理サーバ１０１のＨＤＤ３１４に記憶されているプログラムとして実装されるものであり、該プログラムをジョブ履歴処理サーバ１０１のＣＰＵ３１１が実行することにより機能する。
また、５０５は、エージェント管理サーバ１０２のＨＤＤ３１４に記憶されているプログラムとして実装されるものであり、該プログラムをエージェント管理サーバ１０２のＣＰＵ３１１が実行することにより機能する。
【００３６】
要求処理部５０１は、ＭＦＰ１１１の収集エージェント４０４からのジョブ履歴送信などの処理要求を受信し、必要に応じた処理を実行する。例えば、ジョブ履歴を受信した場合、要求処理部５０１は、ジョブ履歴に含まれる画像に対し、ＯＣＲ（Ｏｐｔｉｃａｌ Ｃｈａｒａｃｔｅｒ Ｒｅｃｏｇｎｉｔｉｏｎ）によるテキスト抽出や、画像形式変換および解像度変換などの処理を行う。また、要求処理部５０１は、連携するジョブ履歴監査システム１３１に応じて、画像のサムネイルを作成したり、ジョブ履歴属性情報を整形したりするなどしてもよい。そして、要求処理部５０１は、上述のように処理したジョブ履歴に対し、そのジョブ履歴の送信元の収集エージェント４０４の設定情報を付加し、ジョブ履歴監査システム１３１に送信する。なお、要求処理部５０１は、設定に応じて、ジョブ履歴処理サーバ１０１のＨＤＤ３１４や外部のファイルサーバなどのエクスポート領域（ジョブ履歴監査システム１３１等の外部システムが参照可能な記憶領域）に、上記設定情報を付加したジョブ履歴を出力するようにしてもよい。即ち、要求処理部５０１は、収集エージェント４０４から受け付け必要に応じて処理したデータを、収集エージェント４０４の設定情報とともに、ジョブ履歴監査システム１３１等の外部システムが参照可能な記憶領域にエクスポートする。
【００３７】
臨時エージェント管理部５０３は、後述するエージェント管理部５０５が使用できない場合に、一時的にエージェント設定情報を管理し、必要に応じて要求処理部５０１との間でエージェント設定情報のやりとりを行う。本実施例においては、臨時エージェント管理部５０３は、ジョブ履歴処理サーバ１０１内のファイルシステム上にあるフォルダとするが、これに限るものではない。
【００３８】
サーバ管理部５０４は、常時動作しており、エージェント管理部５０５に障害が発生している場合に、復旧したかどうかを検知するものである。
【００３９】
エージェント管理部５０５は、ジョブ履歴処理サーバ１０１に接続されたＭＦＰ１１１上で動作する収集エージェント４０４の設定情報を管理し、必要に応じて要求処理部５０１との間でエージェント設定情報のやりとりを行うエージェント管理サービスに対応する。本実施例においては、エージェント管理部５０５は、データベースによって実現されるものとするが、これに限るものではない。また、本実施例において、エージェント管理部５０５は、エージェント管理サーバ１０２上にあるものとするが、ジョブ履歴処理サーバ１０１上にあってもよい。
【００４０】
ここで、図４に示したＭＦＰ１１１の収集エージェント４０４の動作について説明する。
収集エージェント４０４は、ジョブ履歴をジョブ履歴処理サーバに送信する動作に先立ち、システム管理者などからジョブ履歴処理サーバ１０１と通信を行うための情報の入力を受け付ける。例えば、ジョブ履歴処理サーバ１０１のＩＰアドレスや、後述する実施例２の場合にはロードバランサのＩＰアドレス等の入力を受け付ける。そして、収集エージェント４０４は、自身が持つエージェント設定情報をジョブ履歴処理サーバ１０１の要求処理部５０１に送信し、エージェント管理部５０５に登録させる。エージェント設定情報の例を表２に示す。
【００４１】
【表２】
2016045930.tif 000004
【００４２】
表２に示すように、エージェント設定情報は、収集エージェント４０４の識別情報であるエージェントＩＤ、ＭＦＰ１１１の装置名、製品型番、製品シリアル番号、ＩＰアドレス、ＭＡＣアドレス、ジョブ履歴送信間隔などを含むエージェント情報である。なお、エージェント設定情報に含まれるエージェントＩＤ、装置名、製品型番、製品シリアル番号、ＩＰアドレス、ＭＡＣアドレス、ジョブ履歴送信間隔は、ジョブ履歴の出所や、ジョブ履歴生成時のエージェントの設定を後で確認可能にするための情報である。
【００４３】
上記エージェント設定情報の登録の際、収集エージェント４０４は、エージェント管理部５０５で発行される、自身を識別するためのエージェントＩＤを受け取り、自身が持つエージェント設定情報に追加して、ＨＤＤ２０４上に記憶する。表２は、登録が行われる前のエージェント設定情報を表しており、登録によってエージェントＩＤ「０００１」が発行されたとすると、表２のエージェントＩＤの設定値として「０００１」が設定される。
【００４４】
以上のようなエージェント設定情報の登録完了後、収集エージェント４０４は、ＨＤＤ２０４に記録されたジョブ履歴が存在するかどうかを、予め設定された時間間隔（表２のジョブ履歴送信間隔）で確認し、ジョブ履歴が存在する場合には、ジョブ履歴を一つずつジョブ履歴処理サーバ１０１に送信する。以下、図６を用いて説明する。
【００４５】
図６は、実施例１における収集エージェント４０４がジョブ履歴処理サーバ１０１にジョブ履歴を送信する際の動作を例示するフローチャートである。なお、図６のフローチャートに示す各ステップは、ＭＦＰ１１１のＣＰＵ２０１が、ＲＯＭ２０３またはＨＤＤ２０４に記憶されている収集エージェント４０４を実現するプログラムを実行することで実現される。また、ＣＰＵ２０１は、必要に応じて記憶領域としてＲＡＭ２０２やＨＤＤ２０４を利用する。なお、図６のフローチャートは一つのジョブ履歴を送信する処理を示しており、ＨＤＤ２０４に複数のジョブ履歴がある場合には、ＨＤＤ２０４にあるジョブ履歴の数だけ、図６に示される処理が繰り返される。
【００４６】
ステップＳ６０１において、収集エージェント４０４は、ジョブ履歴処理サーバ１０１の要求処理部５０１に対し、ジョブ履歴送信予約の要求を行う。なお、収集エージェント４０４は、このジョブ履歴送信予約の要求は、エージェントＩＤ（収集エージェント４０４の識別情報）を含むものであり、収集エージェント４０４からジョブ履歴処理サーバ１０１へのデータ転送の予約要求に対応する。
【００４７】
続いて、ステップＳ６０２において、収集エージェント４０４は、ジョブ履歴送信予約に対する応答を受信し、その内容を確認して予約成功であるか否かを判断する。なお、収集エージェント４０４は、ジョブ履歴送信予約に対する応答に、コネクションＩＤが含まれている場合に、予約成功であると判断する。
そして、予約成功であると判断した場合（Ｓ６０２でＹＥＳの場合）、収集エージェント４０４は、処理をＳ６０３に進める。
【００４８】
ステップＳ６０３では、収集エージェント４０４は、ジョブ履歴送信予約の成功の応答に含まれているコネクションＩＤを、ジョブ履歴送信用のコネクションＩＤとして一時的にＲＡＭ２０２等に保持する。
【００４９】
次に、ステップＳ６０４において、収集エージェント４０４は、ＨＤＤ２０４上に記憶されている、送信対象であるジョブ履歴を、要求処理部５０１に送信する。送信に際して、収集エージェント４０４は、ジョブ履歴に加えて、上記Ｓ６０３で保持したジョブ履歴送信用のコネクションＩＤを含めて送信する。これは、ジョブ履歴の送信がジョブ履歴の内容に応じて複数回に分けられることがあるためであり、コネクションＩＤによって、分割された送信を同一のジョブ履歴のものとして、ジョブ履歴処理サーバ１０１に識別させるためである。
【００５０】
次に、ステップＳ６０５において、収集エージェント４０４は、要求処理部５０１に対し、ジョブ履歴送信予約解除を要求する。このときも、収集エージェント４０４は、上記Ｓ６０４と同様に、上記ジョブ履歴送信予約解除の要求に、ジョブ履歴送信用のコネクションＩＤを含めて送信する。
【００５１】
次に、ステップＳ６０６において、収集エージェント４０４は、送信が終了したジョブ履歴を、ＨＤＤ２０４上から削除し、本フローチャートの処理を終了する。
【００５２】
また、上記Ｓ６０２において、予約失敗であると判断した場合（Ｓ６０２でＮＯの場合）、収集エージェント４０４は、処理をＳ６０７に進める。
ステップＳ６０７では、収集エージェント４０４は、ジョブ履歴送信予約の失敗のエラー内容がエージェント設定情報アクセスエラーかどうかを判断する。なお、収集エージェント４０４は、ジョブ履歴送信予約に対する応答に、エージェント設定情報アクセスエラーを示す情報が含まれている場合に、ジョブ履歴送信予約の失敗のエラー内容がエージェント設定情報アクセスエラーであると判断する。
【００５３】
そして、ジョブ履歴送信予約の失敗がエージェント設定情報アクセスエラーでないと判定した場合（Ｓ６０７でＮＯの場合）、収集エージェント４０４は、処理をＳ６０８に進める。
ステップＳ６０８では、収集エージェント４０４は、ジョブ履歴送信予約エラー発生時の処理として、エラー内容を、自身の動作ログに記録するなどして、本フローチャートの処理を終了する。
【００５４】
一方、ジョブ履歴送信予約の失敗がエージェント設定情報アクセスエラーであると判断した場合（Ｓ６０７でＹＥＳの場合）、収集エージェント４０４は、処理をＳ６０９に進める。
ステップＳ６０９では、収集エージェント４０４は、ＨＤＤ２０４上に記憶している自身が持つエージェント設定情報を読み出し、ジョブ履歴処理サーバ１０１の要求処理部５０１に送信する。送信後、収集エージェント４０４は、処理をＳ６０１に進める。
【００５５】
次に、図７を用いて、ジョブ履歴処理サーバ１０１の要求処理部５０１が、ＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を説明する。
図７は、実施例１におけるジョブ履歴処理サーバ１０１の要求処理部５０１がＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を示すフローチャートである。なお、図７のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されている要求処理部５０１を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。
【００５６】
要求処理部５０１は、収集エージェント４０４から要求を受信すると、本フローチャートの処理を開始する。まず、ステップＳ７０１において、要求処理部５０１は、収集エージェント４０４から受信した要求がジョブ履歴送信予約かどうかを判断する。
そして、受信した要求がジョブ履歴送信予約であると判断した場合（Ｓ７０１でＹＥＳの場合）、要求処理部５０１は処理をＳ７０２に進める。
【００５７】
ステップＳ７０２では、要求処理部５０１は、エージェント管理部障害フラグが"ｔｒｕｅ"かどうかを判断する。なお、エージェント管理部障害フラグは、エージェント管理部５０５で障害が発生しているかどうかを表すフラグであり、"ｔｒｕｅ"の場合、エージェント管理部５０５が使用不可能であることを意味する。例えば、エージェント管理サーバ１０２がダウンしている場合などに、エージェント管理部５０５が使用不可能になる。本実施例では、エージェント管理部障害フラグは、ジョブ履歴処理サーバ１０１のＨＤＤ３１４上にファイルで保持されるものとする。
【００５８】
図１２は、エージェント管理部障害フラグのファイルを例示する図である。
図１２に示すように、本実施例ではエージェント管理部障害フラグのファイル名を「ＡｍｓＵｎｕｓａｂｌｅＦｌｇ」とし、その内容は、"ｔｒｕｅ"もしくは"ｆａｌｓｅ"の文字列とする。
【００５９】
以下、図７のフローチャートの説明に戻る。
上記Ｓ７０２において、エージェント管理部障害フラグが"ｆａｌｓｅ"であると判断した場合（Ｓ７０２でＮＯの場合）、要求処理部５０１は、処理をＳ７０３に進める。
ステップＳ７０３では、要求処理部５０１は、ジョブ履歴送信予約の要求に含まれているエージェントＩＤをキーとして、エージェント管理部５０５から、エージェント設定情報を取得する。
【００６０】
次に、ステップＳ７０４において、要求処理部５０１は、上記Ｓ７０３のエージェント設定情報取得が成功したかどうかを判断する。
そして、エージェント設定情報の取得に成功したと判断した場合（Ｓ７０４でＹＥＳの場合）、要求処理部５０１は、処理をＳ７０５に進める。
【００６１】
ステップＳ７０５では、要求処理部５０１は、要求されたジョブ履歴送信予約が受け付け可能かどうかを判断する。なお、受け付け可能かどうかの判断は、例えば、受け付け中の予約数が、ジョブ履歴処理サーバ１０１に予め設定されている最大予約数に達していないかどうかでなされるものとする。なお、受け付け中の予約数は、ジョブ履歴処理サーバ１０１のＨＤＤ３１４等に格納されているものとする。
【００６２】
そして、ジョブ履歴送信予約が受け付け可能であると判断した場合（Ｓ７０５でＹＥＳの場合）、要求処理部５０１は、受け付け中の予約数を１増やし、処理をＳ７０６に進める。
【００６３】
ステップＳ７０６では、要求処理部５０１は、ジョブ履歴送信用の接続を識別するためのコネクションＩＤを発行し、取得していたエージェント設定情報と関連付けて、ＨＤＤ３１４上の受信したジョブ履歴を保存する領域（ジョブ履歴受信領域）に格納する。
【００６４】
図１３（Ａ）は、ジョブ履歴送信予約時にジョブ履歴受信領域に格納されるデータを例示する図である。
本実施例では、要求処理部５０１が、ジョブ履歴受信領域に発行したコネクションＩＤ毎にフォルダを作成し、そのフォルダの中に関連付けられるエージェント設定情報を記憶するものとする。そして、要求処理部５０１は、発行したコネクションＩＤと共に、ジョブ履歴送信予約成功を収集エージェント４０４に応答し、本フローチャートの処理を終了する。
【００６５】
一方、上記Ｓ７０５において、ジョブ履歴送信予約が受け付け不可であると判断した場合（Ｓ７０５でＮＯの場合）、要求処理部５０１は、処理をＳ７０７に進める。
ステップＳ７０７では、要求処理部５０１は、ジョブ履歴送信予約失敗を収集エージェント４０４に応答し、本フローチャートの処理を終了する。
【００６６】
また、上記Ｓ７０４において、エージェント管理部のデータベースがダウンしているなどの原因で、エージェント設定情報の取得に失敗したと判断した場合（Ｓ７０４でＮＯの場合）、要求処理部５０１は、処理をＳ７０８に進める。
【００６７】
ステップＳ７０８では、要求処理部５０１は、エージェント管理部障害フラグを"ｔｒｕｅ"に設定する。
次に、ステップＳ７０９において、要求処理部５０１は、エージェント設定情報アクセスエラーを収集エージェント４０４に応答し、本フローチャートの処理を終了する。なお、エージェント設定情報アクセスエラーの場合、図６のＳ６０９に示したように、収集エージェント４０４からエージェント設定情報が送信され、後述するＳ７２３にて、エージェント設定情報が臨時エージェント管理部５０３に登録される。
【００６８】
また、上記Ｓ７０２において、エージェント管理部障害フラグが"ｔｒｕｅ"であると判断した場合（Ｓ７０２でＹＥＳの場合）、要求処理部５０１は、処理をＳ７１０に進める。
ステップＳ７１０では、要求処理部５０１は、ジョブ履歴送信予約の要求に含まれているエージェントＩＤをキーとして、臨時エージェント管理部５０３から、エージェント設定情報を取得する。
【００６９】
次に、ステップＳ７１１において、要求処理部５０１は、ステップＳ７１０のエージェント設定情報取得が成功したかどうかを判断する。
そして、エージェント設定情報の取得に成功したと判断した場合（Ｓ７１１でＹＥＳの場合）、要求処理部５０１は、処理をＳ７０５に進める。
【００７０】
一方、エージェント設定情報の取得に失敗したと判断した場合（Ｓ７１１でＮＯの場合）、要求処理部５０１は、処理をＳ７１２に進める。
ステップＳ７１２では、要求処理部５０１は、エージェント管理部５０５にアクセスし、アクセスが可能になっているかどうかを判断する。アクセスが可能になっていると判断した場合（Ｓ７１２でＹＥＳの場合）、要求処理部５０１は、処理をＳ７１３に進める。
【００７１】
ステップＳ７１３では、要求処理部５０１は、エージェント管理部５０５の障害が復旧したものと判断して、エージェント管理部障害フラグを"ｆａｌｓｅ"に設定する。そして、要求処理部５０１は、処理をＳ７０３に進める。
【００７２】
一方、上記Ｓ７１２において、アクセスが可能になっていないと判断した場合（Ｓ７１２でＮＯの場合）、要求処理部５０１は、処理をＳ７１４に進める。
ステップＳ７１４において、要求処理部５０１は、上述したＳ７０９と同様に、エージェント設定情報アクセスエラーを収集エージェント４０４に応答し、本フローチャートの処理を終了する。
【００７３】
また、上記Ｓ７０１において、受信した要求がジョブ履歴送信予約でないと判断した場合（Ｓ７０１でＮＯの場合）、要求処理部５０１は、処理をＳ７２０に進める。
ステップＳ７２０では、要求処理部５０１は、収集エージェント４０４から受信した要求がエージェント設定情報の送信かどうかを判断する。
【００７４】
そして、受信した要求がエージェント設定情報送信であると判断した場合（Ｓ７２０でＹＥＳの場合）、要求処理部５０１は、処理をＳ７２１に進める。
ステップＳ７２１では、要求処理部５０１は、エージェント管理部障害フラグか"ｔｒｕｅ"かどうかを判断する。
そして、エージェント管理部障害フラグが"ｆａｌｓｅ"であると判断した場合（Ｓ７２１でＮＯの場合）、要求処理部５０１は処理をＳ７２２に進める。
【００７５】
ステップＳ７２２では、要求処理部５０１は、受信したエージェント設定情報をエージェント管理部５０５に登録する。要求処理部５０１は、受信したエージェント設定情報に対して、エージェントを識別するためのエージェントＩＤを発行する。そして、要求処理部５０１は、発行したエージェントＩＤを受信したエージェント設定情報に含めた上で、エージェント管理部５０５に登録する。エージェント設定情報を登録した後、要求処理部５０１は、発行したエージェントＩＤを収集エージェント４０４に応答して、本フローチャートの処理を終了する。
【００７６】
一方、上記Ｓ７２１において、エージェント管理部障害フラグが"ｔｒｕｅ"であると判断した場合（Ｓ７２１でＹＥＳの場合）、要求処理部５０１は、処理をＳ７２３に進める。
【００７７】
ステップＳ７２３では、要求処理部５０１は、受信したエージェント設定情報を臨時エージェント管理部５０３に登録し、本フローチャートの処理を終了する。本実施例において、臨時エージェント管理部５０３では、エージェント設定情報は、エージェント毎にファイルとしてジョブ履歴処理サーバ１０１のＨＤＤ３１４に保存されるものとする。
【００７８】
また、上記Ｓ７２０において、受信した要求がエージェント設定情報送信でないと判断した場合（Ｓ７２０でＮＯの場合）、要求処理部５０１は処理をＳ７９０に進める。
ステップＳ７９０では、要求処理部５０１は、収集エージェント４０４から受信した、ジョブ履歴送信などの要求内容に応じた処理を行う。例えば、ジョブ履歴送信の要求を受信した場合には、要求処理部５０１は、Ｓ７９０において、要求に含まれるコネクションＩＤに関連付けて、送信されてきたジョブ履歴をジョブ履歴受信領域に格納する。
図１３（Ｂ）は、ジョブ履歴が格納された後のジョブ履歴受信領域に格納されるデータを例示する図である。
【００７９】
なお、ジョブ履歴の受信が完了すると、要求処理部５０１は、バックグラウンドで、同一コネクションＩＤに関連付くジョブ履歴画像の変換処理や、エージェント設定情報の内、監査に必要となる情報をジョブ履歴属性情報に付加する処理を行う。付加の処理が行われた後のジョブ履歴属性情報の例を表３に示す。さらに、要求処理部５０１は、ジョブ履歴を一意に識別するためのジョブ履歴ＩＤを発行し、エージェント設定情報、処理されたジョブ履歴画像とジョブ履歴属性情報を、発行したジョブ履歴ＩＤと関連付けて、ジョブ履歴監査システム１３１に送信する。
【００８０】
【表３】
2016045930.tif 000005
【００８１】
なお、ジョブ履歴送信予約解除の要求を受信した場合には、要求処理部５０１は、Ｓ７９０において、上述した受け付け中の予約数を１減らすものとする。
【００８２】
次に、図８を用いて、ジョブ履歴処理サーバ１０１のサーバ管理部５０４の動作について説明する。
図８は、ジョブ履歴処理サーバ１０１のサーバ管理部５０４の動作を例示するフローチャートである。なお、図８のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されているサーバ管理部５０４を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。なお、図８のフローチャートに示す処理は、ジョブ履歴処理サーバ１０１の起動中は常に実行されているものとする。
【００８３】
ステップＳ８０１において、サーバ管理部５０４は、例えば１０秒など、予め設定された時間スリープする。
次に、ステップＳ８０２において、サーバ管理部５０４は、エージェント管理部障害フラグが"ｔｒｕｅ"かどうかを判断する。
そして、エージェント管理部障害フラグが"ｆａｌｓｅ"であると判断した場合（Ｓ８０２でＮＯの場合）、サーバ管理部５０４は、処理をＳ８０１に戻す。
【００８４】
一方、エージェント管理部障害フラグが"ｔｒｕｅ"であると判断した場合（Ｓ８０２でＹＥＳの場合）、サーバ管理部５０４は、処理をＳ８０３に進める。
ステップＳ８０３において、サーバ管理部５０４は、エージェント管理部５０５にアクセスし、アクセスが可能かどうかを確認する。
そして、アクセスが可能になっていないと判断した場合（Ｓ８０３でＮＯの場合）、サーバ管理部５０４は、処理をＳ８０１に戻す。
【００８５】
一方、アクセスが可能になっていると判断した場合（Ｓ８０３でＹＥＳの場合）、サーバ管理部５０４は、処理をＳ８０４に進める。
ステップＳ８０４では、サーバ管理部５０４は、臨時エージェント管理部５０３に登録されているエージェント設定情報を削除する。サーバ管理部５０４は、エージェント設定情報を削除した後、処理をＳ８０１に戻す。
【００８６】
以上のように、実施例１において、要求処理部５０１は、エージェント管理部５０５がアクセス不可となった場合に、「エージェント設定情報アクセスエラー」を収集エージェント４０４に応答する（図７のＳ７０９等）。該「エージェント設定情報アクセスエラー」の応答を受信した収集エージェント４０４は、自身が持つエージェント設定情報をジョブ履歴処理サーバ１０１に送信する（図６のＳ６０９）。該エージェント設定情報を受信した要求処理部５０１は、該エージェント設定情報を、臨時エージェント管理部５０３に登録し（図７のＳ７２３）、以降、そのエージェント設定情報を参照して動作する（図７のＳ７１０）。このような処理により、エージェント管理部５０５がアクセス不可の場合でも、ジョブ履歴処理サーバ１０１はジョブ履歴を受け付けることができ、さらにエージェント設定情報から監査に必要な情報をジョブ履歴属性情報に付加して、ジョブ履歴監査システム１３１等の外部システムが参照可能な領域にエクスポートすることができる。
【００８７】
また、エージェント管理部５０５がアクセス可能になった場合、サーバ管理部５０４が、臨時エージェント管理部５０３に登録されているエージェント設定情報を削除する（図８のＳ８０４）。この処理により、要求処理部５０１による臨時エージェント管理部５０３からのエージェント設定情報の取得（図７のＳ７１０）が失敗するようになる（図７のＳ７１１でＮＯ）。そして、要求処理部５０１は、エージェント管理部５０５へのアクセスをチェックして復旧を確認し（図７のＳ７１２でＹＥＳ）、正常時の動作に戻ることができる（図７のＳ７１３）。
【００８８】
以上説明したように、実施例１によれば、各収集エージェント４０４の設定情報を管理する管理サービス（エージェント管理サーバ１０２のエージェント管理部５０５）に障害が発生してアクセス不可となった場合でも、各収集エージェント４０４から設定情報を入手して一時的にジョブ履歴処理サーバ１０１の臨時エージェント管理部５０３に保持することで、継続的に受信したジョブ履歴を処理してジョブ履歴監査システム１３１に受け渡すことができ、ジョブ履歴監査の即時性を維持することができる。
【００８９】
なお、上述したように、ジョブ履歴処理サーバ１０１がエージェント管理サーバ１０２を包含する構成であってもよい。この構成の場合でも、各収集エージェント４０４の設定情報を管理する管理機能（エージェント管理部５０５）に障害が発生した場合でも、収集エージェント４０４から設定情報を入手して一時的に臨時エージェント管理部５０３に保持することで、継続的に受信したジョブ履歴を処理してジョブ履歴監査システム１３１に受け渡すことができ、ジョブ履歴監査の即時性を維持することができる。
【実施例２】
【００９０】
次に、実施例２について説明する。実施例２では、主に、ＭＦＰの台数が多く、１台のジョブ履歴処理サーバだけではＭＦＰから送信されてくるジョブ履歴を処理しきれないような規模の大きな環境に対応する実施例について説明する。なお、実施例１と重複する部分の説明は省略し、差分のみを説明する。
【００９１】
図９は、本発明の実施例２を示すジョブ履歴処理システム１００および、それと連携するジョブ履歴監査システム１３１の構成を例示する図である。
【００９２】
本実施例におけるジョブ履歴処理システム１００は、複数台のＭＦＰ１１１と、複数台のジョブ履歴処理サーバ１０１とが、負荷分散装置（ロードバランサ）１５１を介して接続されている。実施例２のジョブ履歴処理サーバ１０１は、収集エージェント４０４から負荷分散装置１５１を経由して、収集対象となるデータを受付ける。また、本実施例におけるエージェント管理サーバ１０２は、複数台のジョブ履歴処理サーバ１０１に共通して使用される。そして、エージェント管理サーバ１０２上のエージェント管理部５０５は、複数台のジョブ履歴処理サーバ１０１に対して、エージェント設定情報を一元的に管理する機能を提供するものとする。また、本実施例において、エージェント管理部５０５は、実施例１と同様、データベースによって実現されるものとするが、これに限るものではなく、ファイルサーバなどによって実現されてもよい。
【００９３】
負荷分散装置１５１は、一般的な負荷分散装置であり、ＭＦＰ１１１からジョブ履歴処理サーバ１０１に対する接続を振り分け、複数のジョブ履歴処理サーバ１０１間で負荷が分散されるようにするものである。即ち、負荷分散装置１５１は、複数のジョブ履歴処理サーバ１０１に対して、収集エージェント４０４からのデータの転送先を分散させる。また、負荷分散装置１５１は、収集エージェント４０４から送信されてくる要求に含まれるサーバ指定情報を解釈し、指定されたジョブ履歴処理サーバ１０１に要求を送信する機能も備えるものとする。
【００９４】
なお、本実施例では、サーバ指定情報は、収集エージェント４０４の要求に対するジョブ履歴処理サーバの応答を、収集エージェント４０４に返す際に負荷分散装置１５１が発行して応答に含めるものとする。ただし、この方法に限るものではなく、収集エージェント４０４からの要求に応答する際にジョブ履歴処理サーバ１０１がサーバ指定情報を発行してその応答に含めてもよい。サーバ指定情報には、収集エージェント４０４からの要求の送信先を識別するための情報が含まれるものとする。
【００９５】
次に、図１０を用いて、実施例２におけるＭＦＰ１１１の収集エージェント４０４が、ジョブ履歴処理サーバ１０１にジョブ履歴を送信する際の動作について説明する。
図１０は、実施例２におけるＭＦＰ１１１の収集エージェント４０４がジョブ履歴処理サーバ１０１にジョブ履歴を送信する際の動作を例示するフローチャートである。なお、図１０のフローチャートに示す各ステップは、ＭＦＰ１１１のＣＰＵ２０１が、ＲＯＭ２０３またはＨＤＤ２０４に記憶されている収集エージェント４０４を実現するプログラムを実行することで実現される。また、ＣＰＵ２０１は、必要に応じて記憶領域としてＲＡＭ２０２やＨＤＤ２０４を利用する。
【００９６】
ステップＳ１００１において、収集エージェント４０４は、自身が保持しているサーバ固定フラグが"ｆａｌｓｅ"か否かを判断する。サーバ固定フラグは、ジョブ履歴送信予約の要求先のサーバを特定のサーバに固定するかどうかの判断に用いられ、エージェント管理サーバ１０２が使用できない場合に"ｔｒｕｅ"となる。本実施例では、サーバ固定フラグは、ＨＤＤ３１４上にファイルで保持されるものとする。
【００９７】
図１４は、サーバ固定フラグのファイルを例示する図である。
本実施例ではサーバ固定フラグのファイルの名前を「ＤｅｓｔＳｐｅｃＦｌｇ」とし、その内容は、"ｔｒｕｅ"もしくは"ｆａｌｓｅ"の文字列とする。
【００９８】
以下、図１０のフローチャートの説明に戻る。
上記Ｓ１００１において、サーバ固定フラグが"ｆａｌｓｅ"であると判断した場合（Ｓ１００１でＹＥＳの場合）、収集エージェント４０４は、正常時の処理として、処理をＳ１００２に進める。
ステップＳ１００２では、収集エージェント４０４は、図６のＳ６０１と同様に、ジョブ履歴送信予約の要求を行う。
【００９９】
次に、ステップＳ１００３において、収集エージェント４０４は、図６のＳ６０２と同様に、ジョブ履歴送信予約に対する応答を受信し、その内容を確認して予約成功であるか否かを判断する。
そして、予約成功であると判断した場合（Ｓ１００３でＹＥＳの場合）、収集エージェント４０４は、処理をＳ１００４に進める。
【０１００】
ステップＳ１００４では、収集エージェント４０４は、上記Ｓ１００３で受信した応答に含まれるサーバ指定情報を例えばＨＤＤ２０４等に保持する。なお、上述したように、本実施例では、サーバ指定情報は、負荷分散装置１５１が発行して応答に含めるものとする。また、本ステップの実行時に、既に保持しているサーバ指定情報がある場合には、収集エージェント４０４は、その既に保持しているサーバ指定情報を破棄して、応答に含まれるサーバ指定情報を新たに保持し直す。
【０１０１】
次に、ステップＳ１００５において、収集エージェント４０４は、図６のＳ６０３と同様に、上記Ｓ１００３で受信した応答に含まれるコネクションＩＤを、ジョブ履歴送信用のコネクションＩＤとして一時的に保持する。
【０１０２】
次に、ステップＳ１００６において、収集エージェント４０４は、ジョブ履歴送信用のコネクションＩＤに加えて、上記Ｓ１００５で保持したサーバ指定情報を含め、ジョブ履歴を送信する。収集エージェント４０４は、ジョブ履歴の送信に、サーバ指定情報を含めることにより、負荷分散装置１５１を介しても、ジョブ履歴送信予約を行ったジョブ履歴処理サーバ１０１に、ジョブ履歴の送信を行うことが可能となる。
【０１０３】
次に、ステップＳ１００７において、収集エージェント４０４は、ジョブ履歴送信予約解除の要求を送信する。本ステップにおいても、収集エージェント４０４は、ステップＳ１００６と同様に、ジョブ履歴送信用のコネクションＩＤに加えて、保持しているサーバ指定情報を含めて要求を送信する。
【０１０４】
次に、ステップＳ１００８において、収集エージェント４０４は、図６のＳ６０６と同様に、送信が終了したジョブ履歴をＨＤＤ２０４上から削除し、本フローチャートの処理を終了する。
【０１０５】
また、上記Ｓ１００３において、予約失敗であると判断した場合（Ｓ１００３でＮＯの場合）、収集エージェント４０４は、処理をＳ１０１０に進める。
ステップＳ１０１０では、収集エージェント４０４は、図６のＳ６０７と同様に、ジョブ履歴送信予約の失敗のエラー内容がエージェント設定情報アクセスエラーかどうかを判断する。
【０１０６】
そして、上記Ｓ１０１０において、ジョブ履歴送信予約の失敗がエージェント設定情報アクセスエラーでないと判定した場合（Ｓ１０１０でＮＯの場合）、収集エージェント４０４は、処理をＳ１０１３に進める。
ステップＳ１０１３では、収集エージェント４０４は、ジョブ履歴送信予約に対する応答の内容が、エージェント管理部復旧であるかどうかを判断する。
【０１０７】
そして、エージェント管理部復旧であると判断した場合（Ｓ１０１３でＹＥＳの場合）、収集エージェント４０４は、処理をＳ１０１４に進める。
ステップＳ１０１４では、収集エージェント４０４は、自身が保持しているサーバ固定フラグを"ｆａｌｓｅ"にし、処理をＳ１００１に戻す。これにより、収集エージェント４０４は、以後のジョブ履歴処理送信予約を、サーバを指定せずに負荷分散装置によって振り分けられたジョブ履歴処理サーバ１０１に対して行うようになる。
【０１０８】
一方、上記Ｓ１０１３において、ジョブ履歴送信予約に対する応答の内容がエージェント管理部復旧でないと判断した場合（Ｓ１０１３でＮＯの場合）、収集エージェント４０４は、処理をＳ１０１５に進める。
ステップＳ１０１５では、収集エージェント４０４は、図６のＳ６０８と同様に、ジョブ履歴送信予約エラー発生時の処理を行い、本フローチャートの処理を終了する。
【０１０９】
また、上記Ｓ１０１０において、ジョブ履歴送信予約の失敗がエージェント設定情報アクセスエラーであると判断した場合（Ｓ１０１０でＹＥＳの場合）、収集エージェント４０４は、処理をＳ１０１１に進める。
【０１１０】
ステップＳ１０１１では、収集エージェント４０４は、自身が保持しているサーバ固定フラグを"ｔｒｕｅ"にすると共に、ジョブ履歴送信予約に対する応答に含まれているサーバ指定情報を例えばＨＤＤ２０４等に保持する。なお、本ステップの実行時に、既に保持しているサーバ指定情報がある場合には、収集エージェント４０４は、その既に保持しているサーバ指定情報を破棄して、応答に含まれるサーバ指定情報を新たに保持し直す。
【０１１１】
次に、ステップＳ１０１２において、収集エージェント４０４は、上記Ｓ１０１１で保持したサーバ指定情報を含めて、自身が持つエージェント設定情報をジョブ履歴処理サーバ１０１の要求処理部５０１に送信し、処理をＳ１００１に戻す。このＳ１０１１とＳ１０１２の処理により、収集エージェント４０４は、エージェント設定情報アクセスエラーを返してきたジョブ履歴処理サーバ１０１に対し、自身が持つエージェント設定情報を送信することができる。さらに、収集エージェント４０４は、自身が持つエージェント設定情報を送信したジョブ履歴処理サーバ１０１に対し、ジョブ履歴を送信することができるようになる。即ち、上記Ｓ１０１２で送信したエージェント情報がジョブ履歴処理サーバ１０１に保存された後は、データ転送の宛先が該エージェント情報の送信先であるジョブ履歴処理サーバ１０１に固定される。
【０１１２】
また、上記Ｓ１００１において、サーバ固定フラグが"ｔｒｕｅ"であると判断した場合（Ｓ１００１でＮＯの場合）、異常時の処理として、収集エージェント４０４は、処理をＳ１０２０に進める。
【０１１３】
ステップＳ１０２０では、収集エージェント４０４は、保持しているサーバ指定情報を含めて、ジョブ履歴送信予約の要求を行う。ここで使用されるサーバ指定情報は、サーバ固定フラグを"ｔｒｕｅ"にした際に保持したものであり、自身が持つエージェント設定情報を送信したサーバを指定するものである。収集エージェント４０４は、このサーバ指定情報を使用することにより、エージェント設定情報アクセスエラーを受信した際に自身が持つエージェント設定情報を送信したサーバに対して、ジョブ履歴の送信を行うことができる。
【０１１４】
次に、ステップＳ１０２１において、収集エージェント４０４は、ステップＳ１００３と同様に、ジョブ履歴送信予約に対する応答を受信し、その内容を判断する。
そして、予約成功であると判断した場合（Ｓ１０２１でＹＥＳの場合）、収集エージェント４０４は、処理をＳ１００５に進める。
【０１１５】
一方、予約失敗であると判断した場合（Ｓ１０２１でＮＯの場合）、収集エージェント４０４は、処理をＳ１０２２に進める。
ステップＳ１０２２では、収集エージェント４０４は、ジョブ履歴送信予約の失敗のエラー内容がエージェント設定情報アクセスエラーまたはサーバ接続エラーかどうかを判断する。
【０１１６】
そして、エージェント設定情報アクセスエラーでもサーバ接続エラーでもないと判断した場合（Ｓ１０２２でＮＯの場合）、収集エージェント４０４は、処理をＳ１０１３に進める。
【０１１７】
一方、上記Ｓ１０２２において、ジョブ履歴送信予約の失敗のエラー内容が、エージェント設定情報アクセスエラーまたはサーバ接続エラーであると判断した場合（Ｓ１０２２でＹＥＳの場合）、収集エージェント４０４は、処理をＳ１０２３に進める。
【０１１８】
ステップＳ１０２３では、収集エージェント４０４は、サーバ指定情報を含めずに、自身が持つエージェント設定情報を送信する。これにより、障害が起きているサーバを避けて、別のサーバに再度、エージェント設定情報を送信することができる。
【０１１９】
次に、ステップＳ１０２４において、収集エージェント４０４は、上記Ｓ１０２３でのエージェント設定情報の送信に対する応答に含まれるサーバ指定情報を受信して保持し、処理をＳ１００１に処理を戻す。
【０１２０】
次に、図１１を用いて、実施例２におけるジョブ履歴処理サーバ１０１の要求処理部５０１が、ＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を説明する。
図１１は、実施例２におけるジョブ履歴処理サーバ１０１の要求処理部５０１がＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を示すフローチャートである。なお、図１１のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されている要求処理部５０１を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。なお、図１１は、図７のステップＳ７１３に続いてステップＳ１１０１を実行する点だけが図７とは異なる。そのため、図７と同様なステップについては、図７と同一な符号を付けてその説明は省略し、ステップＳ１１０１についてのみ説明する。
【０１２１】
ステップＳ７１３の処理を終えると、要求処理部５０１は、処理をＳ１０１１に進める。ステップＳ１１０１では、要求処理部５０１は、エージェント管理部復旧を、収集エージェント４０４に応答し、本フローチャートの処理を終了する。
このＳ１１０１の応答を受信することで、収集エージェント４０４は、図１０のＳ１０１３の判断がＹＥＳとなって、Ｓ１０１４において、サーバ固定フラグを"ｆａｌｓｅ"にし、正常時の動作に復帰することができる。
なお、サーバ管理部５０４の動作は、実施例１と同様であり、ここでの説明は省略する。
【０１２２】
なお、上記実施例２では、収集エージェント４０４は、図１０のＳ１０１１でサーバ指定情報を保持し、それによって指定されるサーバにエージェント設定情報を送信するように構成した。しかし、図１０のＳ１０１１ではサーバ指定情報を保持しないようにしてもよい。この構成の場合、収集エージェント４０４は、図１０のＳ１０１２で、サーバ指定情報を含めずにエージェント設定情報を送信し、その応答に含まれるサーバ指定情報を保持するようにするものとする。
【０１２３】
以上説明したように、実施例２によれば、複数台のジョブ履歴処理サーバ１０１で負荷分散をするような構成の場合に、各収集エージェント４０４の設定情報を管理する管理サービス（エージェント管理サーバ１０２のエージェント管理部５０５）に障害が発生してアクセス不可となった場合でも、各収集エージェント４０４から設定情報を入手して一時的に各ジョブ履歴処理サーバ１０１の臨時エージェント管理部５０３に保持することで、継続的に受信したジョブ履歴を処理してジョブ履歴監査システム１３１に受け渡すことができ、ジョブ履歴監査の即時性を維持することができる。
【実施例３】
【０１２４】
次に、実施例３について説明する。上述した実施例２では、エージェント管理部５０５が使用できない場合に、ジョブ履歴処理サーバ１０１の１台がダウンした場合、ダウンしたジョブ履歴処理サーバ１０１をジョブ履歴送信先としていた収集エージェント４０４は、別のジョブ履歴処理サーバ１０１にジョブ履歴送信先が移ることになる。一旦、そのような状態になった後、ダウンしていたジョブ履歴処理サーバ１０１が復旧した場合、復旧したジョブ履歴処理サーバ１０１に対しては収集エージェント４０４からアクセスがない状態となる。このため、復旧したジョブ履歴処理サーバ１０１が無駄になってしまうばかりか、他のジョブ履歴処理サーバ１０１の負荷が下がらずに、ジョブ履歴の処理が遅滞し、システムの運用に支障をきたす可能性がある。実施例３は、この問題点に対応するものである。なお、本実施例では、実施例２と重複する部分の説明は省略し、差分のみを説明することとする。
【０１２５】
本実施例において、ジョブ履歴処理サーバ１０１のサーバ管理部５０４は、ジョブ履歴処理システム１００内にあるジョブ履歴処理サーバ１０１のアドレス情報のリスト（ジョブ履歴処理サーバリスト）を持つ。エージェント管理部５０５が、マスタとなるジョブ履歴処理サーバリストを保持していて、各ジョブ履歴処理サーバ１０１はそれを取得してジョブ履歴処理サーバリストとして保持するようにしていてもよい。または、いずれかのジョブ履歴処理サーバ１０１上に、システム管理者がジョブ履歴処理サーバリストを手動等で作成しておき、それを各ジョブ履歴処理サーバ１０１に手動等で配布してもよい。
【０１２６】
次に、図１５を用いて、実施例３におけるジョブ履歴処理サーバ１０１が起動した際（起動時）のサーバ管理部５０４の動作を説明する。
図１５は、実施例３におけるジョブ履歴処理サーバの起動通知処理を示すフローチャートである。なお、図１５のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されているサーバ管理部５０４を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。
【０１２７】
ステップＳ１５０１において、サーバ管理部５０４は、臨時エージェント管理部５０３にエージェント設定情報が存在するか否かを判断する。そして、存在すると判断した場合（Ｓ１５０１でＹＥＳの場合）、サーバ管理部５０４は、処理をＳ１５０２に進める。
【０１２８】
ステップＳ１５０２において、サーバ管理部５０４は、臨時エージェント管理部５０３にあるエージェント設定情報を全て削除し、処理をＳ１５０３に進める。
一方、上記Ｓ１５０１において、臨時エージェント管理部５０３にエージェント設定情報が存在しないと判断した場合（Ｓ１５０１でＹＥＳの場合）、サーバ管理部５０４は、そのまま処理をＳ１５０３に進める。
【０１２９】
ステップＳ１５０３において、サーバ管理部５０４は、エージェント管理部５０５にアクセスし、アクセス可能かどうかを判断する。そして、アクセス可能であると判断した場合（Ｓ１５０３でＹＥＳの場合）、サーバ管理部５０４は、本フローチャートの処理を終了する。
【０１３０】
一方、エージェント管理部５０５にアクセス可能でないと判断した場合（Ｓ１５０３でＮＯの場合）、サーバ管理部５０４は、処理をＳ１５０４に進める。
【０１３１】
ステップＳ１５０４において、サーバ管理部５０４は、ジョブ履歴処理サーバリストを用いて、他のジョブ履歴処理サーバのサーバ管理部５０４に、自サーバが起動したことを通知する（起動通知送信）。そして、本フローチャートの処理を終了する。
【０１３２】
次に、図１６を用いて、図１５のＳ１５０４の通知（起動通知）を受け取ったサーバ管理部５０４の動作を説明する。
図１６は、実施例３におけるジョブ履歴処理サーバの起動通知受信処理を示すフローチャートである。なお、図１６のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されているサーバ管理部５０４を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。
【０１３３】
他のジョブ履歴処理サーバのから起動通知を受信すると、サーバ管理部５０４は、本フローチャートの処理を開始する。
まず、ステップＳ１６０１において、サーバ管理部５０４は、臨時エージェント管理部５０３にエージェント設定情報が存在するか否かを判断する。そして、存在しないと判断した場合（Ｓ１６０１でＮＯの場合）、サーバ管理部５０４は、そのまま本フローチャートの処理を終了する。
【０１３４】
一方、存在すると判断した場合（Ｓ１６０１でＹＥＳの場合）、サーバ管理部５０４は、処理をＳ１６０２に進める。
ステップＳ１６０２において、サーバ管理部５０４は、臨時エージェント管理部５０３にあるエージェント設定情報から、収集エージェント４０４が保持しているサーバ指定情報をリセットさせるエージェントのリスト（リセット対象リスト）を生成する。リセット対象リストは、具体的には、臨時エージェント管理部５０３にあるエージェント設定情報のエージェントＩＤからなる。
【０１３５】
次に、ステップＳ１６０３において、サーバ管理部５０４は、臨時エージェント管理部５０３にあるエージェント設定情報を全て削除し、本フローチャートの処理を終了する。
【０１３６】
次に、図１７のフローチャートを用いて、実施例３におけるジョブ履歴処理サーバ１０１の要求処理部５０１が、ＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を説明する。
図１７は、実施例３におけるジョブ履歴処理サーバ１０１の要求処理部５０１がＭＦＰ１１１の収集エージェント４０４からの処理要求を受信した際の動作を示すフローチャートである。なお、図１７のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されている要求処理部５０１を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。また、図１７に示す処理は、Ｓ１７０１〜Ｓ１７０３が加わっている点が図１１に示す処理と異なる。そのため、図１１と同様なステップについては、図１１と同一な符号を付けてその説明は省略し、Ｓ１７０１〜Ｓ１７０３についてのみ説明する。
【０１３７】
実施例３の要求処理部５０１は、ステップＳ７０２において、エージェント管理部障害フラグが"ｔｒｕｅ"であると判断した場合（Ｓ７０２でＹＥＳの場合）、処理をＳ１７０１に進める。
ステップＳ１７０１において、要求処理部５０１は、ジョブ履歴送信予約の送信元である収集エージェント４０４のエージェントＩＤが、図１６のＳ１６０２で生成されたリセット対象リストにあるか否かを判断する。
【０１３８】
そして、リセット対象リストにないと判断した場合（Ｓ１７０１でＮＯの場合）、要求処理部５０１は、処理をＳ７１０に進める。
一方、エージェントＩＤがリセット対象リストにあると判断した場合（Ｓ１７０１でＹＥＳの場合）、要求処理部５０１は、処理をＳ１７０２に進める。
【０１３９】
ステップＳ１７０２において、要求処理部５０１は、ジョブ履歴送信予約の送信元である収集エージェント４０４のエージェントＩＤを、リセット対象リストから削除する。
【０１４０】
ステップＳ１７０３において、要求処理部５０１は、エージェント設定情報アクセスエラーを、ジョブ履歴送信予約の送信元である収集エージェント４０４に応答し、本フローチャートの処理を終了する。
【０１４１】
以上説明したように、実施例３によれば、エージェント管理部５０５が使用できない場合に、ジョブ履歴処理サーバ１０１のいずれかがダウンして再度起動した場合、収集エージェント４０４のサーバ指定情報をリセットすることができる。これにより、収集エージェント４０４が要求を行うジョブ履歴処理サーバの偏りを解消することができるようになり、復旧したサーバを有効に利用できる。
【０１４２】
なお、上記実施例３では、ジョブ履歴処理サーバ１０１が起動したときの処理（図１５の処理）を行うのは、サーバ管理部５０４でなくてもよく、要求処理部５０１や臨時エージェント管理部５０３であってもよい。また、図１６の処理についても同様である。
【０１４３】
また、上記実施例３では、図１７のステップＳ１７０２で、エージェント設定情報アクセスエラーが応答される収集エージェント４０４のエージェントＩＤを、要求処理部５０１がリセット対象リストから削除するように構成した。しかし、ステップＳ１７０２では、リセット対象リストの当該収集エージェント４０４のエージェントＩＤに対して削除済みをマークするだけで実際には削除せず、一定時間経過後に削除されるようにしてもよい。この構成の場合、ステップＳ１７０３のエージェント設定情報アクセスエラーが、収集エージェント４０４で正常に受信されないなどで、再度、同一の収集エージェント４０４がジョブ履歴送信予約を送信してきた場合に、ステップＳ１７０１で検知できる。これにより、ステップＳ７１０、Ｓ７１１、Ｓ７１２の処理を省略して、再度、エージェント設定情報アクセスエラーを、送信元の収集エージェント４０４に応答することができる。
【実施例４】
【０１４４】
次に、実施例４について説明する。実施例４では、実施例３におけるリセット対象リストにリストアップされる収集エージェント４０４の数を少なくする実施例について説明する。なお、本実施例では、実施例３と重複する部分の説明は省略し、差分のみを説明することとする。
【０１４５】
図１８を用いて、実施例４におけるジョブ履歴処理サーバ１０１が起動した際（起動時）のサーバ管理部５０４の動作を説明する。
図１８は、実施例４におけるジョブ履歴処理サーバの起動通知受信処理を示すフローチャートである。なお、図１８のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されているサーバ管理部５０４を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。なお、図１８の処理は、ステップＳ１５０４の代わりに、ステップＳ１８０１、ステップＳ１８０２が加わっている点が図１５の処理と異なる。そのため、図１５と同様なステップについては、図１５と同一な符号を付けてその説明は省略し、ステップＳ１８０１、ステップＳ１８０２についてのみ説明する。
【０１４６】
実施例４のサーバ管理部５０４は、上述したＳ１５０３において、エージェント管理部５０５にアクセス可能でないと判断した場合（Ｓ１５０３でＮＯの場合）、サーバ管理部５０４は、処理をＳ１８０１に進める。
ステップＳ１８０１において、サーバ管理部５０４は、ジョブ履歴処理サーバリストを用いて、他のジョブ履歴処理サーバのサーバ管理部５０４に、管理している収集エージェント４０４の台数を問い合わせて取得する。
【０１４７】
ステップＳ１８０２において、サーバ管理部５０４は、上記Ｓ１８０１で各ジョブ履歴処理サーバから取得した収集エージェント４０４の台数の合計し、該合計数を、ジョブ履歴処理サーバ１０１の台数で割る（除算する）。これにより、１台のジョブ履歴処理サーバ１０１が管理すべきエージェント数（サーバ１台あたりのエージェント数）が算出される。そして、サーバ管理部５０４は、算出されたサーバ１台あたりのエージェント数を、各ジョブ履歴処理サーバ１０１のサーバ管理部５０４に通知し（エージェント数通知送信）、本フローチャートの処理を終了する。
【０１４８】
即ち、ジョブ履歴処理サーバ１０１のサーバ管理部５０４は、該ジョブ履歴処理サーバ１０１の起動時に別のジョブ履歴処理サーバ１０１から保存しているエージェント設定情報の数（即ち、管理している収集エージェント４０４の台数）を取得し、該取得した数の合計に基づいて、該取得元の各ジョブ履歴処理サーバ１０１で保存して良いエージェント設定情報の数（即ち、管理して良い収集エージェント４０４の台数）を算出して各ジョブ履歴処理サーバ１０１に通知する。
【０１４９】
次に、図１９を用いて、図１８のＳ１８０２のサーバ１台あたりのエージェント数の通知（エージェント数通知）を受け取ったサーバ管理部５０４の動作を説明する。
図１９は、実施例４におけるジョブ履歴処理サーバのサーバ１台あたりのエージェント数通知受信処理を示すフローチャートである。なお、図１９のフローチャートに示す各ステップは、ジョブ履歴処理サーバ１０１のＣＰＵ３１１がＲＯＭ３１２またはＨＤＤ３１４に記憶されているサーバ管理部５０４を実現するプログラムを実行することで実現される。また、ＣＰＵ３１１は、必要に応じて記憶領域としてＲＡＭ３１３やＨＤＤ３１４を利用する。
【０１５０】
他のジョブ履歴処理サーバのからエージェント数通知を受信すると、サーバ管理部５０４は、本フローチャートの処理を開始する。
まず、ステップＳ１９０１において、サーバ管理部５０４は、臨時エージェント管理部５０３にあるエージェント設定情報が、受信したサーバ１台あたりのエージェント数よりも多いかどうかを判断する。そして、受信したサーバ１台あたりのエージェント数よりも多くない、即ち、受信したサーバ１台あたりのエージェント数以下であると判断した場合（Ｓ１９０１でＮＯの場合）、サーバ管理部５０４は、本フローチャートの処理を終了する。
【０１５１】
一方、受信したサーバ１台あたりのエージェント数よりも多いと判断した場合（Ｓ１９０１でＹＥＳの場合）、サーバ管理部５０４は、処理をＳ１９０２に進める。
【０１５２】
ステップＳ１９０２において、サーバ管理部５０４は、上記サーバ１台あたりのエージェント数を超える分だけ、臨時エージェント管理部５０３にあるエージェント設定情報のエージェントＩＤをリストアップしたリセット対象リストを生成する。リストアップ対象とする収集エージェント４０４はランダムに決定してもよいし、直近で管理するようになった収集エージェント４０４から順に決定してもよい。
【０１５３】
次に、ステップＳ１９０３において、サーバ管理部５０４は、上記Ｓ１９０２でリストアップした収集エージェント４０４について、臨時エージェント管理部５０３にあるエージェント設定情報を削除し、本フローチャートの処理を終了する。
【０１５４】
以上説明したように、実施例４によれば、上記実施例３におけるリセット対象リストにリストアップされる収集エージェント４０４の数を少なくできる。このため、全収集エージェント４０４がエージェント設定情報の登録し直す必要がなくなり、実施例３よりも、収集エージェント４０４が要求を行うジョブ履歴処理サーバの偏りを効率的に解消することができる。
【０１５５】
なお、上記実施例４では、ジョブ履歴処理サーバ１０１が起動したときの処理（図１８の処理）を行うのは、サーバ管理部５０４でなくてもよく、要求処理部５０１や臨時エージェント管理部５０３であっても良い。また、図１９の処理についても同様である。
【０１５６】
なお、上記実施例では、ジョブ履歴処理システム１００で受け付ける情報の収集元をＭＦＰ等の画像形成装置（印刷装置）として説明した。しかし、ジョブ履歴処理システム１００で受け付ける情報の収集元はＭＦＰ等の画像形成装置に限定されるものではなく、ＰＣ等の情報処理装置やネットワーク家電等のネットワーク機器であればどのような機器であってもよい。
【０１５７】
また、収集エージェント４０４がＭＦＰ１１１等の情報収集元のネットワーク機器上で動作する構成について説明した。しかし、情報収集元の機器で記録されたジョブ履歴を該機器から収集可能なＰＣ等の他のネットワーク機器に収集エージェント４０４に対応するプログラムをインストールして、該他のネットワーク機器上で収集エージェント４０４を動作させる構成であってもよい。この構成の場合、他のネットワーク機器上で動作する収集エージェント４０４がＭＦＰ等の機器で記録されたジョブ履歴を該機器から収集して、ジョブ履歴処理サーバ１０１に送信する。このような構成により、収集エージェント４０４を動作させることができない機器の情報であってもジョブ履歴処理システム１００で管理可能となる。
【０１５８】
また、上記実施例では、ジョブ履歴はＭＦＰ等の情報収集元の機器で記録され、ジョブ履歴処理サーバ１０１に送信される構成としたが、ＭＦＰ等の情報収集元の機器の代わりに、該機器にジョブを投入するＰＣ等の他のネットワーク機器でジョブ履歴を記録し、ジョブ履歴処理サーバ１０１に送信する構成としてもよい。即ち、ＰＣ等の他のネットワーク機器に収集エージェント４０４に対応するプログラムをインストールして、該他のネットワーク機器上で収集エージェント４０４を動作させる構成であってもよい。
【０１５９】
また、上記実施例では、要求処理部５０１の処理効率を考え、サーバ管理部５０４において、エージェント管理部５０５の復旧を定期的にチェックする構成としている。しかし、要求処理部５０１が、ジョブ履歴送信予約を受信する度に、エージェント管理部５０５の復旧をチェックするように構成してもよい。
【０１６０】
また、上記実施例では、要求処理部５０１は、臨時エージェント管理部５０３からエージェント設定情報が取得できないことを契機に、エージェント管理部５０５の復旧を確認するようにした。この構成を、サーバ管理部５０４からエージェント管理部５０５の復旧通知を要求処理部５０１が受け、それを契機に、要求処理部５０１がエージェント管理部５０５の復旧を確認するようにしてもよい。
【０１６１】
以上示したように、本発明によれば、エージェントの情報を管理する管理サービスに障害が発生した場合でも、ジョブ履歴を速やかにジョブ履歴監査システム等の外部システムに受け渡すことができ、ジョブ履歴監査の即時性等を維持することができる。
即ち、ジョブ履歴処理サーバが利用するエージェント設定情報管理機能の障害が長期化した場合でも、ジョブ履歴をジョブ履歴監査システムに受け渡すことができ、監査の即時性が損なわれる課題を解決することができる。
【０１６２】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０１６３】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
例えば、本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図１】
2016045930.tif 000006
【図２】
2016045930.tif 000007
【図３】
2016045930.tif 000008
【図４】
2016045930.tif 000009
【図５】
2016045930.tif 000010
【図６】
2016045930.tif 000011
【図７】
2016045930.tif 000012
【図８】
2016045930.tif 000013
【図９】
2016045930.tif 000014
【図１０】
2016045930.tif 000015
【図１１】
2016045930.tif 000016
【図１２】
2016045930.tif 000017
【図１３】
2016045930.tif 000018
【図１４】
2016045930.tif 000019
【図１５】
2016045930.tif 000020
【図１６】
2016045930.tif 000021
【図１７】
2016045930.tif 000022
【図１８】
2016045930.tif 000023
【図１９】
2016045930.tif 000024