(57)【要約】    【課題】  監視対象プログラム数が増加した場合でも、従来のような監視対象プログラムに対する監視処理の負荷が増大する不具合を解消すると共に、監視対象プログラムの再起動処理を円滑に行うことを可能とする。    【解決手段】  遠隔監視システムは、情報収集装置１、拠点管理サーバ２、センタ側管理サーバ６、情報管理装置７、画像形成装置３、４、５、１２を備える。情報収集装置１は、ＣＰＵ２０１、監視プログラム、監視対象プログラムを格納したフラッシュＲＯＭ２０４、ネットワークＩ／Ｆ２０５、２０６、シリアルＩ／Ｆ２０７を備える。情報収集装置１の監視プログラムは、監視対象プログラムから設定した監視間隔以内にメッセージを受信したか否かを判定し、監視対象プログラムから監視間隔以内にメッセージを受信していない場合、設定した再起動方法に従い監視対象プログラムを再起動する。【選択図】      図１
2005135333.tif 000002
【特許請求の範囲】
【請求項１】
監視対象プログラムの監視間隔と再起動方法を設定する設定手段と、前記監視対象プログラムから前記監視間隔以内に通知を受信したか否かを判定する判定手段と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、前記再起動方法に従い前記監視対象プログラムを再起動する再起動手段とを備えることを特徴とするプログラム監視装置。
【請求項２】
前記監視対象プログラムは、前記プログラム監視装置と通信可能なデバイスから情報を取得する機能を有するプログラムを含み、前記設定手段は、前記監視対象プログラムにおける前記デバイスからの情報取得間隔を考慮して前記監視間隔を設定することを特徴とする請求項１記載のプログラム監視装置。
【請求項３】
前記設定手段は、前記監視間隔と、前記監視対象プログラムの再起動失敗後の回復処理を行うための再起動チェック用間隔とのうち小さい方を設定することを特徴とする請求項１記載のプログラム監視装置。
【請求項４】
前記再起動手段は、前記監視対象プログラムを再起動できない場合、前記プログラム監視装置自体を再起動することを特徴とする請求項１記載のプログラム監視装置。
【請求項５】
前記監視対象プログラムからの通知とは、前記監視対象プログラムの監視開始を依頼する通知、前記監視対象プログラムの監視終了を依頼する通知、前記監視対象プログラムの生存を示す通知を含むことを特徴とする請求項１記載のプログラム監視装置。
【請求項６】
前記プログラム監視装置と通信可能なデバイスとは、画像形成装置、画像読取装置、画像送受信装置、情報処理装置を含むことを特徴とする請求項２記載のプログラム監視装置。
【請求項７】
監視対象プログラムの監視間隔と再起動方法を設定する設定工程と、前記監視対象プログラムから通知を受け付ける受付工程と、前記監視対象プログラムから前記監視間隔以内に通知を受信したか否かを判定する判定工程と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、前記再起動方法に従い前記監視対象プログラムを再起動する再起動工程とを有することを特徴とするプログラム監視方法。
【請求項８】
監視対象プログラムから通知を受け付ける受付機能と、前記監視対象プログラムから設定した監視間隔以内に通知を受信したか否かを判定する判定機能と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、設定した再起動方法に従い前記監視対象プログラムを再起動する再起動機能を、コンピュータに実現させるためのプログラム。
【請求項９】
前記請求項８記載のプログラムを格納することを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項１０】
前記請求項１乃至６の何れかに記載のプログラム監視装置と、前記プログラム監視装置と通信可能なデバイスとを通信媒体により接続したことを特徴とする情報取得システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置や情報処理装置等のデバイスを管理するプログラムの監視を行う場合に好適なプログラム監視装置、プログラム監視方法、プログラム、記憶媒体、及び情報取得システムに関する。
【背景技術】
【０００２】
従来、人が介在せずにプログラムを再起動し正常に動作させる、プログラムの無人リカバリに関する技術としては、プログラム監視プログラムが監視対象となる常駐プログラムを監視することで、常駐プログラムの障害検出及び復旧を行う技術が提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００２−２５９１４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記特開２００２−２５９１４１号公報に開示されているように、プログラム監視プログラムが監視対象となるプログラムの個々のプロセスの状態を定期的に監視するという方法は、正常に動作しているプログラムにまで毎回イベントを発行する必要がある。そのため、従来技術では、監視対象となるプログラムの数の増加に伴いプログラム監視プログラムの負荷が増大することとなり、システム全体の動作に影響を与えかねないという問題があった。また、従来技術では、プログラムの再起動を指定の監視間隔以内に行うことができないため、例えば情報収集において取りこぼしが生じる事態が発生する恐れがあった。
【０００４】
本発明の目的は、監視対象プログラム数が増加した場合でも、従来のような監視対象プログラムに対する監視処理の負荷が増大する不具合を解消すると共に、監視対象プログラムの再起動処理を円滑に行うことを可能とするものである。
【課題を解決するための手段】
【０００５】
上述の目的を達成するために、本発明のプログラム監視装置は、監視対象プログラムの監視間隔と再起動方法を設定する設定手段と、前記監視対象プログラムから前記監視間隔以内に通知を受信したか否かを判定する判定手段と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、前記再起動方法に従い前記監視対象プログラムを再起動する再起動手段とを備えることを特徴とする。
【０００６】
また、前記監視対象プログラムは、前記プログラム監視装置と通信可能なデバイスから情報を取得する機能を有するプログラムを含み、前記設定手段は、前記監視対象プログラムにおける前記デバイスからの情報取得間隔を考慮して前記監視間隔を設定することを特徴とする。
【０００７】
また、前記設定手段は、前記監視間隔と、前記監視対象プログラムの再起動失敗後の回復処理を行うための再起動チェック用間隔とのうち小さい方を設定することを特徴とする。
【０００８】
また、前記再起動手段は、前記監視対象プログラムを再起動できない場合、前記プログラム監視装置自体を再起動することを特徴とする。
【０００９】
また、前記監視対象プログラムからの通知とは、前記監視対象プログラムの監視開始を依頼する通知、前記監視対象プログラムの監視終了を依頼する通知、前記監視対象プログラムの生存を示す通知を含むことを特徴とする。
【００１０】
また、前記プログラム監視装置と通信可能なデバイスとは、画像形成装置、画像読取装置、画像送受信装置、情報処理装置を含むことを特徴とする。
【００１１】
本発明のプログラム監視方法は、監視対象プログラムの監視間隔と再起動方法を設定する設定工程と、前記監視対象プログラムから通知を受け付ける受付工程と、前記監視対象プログラムから前記監視間隔以内に通知を受信したか否かを判定する判定工程と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、前記再起動方法に従い前記監視対象プログラムを再起動する再起動工程とを有することを特徴とする。
【００１２】
本発明のプログラムは、監視対象プログラムから通知を受け付ける受付機能と、前記監視対象プログラムから設定した監視間隔以内に通知を受信したか否かを判定する判定機能と、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、設定した再起動方法に従い前記監視対象プログラムを再起動する再起動機能を、コンピュータに実現させることを特徴とする。
【００１３】
本発明の記憶媒体は、前記プログラムを格納することを特徴とする。
【００１４】
本発明の情報取得システムは、前記プログラム監視装置と、前記プログラム監視装置と通信可能なデバイスとを通信媒体により接続したことを特徴とする。
【００１５】
更に、本発明は、前記監視対象プログラムから前記監視間隔以内に通知を受信したか否かを判定し、前記監視対象プログラムから前記監視間隔以内に通知を受信していない場合、前記再起動方法に従い前記監視対象プログラムを再起動する処理を、監視対象プログラムの数だけ実行するようにしてもよい。
【００１６】
更に、本発明は、前記監視対象プログラムの再起動に先立ち、前記監視対象プログラムを強制終了する指示を前記監視対象プログラムに送信するようにしてもよい。
【発明の効果】
【００１７】
本発明によれば、監視対象プログラムから監視間隔以内に通知を受信したか否かを判定し、監視間隔以内に通知を受信していない場合、設定した再起動方法に従い監視対象プログラムを再起動するため、監視対象プログラム数が増加した場合でも、監視対象プログラムの再起動処理を円滑に行うことができる。
【００１８】
また、本発明によれば、監視対象プログラムにおけるデバイスからの情報取得間隔を考慮して監視間隔を設定するため、監視対象プログラム数が増加した場合でも、従来のような監視対象プログラムに要する監視処理の負荷が増大する不具合を解消することができる。
【００１９】
また、本発明によれば、監視間隔と、監視対象プログラムの再起動失敗後の回復処理を行うための再起動チェック用間隔とのうち小さい方を設定するため、監視対象プログラムの再起動チェックも監視対象プログラム監視用の監視間隔と同じ間隔で行う場合に、監視対象プログラムの再起動失敗後回復処理が行われるまでの時間が長くなる不具合を防止することができる。
【００２０】
また、本発明によれば、監視対象プログラムを再起動できない場合、プログラム監視装置自体を再起動するため、プログラム監視装置を安定した状態で稼動させることができる。
【００２１】
また、本発明によれば、監視対象プログラムから監視間隔以内に監視開始依頼通知もしくは監視終了依頼通知もしくは生存通知を受信していない場合、設定した再起動方法に従い監視対象プログラムを再起動するため、監視対象プログラム数が増加した場合でも、監視対象プログラムの再起動処理を円滑に行うことができる。
【００２２】
また、本発明によれば、監視対象プログラムにおけるデバイス（画像形成装置、画像読取装置、画像送受信装置、情報処理装置を含む）からの情報取得間隔を考慮して監視間隔を設定するため、監視対象プログラム数が増加した場合でも、従来のような監視対象プログラムに要する監視処理の負荷が増大する不具合を解消することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態を図面に基づき説明する。
【００２４】
図１は、本実施の形態に係る遠隔監視システムの構成例を示す図である。
【００２５】
図１において、遠隔監視システムは、情報収集装置１、拠点側管理サーバ２、センタ側管理サーバ６、情報管理装置７、デバイス３、４、５、１２を備えている。
【００２６】
遠隔監視システムにおいて、インターネット等の通信回線８には、拠点側管理サーバ２、センタ側管理サーバ６が接続されている。ＬＡＮ等のネットワーク１３には、センタ側管理サーバ６、情報管理装置７が接続されている。ＬＡＮ等のネットワーク１４には、情報収集装置１、拠点側管理サーバ２、デバイス３、４、５が接続されている。
【００２７】
拠点側管理サーバ２は、遠隔監視システムの拠点側に設置されたサーバである。センタ側管理サーバ６は、遠隔監視システムのセンタ側に設置されたサーバであり、ハードディスク等の記憶装置１１を備えている。センタ側管理サーバ６と拠点側管理サーバ２は、通信回線８を介し、所定のプロトコル１０により通信可能に接続されている。図１では拠点側管理サーバ２を１つしか図示していないが、複数の拠点側管理サーバ２と、複数の拠点側管理サーバ２を一元的に管理するセンタ側管理サーバ６が通信回線８を介し通信可能である。情報管理装置７は、情報収集装置１で収集した情報を管理する。
【００２８】
尚、遠隔監視システムでは、不正アクセスを防止するためと、通信回線８とネットワーク９、ネットワーク１３との間のファイアウォールを通過可能とするために、一般的なプロトコル（例えばＳＭＴＰ（Simple Mail Transfer Protocol））や認証機構も設けている。
【００２９】
デバイス３、４、５、１２は、例えば画像形成装置（電子写真方式、インクジェット方式のプリンタ、複写機を含む）として構成されている。尚、遠隔監視システムには、プリンタや複写機以外に、スキャナ機能・プリンタ機能・ファクシミリ機能を有するデジタル複合機、スキャナ、ファクシミリ、パーソナルコンピュータ、プリントサーバ等を設置することも可能である。以下では、デバイス３、４、５、１２を画像形成装置と称する。画像形成装置の詳細については後述する。
【００３０】
情報収集装置１は、ネットワーク９を介し、画像形成装置３、４、５から装置状態（例えば用紙ジャムやエラーの発生の有無など）、トナーカートリッジのトナー残量、印刷枚数等の情報を収集する。更に、情報収集装置１は、シリアルインターフェイス（以下Ｉ/Ｆ）１４を介し、画像形成装置１２から印刷枚数等の情報を収集する。
【００３１】
図２は、上記図１の情報収集装置１のハードウェア構成を示すブロック図である。
【００３２】
図２において、情報収集装置１は、ＣＰＵ２０１、バス２０２、ＲＡＭ２０３、フラッシュＲＯＭ２０４、ネットワークＩ/Ｆ（１）２０５、ネットワークＩ/Ｆ（２）２０６、シリアルＩ/Ｆ２０７、デバッグＩ/Ｆ２０８を備えている。
【００３３】
ＣＰＵ２０１は、情報収集装置全体の制御を司る。バス２０２は、上記各部間のデータの受け渡しを行う伝送路である。ＲＡＭ２０３は、電気的に情報を記憶可能で且つ書き換え可能なメモリである。フラッシュＲＯＭ２０４は、電気的に情報を書き換え可能で且つ電源供給が断たれた場合でも情報を記憶可能なメモリであり、後述の各種プログラム（障害情報確認プログラム、応答確認プログラム、カウンタ情報取得プログラム、カウンタ情報送信プログラム、カウンタ情報収集プログラム、プログラム監視プログラム（以下、監視プログラムと略称：プログラム監視装置、設定手段、判定手段、再起動手段）を格納している。
【００３４】
ネットワークＩ/Ｆ（１）２０５、ネットワークＩ/Ｆ（２）２０６は、それぞれ、ネットワーク経由で情報収集装置外部と情報交換を行うインターフェイスである。尚、ネットワークＩ/Ｆの設置数は２つに限定されず、任意の設置数とすることが可能である。シリアルＩ/Ｆ２０７は、例えばＲＳ２３２Ｃシリアル通信により情報収集装置外部と情報交換を行うインターフェイスである。デバッグＩ/Ｆ２０８は、デバッグ用途に用いるシリアル通信用のインターフェイスである。
【００３５】
図３は、上記図１の画像形成装置のコントローラを中心としたハードウェア構成を示すブロック図である。
【００３６】
図３において、画像形成装置は、原稿給送装置制御部５０２、イメージリーダ制御部５０３、画像信号制御部５０４、プリンタ制御部５０５、外部Ｉ/Ｆ５０６、ＣＰＵ回路部５０７、操作部５１１、表示部５１２、ソータ制御部５１３、フィニッシャ制御部５１４、状態検知部５１５を備えている。
【００３７】
画像形成装置全体の制御を司るコントローラは、ＣＰＵ回路部５０７を備えており、更に、ＣＰＵ回路部５０７は、ＣＰＵ５１６、ＲＯＭ５０８、ＲＡＭ５０９、ハードディスク５１０を備えている。ＲＯＭ５０８は、制御プログラムを格納している。ＣＰＵ５１６は、ＲＯＭ５０８に格納されている制御プログラムに基づき、原稿給送装置制御部５０２〜状態検知部５１５を統括的に制御する。ＲＡＭ５０９は、制御データを一時的に保持し、また制御に伴う演算処理の作業領域として用いられる。ハードディスク５１０は、制御プログラムに必要な情報や、原稿給送装置制御部５０２〜状態検知部５１５から受信した情報を記憶する。
【００３８】
原稿給送装置制御部５０２は、読取対象の原稿を原稿台上に給送する原稿給送装置（図示略）を、ＣＰＵ回路部５０７からの指示に基づき駆動制御する。イメージリーダ制御部５０３は、原稿台上の原稿を走査するスキャナユニット（図示略）、原稿から読み取った画像を電気信号に変換するイメージセンサ（図示略）等に対する駆動制御を行い、イメージセンサから出力されたアナログ画像信号を画像信号制御部５０４に転送する。画像信号制御部５０４は、アナログ画像信号をデジタル画像信号に変換した後に各処理を施し、このデジタル画像信号をビデオ信号に変換してプリンタ制御部５０５に出力する。画像信号制御部５０４による処理動作は、ＣＰＵ回路部５０７により制御される。
【００３９】
プリンタ制御部５０５は、感光体をレーザ光により露光する制御を行う露光制御部（図示略）を、入力されたビデオ信号に基づき駆動する。外部Ｉ／Ｆ５０６は、ＬＡＮインターフェイスを介してコンピュータ５０１から入力されたデジタル画像信号に各種処理を施し、このデジタル画像信号をビデオ信号に変換してプリンタ制御部５０５に出力する。また、外部Ｉ／Ｆ５０６は、ＬＡＮインターフェイスを介して情報収集装置１や拠点側管理サーバ２と通信を行う。
【００４０】
操作部５１１は、画像形成装置の各種機能に関わる設定（例えば、印刷枚数、コピー倍率、用紙サイズ、コピー濃度などの設定）を行うための複数のキー、設定状態を示す情報を表示するための表示部等を備えており、各キーの操作に対応するキー信号をＣＰＵ回路部５０７に出力すると共に、ＣＰＵ回路部５０７からの制御信号に基づき、各キーの操作に対応する情報を表示部５１２に表示する。表示部５１２は、各種情報を表示する。
【００４１】
ソータ制御部５１３は、外部Ｉ/Ｆ５０６を経由したコンピュータ５０１等からの入力信号または操作部５１１を介した設定により、ＣＰＵ回路部５０７からの制御信号に基づき、画像形成が完了した用紙を仕分けるソート処理の制御を司る。フィニッシャ制御部５１４は、外部Ｉ/Ｆ５０６を経由したコンピュータ５０１等からの入力信号または操作部５１１を介した設定により、ＣＰＵ回路部５０７からの制御信号に基づき、画像形成が完了した用紙を綴じるなどのフィニッシング処理の制御を司る。
【００４２】
状態検知部５１５は、原稿給送装置制御部５０２〜フィニッシャ制御部５１４からの状態情報を収集すると共に、収集した状態情報に基づき異常が無いか否か等の判断を行い、判断結果をＣＰＵ回路部５０７に通知する。ＣＰＵ回路部５０７は、この通知に従い、表示部５１２に通知内容を表示したり、外部Ｉ/Ｆ５０６を経由してコンピュータ５０１等へ通知内容を送信する。
【００４３】
図４は、画像形成装置のソフトウェア構成を示す図である。
【００４４】
図４において、タスクマネージャＡ−１０１は、複数のタスクを同時に管理するためのものである。紙搬送タスク群Ａ−１０２は、原稿及び画像形成される用紙の搬送を司るタスク群である。シーケンス制御タスクＡ−１０３は、画像形成装置全体の管理を行うタスクである。通信タスクＡ−１０４は、情報収集装置１や拠点側管理サーバ２と通信を行うタスクである。
【００４５】
管理用データ作成タスクＡ−１０５は、本実施の形態の遠隔管理用データを作成するタスクである。画像形成装置では、画像形成ごとに用紙サイズ別（例えばＡ４、Ｂ４等）、モード別（例えばコピージョブモード、プリントジョブモード等）、用紙種別（例えば普通紙、ＯＨＰ紙等）、カラー別の印刷枚数のカウントを行っており、これらのカウント結果は管理用データ作成タスクＡ−１０５により管理され、画像形成装置内のハードディスク５１０等の記憶装置に格納される。同様にして、用紙ジャム、エラー発生、アラーム発生などのステータス情報が所定のデータフォーマットで前記記憶装置に格納される。
【００４６】
更に、画像形成装置は、画像形成装置内の各部ごとに対応した、消耗部品の交換寿命及び使用度数を示すカウンタ（図示略、以下部品カウンタと称する）を備えており、部品カウンタによるカウント結果は管理用データ作成タスクＡ−１０５により管理され、前記記憶装置に格納される。
【００４７】
状態監視タスクＡ−１０６は、画像形成装置内の異常（用紙ジャム、エラー発生、アラーム発生）を検知するか、画像形成装置内の予め設定されたデバイスのステータス変化を検知すると、検知された異常やステータス変化が管理用データ作成タスクＡ−１０５により前記記憶装置に格納される。
【００４８】
次に、上記構成を有する遠隔監視システムの情報収集装置１の各種処理を図５乃至図８を参照しながら説明する。情報収集装置１と拠点側管理サーバ２、センタ側管理サーバ６との間、情報収集装置１と情報管理装置７との間の情報送信は例えばＳＭＴＰにより行い、情報受信は例えばＰＯＰ（Post Office Protocol）により行うものとする。
【００４９】
先ず、情報収集装置１の障害監視処理を図５及び図６に基づき説明する。障害監視処理は、障害情報確認プログラムの処理（図５）と応答確認プログラムの処理（図６）から構成される。
【００５０】
図５は、情報収集装置１の障害情報確認プログラムの処理を示すフローチャートである。
【００５１】
図５において、情報収集装置１は、障害情報確認プログラムを起動し、画像形成装置３〜５の障害情報（例えば用紙ジャムやエラー発生等を示す情報）をネットワーク９を介して特定のプロトコルにより取得する（ステップＳ３０１）。情報収集装置１は、障害情報を取得できたと判断した場合は（ステップＳ３０２でＹＥＳ）、取得した障害情報を拠点側管理サーバ２もしくはセンタ側管理サーバ６に送信する（ステップＳ３０３）。情報収集装置１は、障害情報を取得できなかったと判断した場合は（ステップＳ３０２でＮＯ）、ステップＳ３０５以降の処理を行う。
【００５２】
情報収集装置１は、障害情報が拠点側管理サーバ２もしくはセンタ側管理サーバ６に正しく送信されたことを確認するために、応答確認プログラム（図６）を起動し（ステップＳ３０４）、規定時間（例えば１分）待機する（ステップＳ３０５）。情報収集装置１は、障害情報確認プログラムへの終了指示があったと判断した場合は（ステップＳ３０６でＹＥＳ）、本処理を終了し、終了指示がないと判断した場合は（ステップＳ３０６でＮＯ）、ステップＳ３０１に戻り、以降の処理を行う。
【００５３】
図６は、情報収集装置１の応答確認プログラムの処理を示すフローチャートである。
【００５４】
図６において、情報収集装置１は、規定時間（例えば３０秒）待機し（ステップＳ３０７）、上記起動した応答確認プログラムにより、拠点側管理サーバ２もしくはセンタ側管理サーバ６からの応答がないかをＰＯＰサーバ（図示略）に問い合わせることによりチェックする（ステップＳ３０８）。情報収集装置１は、拠点側管理サーバ２もしくはセンタ側管理サーバ６から応答があったと判断した場合、即ち、応答電子メールを受信した場合は（ステップＳ３０９でＹＥＳ）、本処理を終了する。
【００５５】
情報収集装置１は、拠点側管理サーバ２もしくはセンタ側管理サーバ６から応答なしと判断した場合は（ステップＳ３０９でＮＯ）、規定の応答確認最大時間（例えば３０分）を超えているか否かを判定する（ステップＳ３１０）。情報収集装置１は、応答確認最大時間を超えていないと判断した場合は（ステップＳ３１０でＮＯ）、ステップＳ３０７以降の処理、即ち、引き続き応答チェック処理を行う。
【００５６】
情報収集装置１は、応答確認最大時間を超えたと判断した場合は（ステップＳ３１０でＹＥＳ）、拠点側管理サーバ２もしくはセンタ側管理サーバ６に対する障害情報送信回数が規定回数（例えば１回）か否かを判断する（ステップＳ３１１）。情報収集装置１は、障害情報送信回数が規定回数であると判断した場合は（ステップＳ３１１でＹＥＳ）、拠点側管理サーバ２もしくはセンタ側管理サーバ６に障害情報を再送し、ステップＳ３０７以降の処理を行う。情報収集装置１は、障害情報送信回数が規定回数を超えていると判断した場合は（ステップＳ３１１でＮＯ）、本処理を終了する。
【００５７】
次に、情報収集装置１のカウンタ情報収集処理を図７及び図８に基づき説明する。カウンタ情報収集処理は、カウンタ情報取得プログラムの処理（図７）とカウンタ情報送信プログラムの処理（図８）から構成される。
【００５８】
図７は、情報収集装置１のカウンタ情報取得プログラム（画像形成装置３〜５のカウンタ情報をネットワーク９経由で取得するプログラム）の処理を示すフローチャートである。
【００５９】
図７において、情報収集装置１は、カウンタ情報取得プログラムを起動し、画像形成装置３〜５のカウンタ情報（印刷枚数）をネットワーク９を介して特定のプロトコルにより取得し（ステップＳ４０１）、取得したカウンタ情報をＲＡＭ２０３またはフラッシュＲＯＭ２０４上のファイルに保存する（ステップＳ４０２）。情報収集装置１は、規定時間（例えば６０分）待機し、カウンタ情報取得プログラムへの終了指示があったと判断した場合は（ステップＳ４０４でＹＥＳ）、本処理を終了し、終了指示がないと判断した場合は（ステップＳ４０４でＮＯ）、ステップＳ４０１に戻り、以降の処理を行う。
【００６０】
図８は、情報収集装置１のカウンタ情報送信プログラムの処理を示すフローチャートである。
【００６１】
図８において、情報収集装置１は、カウンタ情報送信プログラムを起動し、拠点側管理サーバ２もしくはセンタ側管理サーバ６からカウンタ情報の送信を要求する電子メールがないかをＰＯＰサーバ（図示略）に問い合わせる（ステップＳ４０５）。情報収集装置１は、カウンタ情報の送信要求があると判断した場合は（ステップＳ４０６でＹＥＳ）、ステップＳ４０７以降の処理を行い、カウンタ情報の送信要求なしと判断した場合は（ステップＳ４０６でＮＯ）、ステップＳ４１０以降の処理を行う。
【００６２】
情報収集装置１は、カウンタ情報が上記ファイルに保存されているか否かを判定する（ステップＳ４０７）。情報収集装置１は、カウンタ情報がファイルに保存されていると判断した場合は（ステップＳ４０７でＹＥＳ）、ファイルに保存されているカウンタ情報を拠点側管理サーバ２もしくはセンタ側管理サーバ６に送信し（ステップＳ４０８）、カウンタ情報がファイルに保存されていないと判断した場合は（ステップＳ４０７でＮＯ）、カウンタ情報が未収集であるという情報を拠点側管理サーバ２もしくはセンタ側管理サーバ６に送信する（ステップＳ４０９）。
【００６３】
次に、情報収集装置１は、規定時間（例えば３分）待機し（ステップＳ４１０）、カウンタ情報送信プログラムへの終了指示があったと判断した場合は（ステップＳ４１１でＹＥＳ）、本処理を終了し、終了指示がないと判断した場合は（ステップＳ４１１でＮＯ）、ステップＳ４０５に戻り、以降の処理を行う。
【００６４】
図９は、情報収集装置１のカウンタ情報収集プログラム（画像形成装置１２のカウンタ情報をシリアルＩ/Ｆ２０７経由で収集するプログラム）の処理を示すフローチャートである。
【００６５】
カウンタ情報収集プログラムは、印刷枚数を累積したカウント値の取得要求を受け付ける能力を持たず、印刷時に逐一印刷したことを通知するだけの能力のみを持つ画像形成装置１２のカウンタ情報を収集するプログラムであり、常駐プログラムとして動作する。情報収集装置１はシリアルＩ/Ｆ２０７により画像形成装置１２と接続する。
【００６６】
図９において、情報収集装置１は、カウンタ情報収集プログラムにより、画像形成装置１２からの通知を待つ（ステップＳ７０１）。情報収集装置１は、画像形成装置１２から通知があると、通知された情報の種類を判定し、印刷通知であると判断した場合は（ステップＳ７０２でＹＥＳ）、印刷通知に基づき印刷枚数をカウントアップする（ステップＳ７０３）。
【００６７】
以上が本実施の形態の遠隔監視システムの基本構成及び情報収集装置１の動作であるが、次に、情報収集装置１におけるプログラム監視方法について図１０〜図１５を参照しながら詳細に説明する。
【００６８】
図１０は、情報収集装置１の監視対象プログラムに関するプログラム監視情報設定の一例を示す図である。
【００６９】
図１０において、情報収集装置１は、監視対象プログラム（障害情報確認プログラム、応答確認プログラム、カウンタ情報取得プログラム、カウンタ情報送信プログラム、カウンタ情報収集プログラム）に関するプログラム監視情報を、例えばフラッシュＲＯＭ２０４上のファイルとして保持している。プログラム監視情報は情報収集装置１の操作部等から設定可能である。
【００７０】
「name=」の右に続く文字列は、監視対象プログラムの名称である。「wait=」の右に続く文字列は、監視プログラムによる監視対象プログラムに対する監視間隔を表す数値であり、単位は秒である。「exec=」の右に続く文字列は、監視対象プログラムを再起動するためのコマンドである。監視プログラムにより監視する監視対象プログラムの追加は、「name=」「wait=」「exec=」の全てを含むファイルを追加することによって行う。
【００７１】
プログラム監視情報中の「wait=」の値（監視間隔）は、監視対象プログラムの画像形成装置に対する情報取得（収集）間隔を鑑みて設定するものである。監視対象プログラムの情報取得（収集）間隔を考慮せずに、監視プログラムによる監視対象プログラムに対する監視間隔を設定することは、いたずらに監視プログラムの負荷を増大させ、ひいては情報収集装置１の負荷を増大させることとなる。
【００７２】
例えば、カウンタ情報収集プログラム（図９）は、画像形成装置で印刷中の場合、印刷速度の速い画像形成装置からは１秒間に１つ以上の印刷通知を受け取ることとなり、カウンタ情報収集プログラムが稼動していないと画像形成装置から印刷通知を受け取ることができず、画像形成装置による実際の印刷枚数とカウンタ情報収集プログラムが保持している印刷枚数との不一致が生じる。従って、監視プログラムによるカウンタ情報収集プログラムに対する監視間隔は可能な限り短くする必要がある。また、カウンタ情報取得プログラム（図７）は、１時間に１回動作するので、監視プログラムによるカウンタ情報取得プログラムに対する監視間隔は６００秒程度が適当である。
【００７３】
図１１は、情報収集装置１の監視プログラムが実行時にＲＡＭ２０３に保持する監視対象プログラム情報テーブルの一例を示す図である。
【００７４】
図１１において、「監視対象プログラム数」は、情報収集装置１の起動時に初期値として０を設定する。「プログラム名」は、図１０の「name=」に指定されたものと同じ値を持つ。「監視間隔」は、図１０の「wait=」に指定されたものと同じ値を持つ。「起動コマンド文字列」は、図１０の「exec=」に指定されたものと同じ値を持つ。
【００７５】
「監視間隔カウンタ」は、初期値は図１０の「wait=」に指定されたものと同じ値を持つが、監視プログラムによって減算されたり、初期値に戻されたりするものであり、「監視間隔カウンタ」が０になると、監視プログラムは監視対象プログラムが正常に動作していないと判断し、「起動コマンド文字列」に指定されたコマンド、パラメータを参照し、再起動処理を行う。「再起動カウンタ」には、監視対象プログラムの再起動回数が記憶される。
【００７６】
図１２は、監視対象プログラムから監視プログラムに送信されるメッセージの形式の一例を示す図である。
【００７７】
図１２において、「プログラム名」には、図１０の「name=」に指定した文字列が指定され、図１１の形式で保持する監視対象プログラム情報テーブルの特定に用いられるものである。「メッセージ種類」には、監視開始依頼START、生存通知ALIVE、監視終了依頼STOPの３つがある。
【００７８】
図１３は、情報収集装置１の監視プログラムのメッセージ読み込み処理を示すフローチャートである。
【００７９】
図１３において、情報収集装置１は、監視プログラムにより、監視対象プログラムから送信されるメッセージを待ち、メッセージが送信されてくると該メッセージを読み込み（ステップＳ１１０１）、メッセージ種類を判定する（ステップＳ１１０２）。情報収集装置１は、監視プログラムにより、メッセージ種類が監視開始依頼STARTであると判断した場合は（ステップＳ１１０２で「START」）、メッセージ内のプログラム名を検索キーとしてＲＡＭ２０３を検索する。
【００８０】
メッセージ内のプログラム名と一致するプログラム名を持つ監視対象プログラム情報テーブルがあった場合は、監視間隔カウンタに監視間隔を設定し、再起動カウンタに０を設定し、メッセージ内のプログラム名と一致するプログラム名を持つ監視対象プログラム情報テーブルがなかった場合は、図１１の形式の監視対象プログラム情報テーブルを作成（追加）し、監視プログラム数に１加算し、監視間隔カウンタに監視間隔を設定し、再起動カウンタに０を設定し（ステップＳ１１０３）、ステップＳ１１０１に戻りメッセージを待つ。
【００８１】
情報収集装置１は、監視プログラムにより、メッセージ種類が生存通知ALIVEであると判断した場合は（ステップＳ１１０２で「ALIVE」）、メッセージ内のプログラム名を検索キーとしてＲＡＭ２０３を検索し、メッセージ内のプログラム名と一致するプログラム名を持つ監視対象プログラム情報テーブルの監視間隔カウンタに監視間隔を設定し、再起動カウンタを０クリアし（ステップＳ１１０４）、ステップＳ１１０１に戻りメッセージを待つ。
【００８２】
情報収集装置１は、監視プログラムにより、メッセージ種類が監視終了依頼STOPであると判断した場合は（ステップＳ１１０２で「STOP」）、メッセージ内のプログラム名を検索キーとしてＲＡＭ２０３を検索し、メッセージ内のプログラム名と一致するプログラム名を持つ監視対象プログラム情報テーブルのエントリ（プログラム名〜再起動カウンタ）を削除し、監視対象プログラム数から１減算し（ステップＳ１１０５）、ステップＳ１１０１に戻りメッセージを待つ。
【００８３】
また、情報収集装置１は、監視プログラムにより、監視対象プログラムから設定した監視間隔以内にメッセージを受信したか否かを判定し、監視間隔以内にメッセージを受信していないと判断した場合は、図１１の監視対象プログラム情報テーブルの起動コマンド文字列を用いた再起動方法に従い、監視対象プログラムを再起動する。
【００８４】
図１４は、情報収集装置１の監視プログラムによる監視対象プログラムに対する監視処理を示すフローチャートである。
【００８５】
図１４において、情報収集装置１は、所定時間待機する（ステップＳ１２０１）。本実施の形態では監視間隔の指定単位が秒単位であることから、監視プログラムによる監視対象プログラムの監視に好適な待機時間として例えば１秒間待機する。以下、ステップＳ１２０２からステップＳ１２０６までの処理を監視対象プログラム数分を実行する。
【００８６】
情報収集装置１は、監視プログラムにより、監視対象プログラム情報テーブルの監視間隔カウンタを１減じる（ステップＳ１２０２）。次に、情報収集装置１は、監視プログラムにより、監視対象プログラム情報テーブルの監視間隔カウンタが０であると判断した場合で（ステップＳ１２０３でＹＥＳ）、且つ、再起動カウンタが規定値（例えば５）以上でないと判断した場合は（ステップＳ１２０４でＮＯ）、監視対象プログラムを監視対象プログラム情報テーブルの起動コマンド文字列を用いて再起動する（ステップＳ１２０５）。
【００８７】
監視間隔カウンタが０になる場合としては、監視対象プログラムが異常終了してしまったために監視対象プログラムから監視プログラムに生存通知ALIVEを送信できない場合と、監視対象プログラムは動作したが何らかの原因で動作がとまっている（或いはメッセージ送信に制御が移らない）場合との２つがある。主に後者を考慮するため、監視対象プログラムの再起動に先立ち、監視対象プログラムの完全な終了処理を行う。
【００８８】
監視対象プログラムの完全な終了処理としては、Unix（登録商標）においては、プログラム名、プロセスのID、プロセスの起動元プロセスIDプロセスを保持しプロセスを管理するためのオペレーティングシステムが管理するファイル（/proc）を参照し、プログラム名から当該プログラムを構成する全プロセスのIDを参照し、強制的に終了させる信号を監視対象プログラムに送信することにより終了処理を行う。Microsoft Windows（登録商標）においては、WM_QUITなるメッセージを監視対象プログラムに送信することにより終了処理を行う。
【００８９】
情報収集装置１は、監視プログラムにより、上記の監視対象プログラムの再起動に伴い、監視対象プログラム情報テーブルの再起動カウンタに１加算する。次に、情報収集装置１は、監視プログラムにより、監視対象プログラム情報テーブルの監視間隔カウンタに設定する監視間隔として、監視対象プログラム監視用の監視間隔と再起動チェック用間隔とのうち小さい方を設定する（ステップＳ１２０６）。
【００９０】
監視間隔と別に用意する再起動チェック用間隔とは、監視対象プログラムの再起動処理が失敗した場合の回復処理を速やかに行うために設定する間隔である。再起動チェック用間隔を設定する理由は次の通りである。
【００９１】
一例として、監視間隔が例えば６００秒の監視対象プログラムが正常に動作していないことが監視プログラムにより検知されるのは、正常に動作しなくなってから６００秒経過した時点となる。更に、監視対象プログラムの再起動のチェックも同じ間隔で行う場合、監視対象プログラムの再起動失敗後回復処理が行われるまで１２００秒経過することになる。つまり、１２００秒もの間、システムを構成する監視対象プログラムの１つが稼動しないことになる。監視間隔６００秒は、６００秒までならば監視対象プログラムが動作していなくても問題は発生しないという判断の元に設定する値であるので、監視対象プログラムの終了から起動まで１２００秒かかってはシステムの要件を満たすことができない。このような事態を防止するために、再起動チェック用間隔を別途設定する。
【００９２】
他方、情報収集装置１は、監視プログラムにより、監視対象プログラム情報テーブルの監視間隔カウンタが０であると判断した場合で（ステップＳ１２０３でＹＥＳ）、且つ、再起動カウンタが規定値以上であると判断した場合は（ステップＳ１２０４でＹＥＳ）、監視対象プログラムの数回の再起動にも関わらず、監視対象プログラムが起動できないということを意味するので、監視対象プログラムの単体の再起動では問題が解決されないとみなし、情報収集装置自体を再起動する（ステップＳ１２０７）。
【００９３】
図１５は、情報収集装置１の監視対象プログラムから監視プログラムに対するメッセージ送信処理を示すフローチャートである。
【００９４】
図１５において、情報収集装置１は、監視対象プログラムを起動し、監視対象プログラムの起動直後、監視開始依頼メッセージを監視プログラムに送信する（ステップＳ１３０１）。その後、情報収集装置１は、監視対象プログラムに本来の処理を行わせながら、監視間隔以内に生存メッセージを監視プログラムに送信する（ステップＳ１３０２）。
【００９５】
また、図１５には図示していないが、監視対象プログラムは、例えば情報収集対象となる画像形成装置が監視対象外になったといった理由により稼動する必要がなくなった場合は、監視対象プログラムの終了前に監視終了依頼メッセージを監視プログラムに送信する。監視終了依頼メッセージを送信することにより、監視対象プログラムの終了後、監視対象プログラムの起動が不要であるにも関わらず監視対象プログラムの再起動処理がなされることを防止することができる。
【００９６】
以上説明したように、本実施の形態によれば、情報収集装置は監視プログラムにより、監視対象プログラムから監視間隔以内にメッセージを受信したか否かを判定し、監視間隔以内にメッセージを受信していない場合、設定した再起動方法に従い監視対象プログラムを再起動するため、監視対象プログラム数が増加した場合でも、従来のような監視対象プログラムに要する監視処理の負荷が増大する不具合を解消することができると共に、監視対象プログラムの再起動処理を円滑に行うことができ、情報収集装置を安定した状態で稼動させることができる。
【００９７】
また、監視対象プログラム情報テーブルの監視間隔カウンタに設定する監視間隔として、監視対象プログラム監視用の監視間隔と再起動チェック用間隔とのうち小さい方を設定するため、監視対象プログラムの再起動チェックも監視対象プログラム監視用の監視間隔と同じ間隔で行う場合に、監視対象プログラムの再起動失敗後回復処理が行われるまでの時間が長くなる不具合を防止することができる。
【００９８】
［他の実施の形態］
上記実施の形態では、情報収集装置の監視プログラムにより、画像形成装置のカウンタ情報取得等を行うプログラムを監視する場合を例に挙げたが、これに限定されるものではなく、スキャナ、ファクシミリ、コンピュータ、サーバ等の機器の情報取得等を行うプログラムを監視する場合にも適用可能である。
【００９９】
本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラム（図１３〜図１５のフローチャート）をコンピュータ又はＣＰＵに供給し、そのコンピュータ又はＣＰＵが該供給されたプログラムを読出して実行することによって、達成することができる。
【０１００】
この場合、上記プログラムは、該プログラムを記録した記憶媒体から直接供給されるか、又はインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【０１０１】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０１０２】
また、本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラムを記憶した記憶媒体をコンピュータ又はＣＰＵに供給し、そのコンピュータ又はＣＰＵが記憶媒体に記憶されたプログラムを読出して実行することによっても、達成することができる。
【０１０３】
この場合、格納媒体から読出されたプログラムコード自体が上述した各実施の形態の機能を実現すると共に、そのプログラムコードを記憶した記憶媒体は本発明を構成する。
【０１０４】
プログラムコードを記憶する記憶媒体としては、例えば、ＲＯＭ、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、ハードディスク、光ディスク（登録商標）、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード等がある。
【０１０５】
上述した実施の形態の機能は、コンピュータから読出されたプログラムコードを実行することによるばかりでなく、コンピュータ上で稼動するＯＳ等がプログラムコードの指示に基づいて実際の処理の一部又は全部を行うことによっても実現することができる。
【０１０６】
更に、本発明は、前述した実施の形態を実現するソフトウェアのプログラムがネットワーク上のデータベース又はホームページから通信プログラムによりダウンロードされ、このプログラムを読出して実行することによって達成することができる。
【０１０７】
上記プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページからコンピュータプログラム自体、又は自動インストール機能を含む圧縮ファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給することができる。
【０１０８】
また、上記プログラムは、プログラムコードを暗号化した上で格納したＣＤ−ＲＯＭ等の記憶媒体をユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムコードを実行してコンピュータにインストールさせることによっても供給することができる。
【０１０９】
上述した実施の形態の機能は、プログラムコードを複数のファイルに分割し、夫々のファイルを異なるホームページからダウンロードすることによっても実現することができる。即ち、本発明の機能処理をコンピュータで実現させるためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明を構成する。
【０１１０】
また、上述した実施の形態の機能は、記憶媒体から読出されたプログラムが、コンピュータに挿入された機能拡張ボード又はコンピュータに接続された機能拡張ユニットに備えられたメモリに書込まれた後、そのプログラムの指示に基づき、その機能拡張ボード又は機能拡張ユニットに備えられたＣＰＵ又はＭＰＵ等が実際の処理の一部又は全部を実行することによっても実現することができる。
【図面の簡単な説明】
【０１１１】
【図１】本発明の実施の形態に係る遠隔監視システムの構成例を示す図である。
【図２】情報収集装置のハードウェア構成を示すブロック図である。
【図３】画像形成装置のコントローラを中心としたハードウエア構成を示すブロック図である。
【図４】画像形成装置のソフトウェア構成を示す図である。
【図５】情報収集装置の障害情報確認プログラムの処理を示すフローチャートである。
【図６】情報収集装置の応答確認プログラムの処理を示すフローチャートである。
【図７】情報収集装置のカウンタ情報取得プログラムの処理を示すフローチャートである。
【図８】情報収集装置のカウンタ情報送信プログラムの処理を示すフローチャートである。
【図９】情報収集装置のカウンタ情報収集プログラムの処理を示すフローチャートである。
【図１０】監視対象プログラムに関するプログラム監視情報設定の一例を示す図である。
【図１１】情報収集装置の監視プログラムが実行時にＲＡＭに保持する監視対象プログラム情報テーブルの一例を示す図であり、（ａ）は監視対象プログラム数、（ｂ）はプログラム名、監視間隔、起動コマンド文字列、監視間隔カウンタ、再起動カウンタである。
【図１２】監視対象プログラムから監視プログラムに送信されるメッセージの形式の一例を示す図である。
【図１３】監視プログラムのメッセージ読み込み処理を示すフローチャートである。
【図１４】監視プログラムによる監視対象プログラムに対する監視処理を示すフローチャートである。
【図１５】監視対象プログラムから監視プログラムに対するメッセージ送信処理を示すフローチャートである。
【符号の説明】
【０１１２】
１  情報収集装置
２  拠点管理サーバ
３、４、５、１２  画像形成装置
６  センタ側管理サーバ
７  情報管理装置
８  通信回線
９  ネットワーク
１４  シリアルＩ/Ｆ
２０１  ＣＰＵ
２０４  フラッシュＲＯＭ
２０５、２０６  ネットワークＩ/Ｆ
２０７  シリアルＩ/Ｆ
【図１】
2005135333.tif 000003
【図２】
2005135333.tif 000004
【図３】
2005135333.tif 000005
【図４】
2005135333.tif 000006
【図５】
2005135333.tif 000007
【図６】
2005135333.tif 000008
【図７】
2005135333.tif 000009
【図８】
2005135333.tif 000010
【図９】
2005135333.tif 000011
【図１０】
2005135333.tif 000012
【図１１】
2005135333.tif 000013
【図１２】
2005135333.tif 000014
【図１３】
2005135333.tif 000015
【図１４】
2005135333.tif 000016
【図１５】
2005135333.tif 000017