以下、本発明を実施するための第1の形態について図面を用いて説明する。
なお本発明においては、障害の発生を通知する管理者を「第1管理者」、障害が所定期間、放置された場合の通知の対象となる異なる管理者を「第2管理者」とする。さらに、障害の放置を第2の管理者に通知する機能を「エスカレーション機能」、エスカレーション機能による第2管理者への障害放置の通知を「エスカレーション通知」と呼ぶ。
図1は、本発明におけるネットワークシステムの構成を示す図である。同図において、100はローカルエリアネットワークである。ローカルエリアネットワーク100には、デバイス監視サーバー110、クライアントPC111、112、および、ネットワークデバイスとしての複合機能デバイス120、121、123が接続されている。複合機能デバイスは、ネットワークに接続して通信を行う通信機能に加えて、印刷機能やスキャン機能といった機能を1つ以上提供する。デバイス監視サーバー110では、管理プログラムが稼動しており、後述する手順によって複合機能デバイス120、121、122の状態を監視している。一方、クライアントPC111、および、112はそれぞれ第1の管理者、および、第2の管理者が使用しているものとする。なお、実施例におけるデバイス監視サーバー110で稼働する管理プログラムは、WWWサーバー上で稼働するWebプログラムであり、複合機能デバイス120、121、122で発生した障害の通知は電子メールでおこなうものとする。また、クライアントPC111、112上にはWebブラウザプログラム、および、電子メールの送受信が可能な電子メールソフトが稼働しているものとする。したがって、第1の管理者、および、第2の管理者は、Webブラウザプログラムを介してデバイス監視サーバー110上の管理プログラムを操作し、複合機能デバイスの障害発生を含む各種の通知は、電子メールソフトを利用して受信するものとする。ここで、デバイス監視サーバーを複数台用意し、各クライアントPCは、異なるデバイス監視サーバー上の管理プログラムにアクセスして本実施例に記載の機能を実現することも可能である。
図2は、実施例が適用されるデバイス監視サーバー110の構成を示すブロック図である。なお、デバイス監視サーバー110は一般的なコンピューターであり、クライアントPC111、112についても同様の構成を持つものとする。
同図において、デバイス監視サーバー110は、ROM201若しくはハードディスク(HD)210に記憶された管理プログラム(詳細後述)を実行するCPU200を備える。さらに、システムバス203に接続された各デバイスを総括的に制御する。202はRAMであり、CPU200の主メモリ、ワークエリア等として機能する。204はキーボードコントローラ(KBC)であり、キーボード(KB)208や不図示のポインティングデバイス等からの指示入力を制御する。205はDISPコントローラ(DISPC)であり、ディスプレイ(DISP)209への表示を制御する。206はディスクコントローラ(DKC)であり、ハードディスク(HD)210、フロッピー(登録商標)ディスクコントローラ(FD)211、CD−ROMドライブ(CD)212とのアクセスを制御する。207はネットワークインタフェースカード(NIC)であり、LAN100を介してクライアントPC120、121、或いは、複合機能デバイス120、121、122と双方向にデータを授受する。なお、後述するすべての説明で特に断りのない限り、デバイス監視サーバー110に関するハードウェア上の実行の主体はCPU200であり、ソフトウェア上の制御の主体は、ハードディスク(HD)210に格納された管理プログラムである。また、管理プログラムは、CD−ROMなどの記憶媒体に格納された形で供給されても良く、その場合にはCD−ROMドライブ212などによって記憶媒体からプログラムが読み取られ、ハードディスク(HD)210にインストールされる。
図3は、実施例が適用されるデバイス監視サーバー110上で稼動する管理プログラム300のモジュール構成図である。
本実施例においては、管理プログラム300は、WWWサーバープログラム301上で動作し、クライアントPC111、112上のWWWブラウザプログラム(不図示)とHTTPプロトコルを利用して通信をおこなうものとする。また、管理プログラム300と複合機能デバイス120、121、122はSNMP(Simple Network Management Protocol)プロトコル、および、その他の独自プロトコルを利用して通信するものとする。同図において、全体制御モジュール302は、WWWサーバープログラム301から受信したコマンドを解析おこなうモジュールである。さらに、全体制御モジュール302は、解析の結果に応じてスケジューラモジュール303、デバイス管理モジュール304、デバイス探索モジュール307、デバイス監視モジュール309に制御を振り分ける。また、スケジューラモジュール303、デバイス管理モジュール304、デバイス探索モジュール307、デバイス監視モジュール309により生成されたHTMLデータをWWWサーバープログラムに301に送信する。
303はスケジューラモジュールであり、実施例における管理プログラム300において実行可能な各種の処理を実行するタイミングを制御するためのモジュールである。
したがって、デバイス管理モジュール304、デバイス探索モジュール307、デバイス監視モジュール309による各種の処理の実行タイミングはスケジューラモジュール303によって管理される。
304はデバイス管理モジュールであり、管理対象の複合機能デバイス120、121、122に対する情報の設定、および、複合機能デバイス120、121、122からの情報の取得をおこない関連するUIの表示などの制御をおこなうためのモジュールである。さらに、デバイス管理モジュール304は、複合機能デバイス120、121、122から情報を取得するデバイス設定取得モジュール305、および、複合機能デバイス120、121、122に情報の配信するデバイス設定配信モジュール306を制御する。
307はデバイス探索モジュールであり、ネットワークに接続された複合機能デバイス120、121、122の探索、および、探索処理に付随する各種パラメータの制御、および、関連するUIの表示などをおこなうためのモジュールである。
308はデバイスリストモジュールであり、デバイス探索モジュール307の制御に従い探索した複合機能デバイス120、121、122に関する情報の一覧表示、情報更新、インポート、および、エクスポートなどの処理をおこなうためのモジュールである。
309はデバイス監視モジュールであり、スケジューラモジュール303による制御に応じて予め設定された周期で複合機能デバイス120、121、122の状態を監視するモジュールである。デバイス監視モジュール309は、さらに、後述の手順により複合機能デバイス120、121、122で障害が発生した場合、電子メール通知モジュール310を介してクライアントPC111に障害の発生を通知する。また、予め設定された一定期間後も複合機能デバイス120、121、122の障害が回復しない場合、電子メール通知モジュール310を介してクライアントPC112に障害の放置を通知する。
310は電子メール通知モジュールであり、デバイス監視モジュール309の制御により複合機能デバイス120、121、122で発生した障害に関する情報をクライアントPC111、112に通知するため、電子メールを送信するモジュールである。
311はコミュニケーションモジュールであり、デバイス管理モジュール304、デバイス探索モジュール307、および、デバイス監視モジュール309の指示により複合機能デバイスと通信をおこない、各種の情報の送受信をおこなうためのモジュールである。312はデータベースであり、デバイス管理モジュール304、デバイス探索モジュール307で取得した各種の情報、および、ユーザー操作により設定された各種の情報が格納されるデータベースである。格納される。
図4は、実施例が適用されるデバイス監視サーバー110上で稼動する管理プログラム300によるエスカレーション機能の動作を説明するフローチャートである。なお、本フローチャートにおいては、特に断りのない限りデバイス監視サーバー110の動作の主体は管理プログラムに基づき動作するCPUである。
また、デバイス監視サーバー110には、障害発生時の通知先としてクライアントPC111を使用する第1管理者(管理者A)のアドレスが登録され、障害放置時の通知先としてクライアントPC112を使用する第2管理者(管理者B)のアドレスが登録されているものとする。
S400では、デバイス監視サーバー110からネットワークデバイスである複合機能デバイス120に対して状態情報を要求する。S401では、複合機能デバイス120がデバイス監視サーバー110から要求された状態情報をデバイス監視サーバー110に通知する。S402では、複合機能デバイス120から通知された状態情報を解析し、障害が発生しているかどうかの判断がおこなわれる。同S402において障害が検出された場合にはS403に移行し、それ以外の場合には、S400に戻る。
S403では、デバイス管理サーバー110から管理者Aが使用するクライアントPC111に障害の発生が通知(たとえば、電子メール)され、S404に移行する。
S404では、複合機能デバイス120の障害が回復したかどうかを判断するため、S400と同様に複合機能デバイス120に状態情報の要求を行う。S405では、複合機能デバイス120が、デバイス監視サーバー110から要求された状態情報をデバイス監視サーバー110に通知する。
S406では、S405において複合機能デバイス120から通知された状態情報を解析し、S402で検出した障害が回復していないかどうかの判断がおこなわれる。ここで、障害が回復していないと判断された場合にはS407に移行し、それ以外の場合には、処理を終了する。S407では、S406において、S402で検出した障害が回復していないと判断された場合に、障害の放置を警告するために設定された監視期間が経過したかどうかの判断がおこなわれる。ここで、障害が発生してから監視期間が経過したと判断された場合にはS408に移行し、経過していない場合にはS404に戻る。S408では、デバイス管理サーバー110から管理者Bの宛先情報に対して(ここでは、クライアントPC112に対して)、障害の放置されていることが通知され、処理を終了する。
以上の手順により、管理プログラム300による複合機能デバイスで発生した障害の管理者への通知、および、障害が放置された場合の異なる管理者への通知が可能となる。
図5は、本実施例が適用されるデバイス監視サーバー110における、管理プログラム300に基づく処理を説明するためのフローチャートである。
S500では、管理対象の複合機能デバイスをカウントするためのインデックスiが0に初期化され、S501に移行する。S501では、管理対象の複合機能デバイスをカウントするためのインデックスiが管理対象の複合機能デバイスの数mを超えているかどうかの判断がおこなわれる。S501において、インデックスiが管理対象の複合機能デバイスの数mを超えていない判断された場合にはS502に移行し、それ以外の場合には処理を終了する。S502では、i番目の複合機能デバイスに対してSNMPによるポーリングなどの方法で状態の取得とその状態確認がおこなわれる。
S503では、S502における確認の結果、複合機能デバイスに障害が発生しているかどうかの判断がおこなわれる。S503において、n件(n>0)の障害が発生していると判断された場合にはS504に移行し、それ以外の場合には、S515に移行する。S504では、S503においてi番目の複合機能デバイスにおいてn件の障害が検出されたと判断された場合に、障害をカウントするためのインデックスjが0に初期化され、S505に移行する。S505では、i番目の複合機能デバイスで発生した障害をカウントするためのインデックスjがi番目の複合機能デバイスで発生した障害の総数nを超えているかどうかの判断がおこなわれる。S505において、インデックスjがi番目の複合機能デバイスで発生した障害の総数nを超えていない判断された場合にはS506に移行し、それ以外の場合には、S513に移行する。S506では、S502で検出したi番目の複合機能デバイスにおけるj番目の障害についての解析が行われ、S507に移行する。
S507では、S506で解析したj番目の障害が管理プログラム300において管理者への通知対象に設定されているかどうかの判断がおこなわれる。S507において通知対象と判断された場合には、S508に移行し、それ以外の場合には、S512に移行する。S508では、S507においてj番目の障害が管理者への通知対象の障害であると判断された場合、j番目の障害が既に登録された管理者に通知されたものであるかどうかの判断がおこなわれる。S507においてj番目の障害が管理者に通知済みではないと判断された場合には、S509に移行し、それ以外の場合には、S512に移行する。S509では、S507、および、S508において、j番目の障害が管理者への通知対象であり、通知済みの障害ではないと判断された場合に障害通知の電子メールの本文にj番目の障害の情報を追加し、S510に移行する。
S510では、j番目の障害がエスカレーション機能の対象になっているかどうかの判断がおこなわれる。本ステップにおいて、j番目の障害がエスカレーション機能の対象であると判断された場合には、S511に移行し、それ以外の場合には、S512に移行する。S511では、S510においてj番目の障害がエスカレーション対象であると判断された場合にj番目の障害に関するエスカレーション情報を障害通知の電子メール本文に追加し、S512に移行する。なお、実施例おいては、エスカレーション情報として、所定の監視期間の障害が対処されずに放置された場合に通知が行われる管理者の情報(名前、メールアドレスなど)、および通知予定の時間情報を含むものとする。S512では、i番目の複合機能デバイスにおいて検出されたn件の障害をカウントするためのインデックスjをインクリメントし、S505に戻る。
S513では、S503からS512の処理を経て、i番目の複合機能デバイスに関して電子メール通知にて管理者に通知すべき障害が発生しているかどうかの判断がおこなわれる。S513において、通知すべき障害が発生していると判断された場合にはS514に移行し、それ以外の場合には、S515に移行する。S514では、S513においてi番目の複合機能デバイスについて管理者に通知すべき障害が発生していると判断された場合に、予め設定された管理者に対して障害を通知する電子メールを送信し、S514に移行する。S515では、管理対象の複合機能デバイスをカウントするためのインデックスiをインクリメントし、S501に戻る。
以上の手順により実施例では、障害検出時にエスカレーション機能の対象となる障害に関しては、障害が放置された場合に通知が行われる予定の別の管理者の情報を障害情報とともに通知することが可能となる。
図6は、実施例において、データベース312に格納されるデバイスの監視条件などに関する情報の例を示す図である。管理プログラム300を実行に際して、これら情報を参照しつつ、本実施例における各機能が実現される。
600は管理対象となる複合機能デバイスに関する情報が格納されるデータテーブルである。601は、デバイス探索モジュール307を介して探索された複合機能デバイスに対して割り当てられた任意の識別子が格納されるデバイス識別子カラムである。
602は、デバイス探索モジュール307を介して探索された複合機能デバイスのIPアドレスが格納されるIPアドレスカラムである。603は、デバイス探索モジュール307を介して探索された複合機能デバイスの製品名が格納される製品名カラムである。604は、デバイス探索モジュール307を介して探索された複合機能デバイスのユーザーフレンドリ名であるデバイス名が格納されるデバイス名カラムである。なお、データテーブル600に格納された各種の情報は、管理プログラム300で探索時に利用するSNMPプロトコルによって複合機能デバイスのMIB(Management Information Base)などから取得しているものとする。
610は、実施例における、事前に登録されている管理者の情報が格納されたデータテーブルである。611は、管理者登録時に割り当てられるユーザーIDが格納されるユーザーIDカラムである。612は、管理者登録時にユーザーによって登録されるユーザーの名前が格納されるユーザー名カラムである。613は、管理者登録時にユーザーによって登録されるユーザーの宛先情報を示すメールアドレスが格納されるメールアドレスカラムである。実施例においては、複合機能デバイスの障害検出時に本メールアドレスカラムを参照することにより電子メールの宛先を決定する。
620は、実施例において、登録されている複合機能デバイスの監視条件が格納されたデータテーブルである。621は、複合機能デバイスで発生する各種の障害を判別するためのアラートタイプが格納されたアラートタイプカラムである。なお、実施例においては、アラートタイプを”Toner/ink out”等の文字列で扱うが、これらは数値等におきかえられても良い。622は、複合機能デバイスの障害を検出した際の通知先として登録するユーザーIDが格納される第1の管理者IDカラムである。なお、第1の管理者IDカラム622に登録されるユーザーIDは、ユーザーIDカラム611に格納されたユーザーIDから選択される。623は、エスカレーション機能により複合機能デバイスで発生した障害の放置を通知する際の基準となる監視期間が格納される放置検出期限カラムである。624は、複合機能デバイスの障害の放置を検出した際、エスカレーション機能による通知先として登録するユーザーIDが格納されるエスカレーション通知先カラムである。なお、エスカレーション通知先カラム624に登録されるユーザーIDは、ユーザーIDカラム611に格納されたユーザーIDから選択される。
図7は、実施例におけるデバイスの監視条件を設定するためのユーザーインターフェースの一例を示すイメージ図である。具体的には、ウェブブラウザーを用いてデバイス管理サーバー110にアクセスしたPCに対して、管理プログラム300に基づき提供するウェブページ700である。
701は、管理対象とする複合機能デバイスの障害のタイプを選択するチェックボックスである。本チェックボックスで選択した障害のタイプに応じてデータテーブル620のエントリが追加され、選択された障害のタイプはアラートタイプカラム621に格納される。702は、複合機能デバイスの障害を検出した際の通知先を選択するドロップダウンリストである。本ドロップダウンリストで選択された管理者は、データテーブル620の第1の管理者IDカラム622に格納される。703は、監視期間を選択するためのドロップダウンリストである。本ドロップダウンリストで選択された監視期間は、放置検出期限カラムに格納される。704は、エスカレーション機能の通知先として登録する管理者を選択するドロップダウンリストである。本ドロップダウンリストで選択されたが管理者のユーザーIDは、エスカレーション通知先カラム624に格納される。
図8は、実施例において、第1の管理者に障害発生を通知するための電子メールを生成する際の詳細の処理を説明するためのフローチャートである。なお、本フローチャートによって説明する処理は、図5のS511の処理をより詳細に述べたものである。
S800では、複合機能デバイスで発生した障害を識別するための識別子(以下、アラートID)を生成して、S801に移行する。S801、S802では、図6で示したように、事前に登録されている第2の管理者の名前、メールアドレスを取得する。なお、S801では、まず、データテーブル620のアラートタイプカラム621を参照し、複合機能デバイスで発生した障害と一致するエントリの第2の管理者IDカラム624に格納されたユーザーIDを取得する。次に、データテーブル610のユーザーIDカラムを参照し、取得したユーザーIDと一致するエントリに格納されたユーザー名、メールアドレスを取得する。
S803では、第2の管理者に対する障害放置の通知が行われるタイミングを算出する。なお、S803では、データテーブル620のアラートタイプカラム621を参照し、複合機能デバイスで発生した障害と一致するエントリの放置検出期限カラム623に格納された期間からそのタイミングを算出する。
S804では、第1の管理者から第2の管理者にメッセージを通知するためのメッセージフォームを表示するためのURLを生成する。このURLは、デバイス管理サーバー110が管理プログラム300に基づきウェブページとして提供するメッセージフォーム画面へのリンクとなる。第1の管理者が、発生した障害にどうしても対処できない場合などには、このURLを用いてアクセスした画面上からその旨を含むメールを作成し、送信指示を行うことができる。この場合、デバイス管理サーバー110のメール機能により、第2の管理者に対して、メッセージを伝えることができる。なお、S804において生成するURLにはS800で生成したアラートIDが含まれ、このURLによりアクセスしたメッセージフォーム画面を用いてメール送信を行った場合には、その送信履歴においてこのアラートIDを含まれる。
S805では、複合機能デバイスで発生した障害を第1の管理者に通知するための電子メールの本文にエスカレーション情報を追加して処理を終了する。なお、実施例におけるエスカレーション情報は、S801、S802で取得した第2の管理者の名前、および、メールアドレスと、S803で算出した障害放置の通知タイミングと、S804で生成したURLから構成される。
図9は、本実施例において、第1の管理者宛てに通知される電子メールの内容900の一例を示す図である。
901、902は、複合機能デバイスの検出された障害に関する詳細な内容を示す障害情報である。なお、本実施例においては、複数の障害(エラー1、エラー2)が同時に発生しているものとする。903は、障害が発生している複合機能デバイスに関する情報(デバイス情報)である。なお、デバイス情報903は、データテーブル600に登録された情報から構成される。
904、906は、エスカレーション情報である。905、907は、メッセージフォーム表示のためのURLである。なお、URL905、907にはアラートIDが含まれている。
図10は、第1の管理者が第2の管理者へ通知するための提供されるメッセージフォーム画面を表示する際の処理を説明するためのフローチャートである。
S1000では、クライアントPC111からの管理プログラム300で提供する画面の要求を受信する。S1001では、S1000で受信した画面の要求がメッセージフォーム画面の要求であるかどうかの判断がおこなわれる。S1001において、メッセージフォーム画面の要求ではない判断された場合にはS1002に移行し、それ以外の場合にはS1003に移行する。なお、S1001におけるメッセージフォーム画面の要求とは、図9のURL905、907を指定して、アクセスしてきた際の要求を指すものとする。S1002では、S1002において要求がメッセージフォーム画面の要求ではないと判断された場合、適宜、要求された画面を表示して処理を終了する。
S1003では、S1001において要求がメッセージフォーム画面の要求であると判断された場合、URL905、907中に含まれるアラートIDに対応する障害情報が発生しており、監視されているかの判断がおこなわれる。S1003において、アラートIDに対応する障害情報が管理されていなかったと判断された場合には、S1004に移行し、それ以外の場合にはS1005に移行する。S1004では、S1003において、URL905、907中に含まれるアラートIDが不正である旨のエラー画面を表示して処理を終了する。
S1005では、アラートIDに対応する障害情報に関する障害が発生している複合機能デバイスのデバイス情報やアラートタイプから、メッセージフォームのデフォルトのサブジェクトを生成する。これは、たとえば、図11の1101で示す情報である。S1006では、障害情報から参照可能な第2の管理者のメールアドレスをメッセージフォームのデフォルトの宛先(1102)に設定する。S1007では、S1005で生成したサブジェクト、および、S1006で設定した宛先を含むメッセージフォーム(図11)の画面を生成して、クライアントPC111に提供することで表示を制御する。
S1008では、S1007で表示したメッセージフォーム画面に第1の管理者からの本文への入力がおこなわれる。S1009では、第1の管理者により送信ボタン(1104)が押下され、入力として受け取る。ここでは、第1の管理者によりメール送信のキャンセルボタン(1105)の押下が行われる場合があり、この際には、本処理は中止される。
S1010では、メッセージフォーム画面を介して生成された情報を、メールとして第2の管理者に通知する。S1011では、URL905、907に含まれるアラートIDとS1010で通知したメッセージの情報を関連付けて、履歴情報として保存し、処理を終了する。
図12は、実施例においてデータベース312に管理される履歴情報を例示す図である。
1200は管理対象となる複合機能デバイスで発生した障害の情報が格納されるデータテーブルである。1201は、障害を検出した複合機能デバイスを識別するためのデバイスIDを格納するデバイスID格納カラムである。なお、本デバイスID格納カラム1201に格納されるデバイスIDは、ネットワークデバイステーブル600のデバイスIDカラムに格納されるデバイスIDと同義である。1202は、アラートタイプカラムであり、複合機能デバイスで発生した障害の種別を識別するための情報が格納される。1203は、アラート発生時刻カラムであり、複合機能デバイスで発生した障害を検出した時刻が設定される。1204は、アラートIDカラムであり、管理対象のデバイスで発生した障害を一意に識別するための識別子が格納される。なお、本アラートIDカラム1204に格納されるアラートIDは、図8のS800において生成される。
1210は、図11のUIを介して送信指示されたメッセージの履歴情報を管理するためのデータテーブルである。1211は、アラートIDカラムである。ここには、図8のS800において生成されたアラートIDが格納される。1202は、メッセージカラムであり、図11のテキストエリア1103のメッセージが格納される。また図示しないが、本テーブルには、第2の管理者に対してメッセージが送信された時刻を示す時間情報や、送信元となった第1の管理者の情報なども合わせて、関連付けることにより管理されている。
以上の説明したように、本実施例においては障害の発生通知を送る際には、メッセージ内にエスカレーション情報を含めるようにした。これにより、障害放置の抑止力が向上するなど、という効果がある。また、本実施例では、エスカレーション機能により障害放置が通知される第2の管理者に対して、第1の管理者が容易にメッセージを通知するためのメッセージフォーム画面へのリンクとして、URLを障害の発生通知に追加する。このメッセージフォーム画面を介して、第1の管理者および第2の管理者間で行われた障害情報やメッセージの情報も履歴情報をして保存する。これにより、ネットワークデバイスで発生した障害が、放置され、回復するまでの各管理者の対応などといった経緯をより詳細に把握できるという効果がある。
つづいて本発明を実施するための第2の形態について図面を用いて説明する。
図13は、本実施例において、データベース312に格納されるエスカレーション通知機能を管理するための情報の一例を示す図である。
1300はデバイス監視機能におけるエスカレーション通知制御に関する情報が格納されるデータテーブルである。1301は、障害を検出した複合機能デバイスを識別するためのデバイスIDを格納するデバイスID格納カラムである。なお、本デバイスID格納カラム1301に格納されるデバイスIDは、ネットワークデバイステーブル600のデバイスIDカラムに格納されるデバイスIDと同義である。1302は、アラートタイプカラムであり、複合機能デバイスで発生した障害の種別を識別するための情報が格納される。1303は、アラート発生時刻カラムであり、複合機能デバイスで発生した障害を検出した時刻が設定される。1304は、アラートIDカラムであり、管理対象のデバイスで発生した障害を一意に識別するための識別子が格納される。なお、本アラートIDカラム1304に格納されるアラートIDは、図8のS800において生成される。
1305は、監視対象であるデバイスで発生した障害が第1管理者に放置された場合にエスカレーション通知をおこなう時刻が格納される。1306は、スカレーション時刻1305に設定されたエスカレーションの時刻にエスカレーション通知がおこなわれたかどうかのフラグが格納される。本フラグがTrueの場合、エスカレーション時刻1305にエスカレーション通知が行われたことを示し、それ以外の場合には、エスカレーション通知がおこなわれていないことを示す。
図14は、本実施例が適用されるデバイス監視サーバー110における、管理プログラム300がエスカレーション通知処理を実行する際の動作を説明するためのフローチャートである。
S1400では、管理対象の複合機能デバイスをカウントするためのインデックスiが0に初期化され、S1401に移行する。S1401では、管理対象の複合機能デバイスをカウントするためのインデックスiが管理対象の複合機能デバイスの数mを超えているかどうかの判断がおこなわれる。S1401において、インデックスiが管理対象の複合機能デバイスの数mを超えていないと判断された場合にはS1402に移行し、それ以外の場合には処理を終了する。S1402では、i番目の複合機能デバイスに対してSNMPによるポーリングなどの方法で状態の取得とその状態確認がおこなわれ、S1403に移行する。S1403では、S1402における確認の結果、複合機能デバイスに障害が発生しているかどうかの判断がおこなわれる。S1403において、n件(n>0)の障害が発生していると判断された場合にはS1404に移行し、それ以外の場合には、S1416に移行する。S1404では、S1403においてi番目の複合機能デバイスでn件の障害が検出されたと判断された場合に、障害をカウントするためのインデックスjが0に初期化され、S1405に移行する。S1405では、i番目の複合機能デバイスで発生した障害をカウントするためのインデックスjがi番目の複合機能デバイスで発生した障害の総数nを超えているかどうかの判断がおこなわれる。S1405において、インデックスjがi番目の複合機能デバイスで発生した障害の総数nを超えていない判断された場合にはS1406に移行し、それ以外の場合には、S1414に移行する。
S1406では、S1402で検出したi番目の複合機能デバイスにおけるj番目の障害についての解析が行われ、S1407に移行する。S1407では、S1406で解析したj番目の障害が管理プログラム300において管理者への通知対象に設定されているかどうかの判断がおこなわれる。S1407において通知対象と判断された場合には、S1408に移行し、それ以外の場合には、S1413に移行する。
S1408では、S1407においてj番目の障害が管理者への通知対象障害であると判断された場合、j番目の障害が図13に示すエスカレーション管理テーブル1300に登録されているかどうかを参照して、エスカレーション機能の対象になっているかどうかの判断がおこなわれる。本ステップにおいて、j番目の障害がエスカレーション機能の対象であると判断された場合には、S1409に移行し、それ以外の場合には、S1413に移行する。
S1409では、S1407、および、S1408において、j番目の障害が管理者への通知対象であり、エスカレーション機能の対象であると判断された場合、エスカレーション管理テーブル1300のエスカレーションフラグ1306の値を参照し、j番目の障害が既にエスカレーション通知されたものであるかどうかの判断がおこなわれる。S1409においてエスカレーション通知済みではないと判断された場合には、S1410に移行し、それ以外の場合には、S1413に移行する。
S1410では、S1408、および、S1409において、エスカレーション機能の対象であり、エスカレーション通知済みではないと判断された場合、現在時刻とエスカレーション管理テーブル1300のエスカレーション時刻1305と現在時刻を比較し、現在時刻がエスカレーション時刻1305を過ぎているかどうかの判断がおこなわれる。S1410において現在時刻がエスカレーション時刻1305を過ぎていると判断された場合にはS1411に移行し、それ以外の場合には、S1413に移行する。
S1411では、S1410において現在時刻がエスカレーション時刻1305を過ぎていると判断された場合に、エスカレーション通知の電子メール本文にj番目の障害に関する情報を追加し、S1412に移行する。
S1412では、j番目の障害に関する前回通知情報をエスカレーション通知の電子メール本文に追加し、S1413に移行する。なお、本実施例おいては、前回通知情報として、第1管理者の情報(名前、メールアドレスなど)、および、前回通知時刻の情報を含むものとする。
S1413では、i番目の複合機能デバイスにおいて検出されたn件の障害をカウントするためのインデックスjをインクリメントし、S1405に戻る。S1414では、S1403からS1413の処理を経て、i番目の複合機能デバイスに関してエスカレーション通知の電子メールにて第2管理者に通知すべき障害が発生しているかどうかの判断がおこなわれる。S1414において、通知すべき障害が発生していると判断された場合にはS1415に移行し、それ以外の場合には、S1416に移行する。S1415では、S1414においてi番目の複合機能デバイスについてエスカレーション通知として通知すべき障害が発生していると判断された場合に、予め設定された第2管理者に対してエスカレーション通知の電子メール(図15)を送信し、S1416に移行する。S1416では、管理対象の複合機能デバイスをカウントするためのインデックスiをインクリメントし、S1401に戻る。
以上の手順により実施例では、エスカレーション通知の対象となる障害に関しては、障害検出時、あるいは、前回エスカレーション時に通知が行われた第1管理者の情報、および、時刻を障害放置の警告とともに通知することが可能となる。
図15は、本実施例において、第2管理者宛てに通知される電子メールの内容1500の一例を示す図である。
1501は、本メール1500が複合機能デバイスにおいて発生した障害が一定期間放置されたために送信されたことを示すメッセージである。
1502は、前回通知情報である。前回通知情報1502は複合機能デバイスの障害検出時に通知した第1管理者に関する情報1503から構成される。1503は、複合機能デバイスの障害検出時に通知をおこなった第1管理者の情報であり、第1管理者の名前、Eメールアドレス、メッセージ通知用URLから構成される。
1504は、障害が発生している複合機能デバイスに関する情報(デバイス情報)である。なお、デバイス情報1504は、データテーブル600に登録された情報から構成される。
1505は、一定期間放置された複合機能デバイスの障害に関する詳細な内容を示す障害情報である。1506は管理プログラム300が複合機能デバイスの障害を検出した日時を示すエラー検出日時である。なお、本実施例においては、同時に検出した複数の障害(エラー1、エラー2)が放置されているものとする。
以上の説明したように、本実施例においてはエスカレーション通知のメッセージに、デバイス障害検出時にメールにより通知した第1管理者の情報を含めるようにした。これにより、通知されたメッセージが障害の検出を通知するものであるのか、あるいは、障害の放置を通知するものであるのかが容易に判別可能になるという効果がある。
なお、本実施例におけるエスカレーション通知は1度のみであるが、一定時間後、再度、任意の管理者にエスカレーション通知をおこなう形態であっても良い。