(57)【要約】【課題】既存のインフラ環境を利用して、人的な操作を削減でき、また同時に複数台サーバへの遠隔操作がメールにより簡単にできるサーバ監視システムおよびそのためのプログラムを提供する。【解決手段】複数台のサーバ（104,120,121,122）の全てからアクセス可能な、サーバの監視に必要な情報を格納する共通テーブル111を保持するメモリを備える。また複数台のサーバの全てに、共通テーブルを参照して自サーバを監視する自己監視手段（内部監視処理部）109を設ける。また複数台のサーバのうち１台をマスターサーバ104に設定し、該マスターサーバに他の全てのサーバを監視するサーバ監視手段（不図示）を設ける。自己監視手段とサーバ監視手段の監視機能を組み合わせることによって複数台のサーバの全てを総合的に監視する。またメールチェック処理部により電子メールでの遠隔操作を可能にしている。【選択図】図１
2010073117.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された複数台のサーバを監視するサーバ監視システムにおいて、
前記複数台のサーバの全てからアクセス可能な、サーバの監視に必要な情報を格納する共通テーブルを保持するメモリを備え、
前記複数台のサーバの全てに前記共通テーブルを参照して自サーバを監視する自己監視手段を設けるとともに、前記複数台のサーバのうち１台をマスターサーバとして設定し、該マスターサーバに前記共通テーブルを参照して他の全てのサーバを監視するサーバ監視手段を設け、
前記複数台のサーバの全てに設けられた自己監視手段による監視機能と前記マスターサーバに設けられたサーバ監視手段による監視機能を組み合わせることによって前記複数台のサーバの全てを総合的に監視するようにしたことを特徴とするサーバ監視システム。
【請求項２】
請求項１記載のサーバ監視システムにおいて、
前記複数台のサーバの各々は、前記自己監視手段により障害を検知した場合、前記共通テーブルに予め登録されている指示に従い自己回復処理を実行した上で、その状況および結果を前記共通テーブルに予め登録されている管理者端末の管理者宛メールアドレスへメール送信し、該メールを受け取った管理者端末から各サーバ側へ送られるコマンドを含むメールを受信してメールに含まれるコマンドを解読して処理するメールチェック処理手段を有し、管理者端末から遠隔操作を可能にしたことを特徴とするサーバ監視システム。
【請求項３】
請求項１記載のサーバ監視システムにおいて、
前記メールチェック処理手段は、件名または本文中に監視処理内容，パスワード，および１以上の監視対象サーバとコマンドが記述され、当該複数台のサーバに対して１つの共通のメールアドレス宛に送信されたメールを受信した場合に、該メールに記述された内容を前記共通テーブルに予め登録されているキーワードにより抽出して解読し、その解読結果に基づいて監視処理の実行あるいは不実行を決定するとともに、実行の場合に前記監視処理を実行する手段であることを特徴とするサーバ監視システム。
【請求項４】
請求項３記載のサーバ監視システムにおいて、
前記複数台のサーバは、割込み機能を有し、該割込み機能により前記メールからの指示を優先して実行することを特徴とするサーバ監視システム。
【請求項５】
請求項１から４のいずれかに記載のサーバ監視システムにおいて、
前記複数台のサーバのうち、前記マスターサーバ以外の1台のサーバをサブマスターサーバとして設定し、前記サブマスターサーバは、前記マスターサーバを監視し、前記マスターサーバに障害が発生した場合、前記マスターサーバに代わって他サーバの監視処理を継続する手段を有することを特徴とするサーバ監視システム。
【請求項６】
請求項１から５のいずれかに記載のサーバ監視システムにおいて、
前記自己監視手段による監視の結果、障害が検出された場合、障害状況あるいは障害内容により該障害を複数の障害レベルに対応させ、該障害レベルに優先度を設けて処理を実行する手段を有することを特徴とするサーバ監視システム。
【請求項７】
請求項６記載のサーバ監視システムにおいて、
前記監視の結果を送るメール送信先を前記障害レベルに応じて設定する手段を有することを特徴とするサーバ監視システム。
【請求項８】
コンピュータを、請求項１から７のいずれかに記載のサーバ監視システムにおける各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子メールを利用して複数サーバを総合的に監視する複数サーバ総合監視技術に係り、特に、既存のインフラ環境を利用し、ネットワークで接続された複数サーバの障害をリアルタイムに検知して早期に発見したり復旧させたりすることが可能で、またそれに伴うサーバ自己回復処理、および電子メールからの遠隔操作を複合的に組み合わせた総合的なサーバ監視システムおよびそのためのプログラムに関するものである。
【背景技術】
【０００２】
従来、複数サーバを運用するにあたり、休日や夜間などに障害が発生した場合の管理者への連絡や障害復旧作業は、人的によるマニュアル作業や特定の操作環境でのみ対応可能であったが、特定の操作環境が存在しない場合は、迅速な対応が不可能であった。
【０００３】
遠隔地にあるサーバの監視技術としては、例えば、特開２００２−２５９３１０号公報「サーバ管理システムおよびサーバ管理方法」（特許文献１）に記載されたものがある。
【０００４】
特許文献１に記載されたものは、遠隔地にあるサーバの障害の確認、障害の修復またはサーバの設定を携帯電話端末から遠隔操作で行うことが可能で、場所的および人的制約がなく、使い勝手ならびに利便性に優れたサーバ監視システムを提供することを目的としたものであり、そのために、遠隔地にある管理対象のサーバで障害が発生した場合、携帯電話端末に電子メールで障害メッセージを送信し、システム管理者が、受信した電子メールの障害メッセージの内容を確認し、システム運用として設定されたＵＲＬ（Uniform Resouce Locator）を入力することにより、ＨＴＭＬ形式の運用メニューを表示させ障害状況に応じて必要な機能を選択し、サーバの障害復旧を行うようにしたものである。
【０００５】
また、遠隔地にある操作対象装置を遠隔操作する技術として、特開２００４−１５１９３号公報「遠隔操作方法及び装置」（特許文献２）に記載されたものがある。
【０００６】
特許文献２に記載されたものは、簡便な操作により遠隔操作を行い、また、ネットワークに接続したコンピュータなどの環境にとらわれることなく、より簡易な環境で遠隔操作を行えるようにした遠隔操作方法を提供することを目的としたものであり、そのために、電子メールの件名および／または本文に記述される指示内容に基づき、遠隔対象装置を遠隔で操作するようにしたものである。電子メールは携帯電話などの簡易な手段で送受信することができるため、電子メールを利用すると簡易な遠隔操作が可能であり、また、ネットワークに接続したコンピュータなどの環境を要することなく簡易な環境で遠隔操作を行うことも可能である。
【０００７】
【特許文献１】特開２００２−２５９３１０号公報
【特許文献２】特開２００４−１５１９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来のサーバ管理システムでは、遠隔操作を前提とした障害復旧の方法がとられているため、必ず人的な操作を介することとなる。
【０００９】
上記特許文献１では、電子メールで受信した障害メッセージを、携帯端末により、ＨＴＭＬ形式の運用メニューで操作して障害復旧を図っているが、この方法は操作性に優れ、メニュー画面より複数台のサーバを遠隔操作することは可能だが、同時に複数台サーバへの遠隔操作をすることはできない。
【００１０】
また、ＨＴＭＬ形式の運用メニューの場合、携帯端末のキャリアや機器メーカーの仕様等により搭載されるブラウザソフトが異なることが考えられるため、既存の全ての携帯端末において対応可能かという課題が残る。
【００１１】
また、上記特許文献２に記載されたものは、あくまでも電子顕微鏡などの測定装置（操作対象装置）の遠隔操作に関するものであって、サーバに対する障害監視などを行うための遠隔操作とは全く技術思想が異なるもので、当然のことながら複数台サーバの遠隔操作についても全く考慮されていない。
【００１２】
そこで、本発明の目的は、上記従来技術の問題点を解消し、既存のインフラ環境を利用して、人的な操作を削減でき、また同時に複数台サーバへの遠隔操作がメールにより簡単にできるサーバ監視システムおよびそのためのプログラムを提供することである。
【課題を解決するための手段】
【００１３】
本発明は、上記目的を達成するために、次のような構成を有する。
ａ）本発明では、ネットワークに接続された複数台のサーバを監視するサーバ監視システムにおいて、複数台のサーバの全てからアクセス可能な、サーバの監視に必要な情報を格納する共通テーブルを保持するメモリを備える。また複数台のサーバの全てに、共通テーブルを参照して自サーバを監視する自己監視手段を設ける。また複数台のサーバのうち１台をマスターサーバとして設定し、該マスターサーバに共通テーブルを参照して他の全てのサーバを監視するサーバ監視手段を設ける。そして、自己監視手段とサーバ監視手段の監視機能を組み合わせることによって複数台のサーバの全てを総合的に監視する。
【００１４】
ｂ）また、複数台のサーバの各々は、自己監視手段により障害を検知した場合、共通テーブルに予め登録されている指示に従い自己回復処理を実行した上で、その状況および結果を共通テーブルに予め登録されている管理者端末の管理者宛メールアドレスへメール送信し、該メールを受け取った管理者端末から各サーバ側へ送られるコマンドを含むメールを受信してメールに含まれるコマンドを解読して処理するメールチェック処理手段を有し、管理者端末から遠隔操作を可能にしている。
【００１５】
ｃ）また、メールチェック処理手段は、件名または本文中に監視処理内容，パスワード，および１以上の監視対象サーバとコマンドが記述され、当該複数台のサーバに対して１つの共通のメールアドレス宛に送信されたメールを受信した場合に、該メールに記述された内容を前記共通テーブルに予め登録されているキーワードにより抽出して解読し、その解読結果に基づいて監視処理の実行あるいは不実行を決定するとともに、実行の場合に前記監視処理を実行する手段とある。
【００１６】
ｄ）また、複数台のサーバは、割込み機能を有し、該割込み機能により前記メールからの指示を優先して実行する。
ｅ）また、複数台のサーバのうち、マスターサーバ以外の1台のサーバをサブマスターサーバとして設定し、サブマスターサーバは、マスターサーバを監視し、マスターサーバに障害が発生した場合、マスターサーバに代わって他サーバの監視処理を継続する手段を有する。
【００１７】
ｆ）また、自己監視手段による監視の結果、障害が検出された場合、障害状況あるいは障害内容により該障害を複数の障害レベルに対応させ、該障害レベルに優先度を設けて処理を実行する。
ｇ）また、監視の結果を送るメール送信先を障害レベルに応じて設定する手段を設ける。
ｈ）本発明に係るプログラムは、コンピュータを、上記サーバ監視システムにおける各手段として機能させるためのプログラムである。
【００１８】
本発明では、上述したように、監視対象となるサーバ自身に自己監視手段を組込み、障害発生時にその障害レベルにより、登録された設定に従い自動的に自己修復処理を行うことができ、人的な操作を低減させることが可能である。
【００１９】
また、メールでの操作となるため、メールを送信できる電子メールソフトが搭載されている機器であれば、どこからでも同じ操作が可能となり、メール本文にサーバ毎の指示を記述することで、同時に複数台のサーバに対し異なる遠隔操作を行うことも可能となる。
【発明の効果】
【００２０】
本発明を適用すると、複数台のサーバを総合的に監視できるとともに、サーバで障害が発生した場合、障害レベルに応じサーバ自身で自己回復処理を行うことで、人的な操作の時間を低減させることができ、また操作ミスを防ぐこともできる。
【００２１】
また、サーバ自身が自己監視できない状態となった場合、マスターサーバのサーバ監視手段により、そのサーバの状態を確認し、管理者へ障害通知することで早期対応を行うことができる。
【００２２】
また、管理者がサーバからの障害通知メールを受信した場合、メールを送信できる機能を持つ端末であれば、どこからでもサーバに対し電子メールにより遠隔操作を行うことができ、管理者側からも迅速な対応が行えるため、早期復旧を図ることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の一実施例を、図面により詳細に説明する。
図１は、本発明に係る複数サーバを総合的に監視する複数サーバ総合監視システム（サーバ監視システム）の一実施例を示す構成図である。本実施例に係るサーバ監視システムは電子メールによる遠隔操作が可能な構成を有していて、電子メールを送受信可能な携帯電話端末（通信機器）１０１と、ネットワーク（インターネットなどの通信回線）１０２に接続された、すなわち遠隔地に設置された複数サーバ（マスターサーバ１０４、サーバＡ（サブマスター）１２０、サーバＢ １２１、サーバＣ １２２）から構成されている。
【００２４】
複数サーバのうちの一つをマスターサーバ１０４として設定し、他のサーバを監視する機能を持つサーバ監視手段（不図示）を具備させる。また、複数サーバのうちの一つをサーバＡ（サブマスター） １２０として設定し、マスターサーバ１０４と同様な機能を持たせる。また、サーバＡ（サブマスター） １２０は、マスターサーバ１０４の状態を確認するための手段（不図示）を有し、該手段によってマスターサーバ１０４に障害が発生したことが確認された場合に、マスターサーバ１０４に代わって他サーバの監視を継続して行う手段（不図示）を有する。
【００２５】
複数サーバ（マスターサーバ１０４、サーバＡ（サブマスター）１２０、サーバＢ １２１、サーバＣ １２２）の各々は、メールサーバ１０３から該当メールを抽出して各種チェックを行うメールチェック処理部１０５と、サーバ内で設定されている定期処理の実行および自己監視、障害を検知した場合に、自己回復処理を行う内部監視処理部１０９を備えている（図１では、マスターサーバ１０４以外のサーバにおけるこれらの処理部は省略してある）。マスターサーバ１０４は、さらに図示するような共通テーブル１１１も備えている（後述するようにサーバの外部に備えるようにしてもよい）。共通テーブル１１１は、全てのサーバからアクセス可能になっている。
【００２６】
メールチェック処理部１０５は、メール差出人情報の権限チェックを行う処理権限チェック処理部１０６と、該当サーバや発行コマンドのチェックを行うサーバ・コマンドチェック処理部１０７と、メール操作指示に従い、サーバ側で登録されたキーワードを解読しサーバ側で自動処理を実行する監視処理部１０８などの処理部を備えている。
【００２７】
なお、監視処理部１０８と内部監視処理部１０９は、登録されている管理者や利用者に対して障害等の情報を発信するためのメール送信処理部１１０を備えている。
【００２８】
共通テーブル１１１は、後述するように、メール確認テーブル１１２（図１０参照）、メール処理状況テーブル１１３（図１２参照）、権限管理テーブル１１４（図９参照）、サーバ管理テーブル１１５（図８参照）、監視定義テーブル１１６（図１１参照）を備えている。
【００２９】
本発明に係るサーバ監視システムにおける各サーバは、図示しないＣＰＵ、メモリ、各種レジスタ、外部記憶装置などを備えた通常のコンピュータシステム構成を有しており、上記の各処理部は当該処理を実現するためのプログラムを外部記憶装置からメモリに展開しＣＰＵによって実行する処理部であり、共通テーブル１１１は各サーバにおける各処理部からアクセスされて利用される共通の情報を格納するテーブルであり、図示しないメモリあるいは外部記憶装置に格納される。共通テーブル１１１は、図１に示すように、マスターサーバ１０４にあってもよいが、各サーバからアクセス可能であれば、外部に設置されていてもよい。
【００３０】
次に、共通テーブル１１１（メール確認テーブル１１２、メール処理状況テーブル１１３、権限管理テーブル１１４、サーバ管理テーブル１１５、監視定義テーブル１１６）の登録内容について説明する。
【００３１】
メール確認テーブル１１２は、図１０（ａ）に示すように、自動割当された番号「Ｎｏ．」毎に、本システムでメール監視対象となるサーバ件名を設定するための「件名」、・・・などの項目名を有する。
同図（ｂ）はその具体的なデータ例を示す。
【００３２】
メール処理状況テーブル１１３は、図１２（ａ）に示すように、採番された番号「Ｎｏ．」毎に、メール件名の情報を設定するための「メール件名」（読み込んだメール情報を登録）、メール件名に記載されているパスワードを設定するための「パスワード」、監視対象となるサーバ識別番号を設定するための「サーバ識別番号」（サーバ識別番号１がサーバＡ、サーバ識別番号２がサーバＢ、・・に対応する識別番号とする）、メール本文の情報を設定するための「メール本文」、差出人名のメールアドレス情報を設定するための「差出人」、メール受信日時を設定するための「受信日時」、読み込んだメールの処理状況を設定するための「更新ＦＬＧ（０：未処理、１：処理済）」、処理権限チェック処理での処理結果情報を設定するための「処理結果１（０：アンマッチ、１：マッチ）」、サーバ・コマンドチェック処理での処理結果を設定するための「処理結果２（０：アンマッチ、１：マッチ）」、・・・などの項目名を有する。
同図（ｂ）はその具体的なデータ例を示す。
【００３３】
権限管理テーブル１１４は、図９（ａ）に示すように、自動割当された番号「Ｎｏ．」毎に、本システムで処理権限を与えるメールアドレスを設定するための「メールアドレス」、パスワードを設定するための「パスワード」、・・・などの項目名を有する。
同図（ｂ）はその具体的なデータ例を示す。
【００３４】
サーバ管理テーブル１１５は、図８（ａ）に示すように、自動割当された番号「Ｎｏ．」毎に、本システムで監視対象となるサーバ名情報を設定するための「サーバ」、本システムでコマンド発行可能なコマンドを設定するための「コマンド名」、処理を実行する処理名を設定するために「処理実行名」、マスターサーバ情報を設定するための「サーバ管理ＦＬＧ（１：マスターサーバ、２：サブマスターサーバ）」、管理者１のメールアドレスを設定するための「管理者メールアドレス１」、管理者２のメールアドレスを設定するための「管理者メールアドレス２」、・・・送信するメールアドレス１を設定するための「送信先メールアドレス１」、送信するメールアドレス２を設定するための「送信先メールアドレス２」、・・・などの項目名を有する。
同図（ｂ）はその具体的なデータ例を示す。
【００３５】
監視定義テーブル１１６は、図１１（ａ）に示すように、自動割当された番号「Ｎｏ．」毎に、本システムで監視対象となるサーバ名情報を設定するための「サーバ」、サーバのＩＰアドレスを設定するための「ＩＰアドレス」、割込ＦＬＧ（ＦＬＧ０：自動処理可能、ＦＬＧ１：自動処理不可）を設定するための「割込ＦＬＧ」、サーバ名称情報を設定するための「サーバ名称」、・・・などの項目名を有する。
同図（ｂ）はその具体的なデータ例を示す。
【００３６】
図２は、本発明に係る複数サーバ総合監視システムのメールチェック処理部１０５についての仕組みを流れ図で示したものである。
メールチェック処理部１０５は、電子メールにて送信されてきたメール情報について該当メール情報をメールサーバ１０３より抽出し、各処理部（処理権限チェック処理部１０６、サーバ・コマンドチェック処理部１０７、監視処理部１０８、内部監視処理部１０９、送信処理部１１０）の処理を行うものである。
【００３７】
次に、図２に沿って、メールチェック処理部１０５における処理の流れを説明する。
ステップＳ２０１において、メールチェック処理部１０５とメールサーバ１０３の接続を行い、ステップＳ２０２において、メール確認テーブル１１２を読込み、ステップＳ２０３において、メール確認テーブル１１２に登録された案件か判定を行う。既に登録済の場合（ステップＳ２０３：Ｙ）、処理中または処理済案件であるため、フローを終了する。登録済みでなければ（ステップＳ２０３：Ｎ）、ステップＳ２０４において、メール本文を読込み、対象サーバ情報を抽出する。
ステップＳ２０５において、送信されてきた電子メールが自サーバ宛メールか否かの判定を行う。
【００３８】
自サーバ宛メールが存在した場合は（ステップＳ２０５：Ｙ）、ステップＳ２０６で、メール処理状況テーブル１１３へ各種情報を格納する。このとき、ユニークな番号を採番し、「Ｎｏ．」へ格納する。
一方、自サーバ宛メールでない場合は（ステップＳ２０５：Ｎ）、フローを終了する。
【００３９】
次に、受信したメール内容のチェックを実施するために、処理権限チェック処理ステップＳ２０７（図１の処理権限チェック処理部１０６の処理）へ制御を移し（引数：Ｎｏ．）、処理権限のチェック処理を行う。処理権限チェック処理ステップＳ２０７についての詳細は後述する（図３の説明参照）。
【００４０】
処理権限チェック処理２０７を実行した後、ステップＳ２０８において、処理権限チェック処理結果に基づいて送信者の権限で問題ないか否かの判定を行う。
【００４１】
送信者の権限で問題ない場合は（ステップＳ２０８：Ｙ）、次に、該当サーバおよびコマンドの存在有無を行うため、サーバ・コマンドチェック処理２０９（サーバ・コマンドチェック処理部１０７の処理）へ制御を移し（引数：Ｎｏ．）、サーバ・コマンドのチェック処理を行う。サーバ・コマンドのチェック処理２０７についての詳細は後述する（図４の説明参照）。
一方、送信者の権限で問題がある場合は（ステップＳ２０８：Ｎ）、フローを終了する。
【００４２】
次に、ステップＳ２１０において、コマンド実行に問題ないか判定を行う。コマンド実行に問題ない場合は（ステップＳ２１０）、サーバでの監視処理を行うために、監視処理ステップＳ２１１（監視処理部１０８の処理）へ制御を移す。監視処理ステップＳ２１１についての詳細は後述する（図５の説明参照）。
一方、コマンド実行に問題がある場合は（ステップＳ２１０：Ｎ）、フローを終了する。
【００４３】
図３は、本複数サーバ総合監視システムの処理権限チェック処理部１０６についての仕組みを流れ図で示したものである（図２のステップＳ２０７の詳細な処理）。
ステップＳ３０１において、メールチェック処理部１０５で格納した共通テーブルのメール処理状況テーブル１１３の差出人情報を抽出する。
ステップＳ３０２において、抽出した差出人情報と権限管理テーブル１１４のメールアドレス情報の検索を行う。
【００４４】
ステップＳ３０３において、該当データが存在したかどうかの判定を行う。
該当データが存在した場合は（ステップＳ３０３：Ｙ）、ステップＳ３０４で、メール処理状況テーブル１１３のパスワード情報を取得する。
【００４５】
一方、不一致（データが存在しない）場合は（ステップＳ３０３：Ｎ）、ステップＳ３０８にてメール処理状況テーブル１１３の更新ＦＬＧに“１”、処理結果１に“０”をセットして処理を終了する。
【００４６】
次のステップＳ３０５において、取得したパスワード情報と権限管理テーブル１１３のパスワード情報を比較し、ステップＳ３０６において、該当データが存在したかどうかの判定を行う。
【００４７】
当該データが存在（一致）した場合は（ステップＳ３０６：Ｙ）、ステップＳ３０７でメール処理状況テーブル１１３の更新ＦＬＧに“１”、処理結果１に“１”をセットして、処理を終了する。
一方、当該データが存在しない（不一致）の場合は（ステップＳ３０６：Ｎ）、ステップＳ３０８でメール処理状況テーブル１１３の更新ＦＬＧに“１”、処理結果１に“０”をセットして、処理を終了する。
【００４８】
図４は、本複数サーバ総合監視システムのサーバ・コマンドチェック処理部１０７についての仕組みを流れ図で示したものである（図２のステップＳ２０９の詳細な処理）。ここでは電子メールにて送信されてきたメール発信者情報、およびサーバ制御コマンドの妥当チェックを目的としている。
【００４９】
ステップＳ４０１において、処理権限チェック処理部１０６で処理結果として格納したメール処理状況テーブル１１３より処理結果１情報を抽出し、ステップＳ４０２において、処理結果１情報が“１”かどうかの判定を行う。
【００５０】
処理結果１情報が“１”の場合は（ステップＳ４０２：Ｙ）、ステップＳ４０３で、メール処理状況テーブル１１３のサーバ情報を抽出する。
一方、処理結果１情報が“１”以外の場合は（ステップＳ４０２：Ｎ）、処理を終了する。
【００５１】
次のステップＳ４０４において、監視定義テーブル１１６の監視サーバ情報を取得し、ステップＳ４０５で、取得したメール処理状況テーブル１１３のサーバ情報と監視定義テーブル１１６の監視サーバ情報を比較し、ステップＳ４０６において、取得したメール処理状況テーブル１１３のサーバ情報と監視定義テーブル１１６の監視サーバ情報が一致したかどうかの判定を行う。
【００５２】
一致した場合は（ステップＳ４０６：Ｙ）、ステップＳ４０７でメール処理状況テーブル１１３のメール本文情報を取得する。
一方、不一致の場合は（ステップＳ４０６：Ｎ）、ステップＳ４１１でメール処理状況テーブル１１３の処理結果２に“０”をセットして、処理を終了する。
【００５３】
ステップＳ４０８において、メール処理状況テーブル１１３のメール本文情報とサーバ管理テーブル１１５のサーバとコマンド名情報を比較し、ステップＳ４０９において、一致したかどうかの判定を行う。
【００５４】
一致した場合は（ステップＳ４０９：Ｙ）、ステップＳ４１０でメール処理状況テーブル１１３の処理結果２に“１”をセットして、処理を終了する。
一方、不一致の場合は（ステップＳ４０９：Ｎ）、ステップＳ４１１でメール処理状況テーブル１１３の処理結果２に“０”をセットして、処理を終了する。
【００５５】
図５は、本複数サーバ総合監視システムの監視処理部１０８についての仕組みを流れ図で示したものである（図２のステップＳ２１１の詳細な処理）。
【００５６】
ステップＳ５０１において、監視定義テーブル１１６の割込ＦＬＧ情報を抽出し、ステップＳ５０２において、抽出した割込ＦＬＧ情報が“１”（自動処理不可）かどうかの判定を行う。
【００５７】
“１”以外の場合は（ステップＳ５０２：Ｎ）、ステップＳ５０３で、メール処理状況テーブル１１３の処理結果１と処理結果２の情報を抽出し、“１”の場合は（ステップＳ５０２：Ｙ）、処理を終了する。
【００５８】
ステップＳ５０４において、処理結果１が“０”かどうかの判定を行い、処理結果１が“０”以外の場合は（ステップＳ５０４：Ｎ）、ステップＳ５０５に制御を移す。一方、“０”の場合は（ステップＳ５０４：Ｙ）、ステップＳ５１２で監視定義テーブル１１６の割込ＦＬＧに“０”をセットする。
【００５９】
ステップＳ５０５において、処理結果２が“０”かどうかの判定を行い、処理結果２が“０”以外の場合は（ステップＳ５０５：Ｎ）、ステップＳ５０６に制御を移す。一方、“０”の場合は（ステップＳ５０５：Ｙ）、ステップＳ５１２で監視定義テーブル１１６の割込ＦＬＧ：０をセットする。
【００６０】
ステップＳ５０６において、監視定義テーブル１１６の割込ＦＬＧに“１”をセットする。次のステップＳ５０７において、サーバでコマンドを実行する。
【００６１】
次に、ステップＳ５０８において、処理が正常に完了したかのチェックを行い、処理結果が正常でなければ（異常；ステップＳ５０８：Ｎ）、ステップＳ５０９においてメール処理状況テーブル１１３の更新ＦＬＧを“２”にセットする。なお、障害状況や障害内容により障害を複数の障害レベルに対応させ、該障害レベルに優先度を設けて処理を行うこともできる。例えば、障害レベルに応じてセットする値を“２”以上の複数の値に設定し、障害レベルに応じた処理（障害レベルに応じて各監視対象サーバが管理者宛に通知するメールを自動的に振り分けるなど)を行うようにすることもできる。なお、処理結果が正常の場合(ステップＳ５０８：Ｙ)、ステップＳ５０９をスキップする。
【００６２】
ステップＳ５１０において、コマンド実行結果を処理結果情報（ログファイル）１１７へ格納し、ステップＳ５１１において、監視定義テーブル１１６の割込ＦＬＧに“０”をセットする。
その後、ステップＳ５１３のメール送信処理（引数：１、Ｎｏ．）に制御を移し、処理を終了する。
【００６３】
図６は、本複数サーバ総合監視システムの内部監視処理部１０９についての仕組みを流れ図で示したものである。
ステップＳ６０１において、サーバ管理テーブル１１５のサーバ管理ＦＬＧ情報を抽出する。
ステップＳ６０２において、各サーバ側で内部処理を行う監視処理の全てが完了するまで繰り返し実行する。
ステップＳ６０３において、サーバで設定している内部処理コマンドを実行する。
【００６４】
この時、マスターサーバ１０４は、サーバ設定情報（ファイル）１１８に基づき、複数サーバで構成される監視対象サーバをチェックするコマンドを実行する。またサブマスターサーバ（サーバＡ）も同様に、サーバ設定情報（ファイル）１１８の情報に基づき、マスターサーバ１０４をチェックするコマンドを実行する。
【００６５】
ステップＳ６０４において、実行結果を処理結果情報（ログ）１１７に出力する。
ステップＳ６０５において、全ての監視処理が完了した後に、繰返し処理を終了する。
【００６６】
ステップＳ６０６において、処理結果の判定を行い、該処理結果の判定の結果、異常終了した場合は、ステップＳ６０７のメール送信処理（引数：２）に制御を移し、処理を終了し、一方、正常終了した場合は、そのまま処理を終了する。
【００６７】
図７は、本複数サーバ総合監視システムのメール送信処理部１１０についての仕組みを流れ図で示したものである。
【００６８】
ステップＳ７０１において、内部監視処理からの結果情報かどうかの判定を行う。引数が“１”の場合はステップＳ７０２に制御を移す。一方、引数が“２”の場合は、ステップＳ７０７でサーバ管理テーブル１１５から返信先メールアドレスを取得し、メール返信設定情報７０９（メール返信設定情報ファイル１１９）をメール本文に設定し、ステップＳ７０８で関係者へメール送信する。
【００６９】
ステップＳ７０２において、メール処理状況テーブル１１３を読込む。
ステップＳ７０３において、サーバに異常があるかの判定を行う。
サーバに異常があった場合は（ステップＳ７０３：Ｙ）、ステップＳ７０４に制御を移す。
【００７０】
一方、サーバに異常がない場合は（ステップＳ７０３：Ｎ）、ステップＳ７０６でメール返信設定情報（図１のメール返信設定情報ファイル１１９）をメール本文に設定し、送信者へメール送信する。
ステップＳ７０４において、サーバ管理テーブルを読込む。
ステップＳ７０５において、メール返信設定情報をメール本文に設定し、送信者と関係者へメール送信する。
【００７１】
次に、本発明に係る処理の流れの理解を助けるために、実例を用いて説明する。
図１３は、本発明における監視処理を説明するための受信メールの内容例を示す図である。
【００７２】
本発明に利用されるメールは、「Ｄａｔｅ（受信日付）」、「Ｆｒｏｍ（送信元メールアドレス）」、「Ｔｏ（受信元（管理用）メールアドレス）」、「Ｓｕｂｊｅｃｔ（件名：処理内容＃パスワード）」、「Ｂｏｄｙ（本文：対象サーバ：コマンド（複数指定可能））」を含んでおり、本例では、それぞれ、「２００８／９／１５  １１：４５」、「ＢＢＢＢ＠××．ｎｅ．ｊｐ」、「ｓｙｓｔｅｍ＠ｏｆｆｉｃｅ．ｃｏｍ」、「自動監視依頼１＃２３４５６」、「Ａ：ｒｅｂ」の場合である。
【００７３】
図１４−Ａ〜図１４−Ｅは、図１３のメールを受信した場合の、図２〜５．７のフローチャートの各ステップにおける具体的な処理例を示す図である。
【００７４】
以下、自サーバがサーバＡ（サブマスターサーバ）１２０の場合を考える。
まず、図１４−Ａを用いて説明する。
ステップＳ２０１において、メールサーバ１０３に接続し、図１３に示した内容を有するメールを受信する。
ステップＳ２０２において、メール確認テーブル１１２を読み込む。
ステップＳ２０３において、メールの件名に記された処理内容（自動監視依頼１）を読み込み、メール確認テーブル１１２に登録された処理かをチェックする（登録済の場合は処理を終了）。
【００７５】
ステップＳ２０４において、メール本文を読み込む（対象サーバを取得）。
ステップＳ２０５において、自サーバ（サーバＡ）宛メールか判定する（自サーバ宛てでない場合は処理を終了）。
【００７６】
本例では対象サーバがＡであるので、次のステップＳ２０６において、メール処理状況テーブル１１３に、各種情報を格納する。このとき、番号を採番（ユニークな番号）し、「Ｎｏ．」へ格納する。
次に、ステップＳ２０７において、処理権限チェック処理（図３のサブルーチン処理ステップＳ３０１〜）へ制御を移す。
【００７７】
次に、図１４−Ａに移り、ステップＳ３０１において、「Ｎｏ．」をキーとして、メール処理状況テーブル１１３の差出人情報（ＢＢＢＢ＠＠××．ｎｅ．ｊｐ）を取得する。
ステップＳ３０２において、上記差出人情報と権限管理テーブル１１４に登録されたメールアドレスとを比較する。
【００７８】
ステップＳ３０３において、権限管理テーブル１１４に登録されたメールアドレスと一致した場合、ステップＳ３０４に処理を移す。このとき、権限管理テーブル１１４の一致したメールアドレスのパスワードを取得する。一致しなかった場合は、ステップＳ３０８に処理を移す。
【００７９】
ステップＳ３０４において、メール処理状況テーブル１１３のパスワード（２３４５６）を取得し、ステップＳ３０５において、権限管理テーブルのパスワードと送信されてきたパスワードを比較し、ステップＳ３０６において、パスワードが一致した場合、ステップＳ３０７に処理を移す（ＢＢＢＢ＠××．ｎｅ．ｊｐのパスワードが２３４５６であれば処理を続行）。一致しなかった場合は、ステップＳ３０８に処理を移す。
【００８０】
ステップＳ３０７では、メール処理状況テーブル１１３の更新フラグ（ＦＬＧ）を“１”に変更し、処理結果１に“１”をセットする。
一方、ステップＳ３０８では、メール処理状況テーブル１１３の更新フラグ（ＦＬＧ）を“１”に変更し、処理結果１に“０”をセットする（本具体例の場合はステップＳ３０８の処理は行わない）。
【００８１】
処理権限チェック処理を終了したら、ステップＳ２０８において、「Ｎｏ．」をキーとして、メール処理状況テーブル１１３の処理結果１を取得し、送信者の権限で問題がない場合（処理結果１が“１”の場合）、ステップＳ２０９へ処理を移し、送信者の権限で問題がある場合（処理結果１が“０”の場合）は処理を終了する。本例の場合は、ステップＳ２０９に移る。
【００８２】
ステップＳ２０９において、サーバ・コマンドチェック処理（図４のサブルーチンのステップＳ４０１）へ制御を移す（引数：Ｎｏ．）。
【００８３】
次に、図１４−Ｃに移り、ステップＳ４０１において、「Ｎｏ．」をキーとして、メール処理状況テーブル１１３の処理結果１（“１”）を取得する。
ステップＳ４０２において、処理結果１が“１”（権限に問題なし）の場合、ステップＳ４０３へ処理を移す。処理結果１が“０”の場合は処理を終了する。本例の場合、ステップＳ４０３に処理を移すが、前処理（ステップＳ２０８）で権限チェックを行っているので、ステップＳ４０１およびステップＳ４０２の処理は必ずしも必要としない。
【００８４】
ステップＳ４０３において、「Ｎｏ．」をキーとしてメール処理状況テーブル１１３のサーバ識別番号“１”（サーバ“Ａ”に相当）を取得する。
ステップＳ４０４において、監視定義テーブル１１６の監視サーバ情報を読み込み、ステップＳ４０５において、上記サーバ“Ａ”と監視サーバ情報に登録されている監視対象のサーバ情報とを比較し、ステップＳ４０６において、サーバ“Ａ”が一致した場合、ステップＳ４０７に処理を移し、一致しなかった場合、ステップＳ４１１に処理を移す。本例の場合、一致するのでステップＳ４０７に処理を移す。
【００８５】
ステップＳ４０７において、「Ｎｏ．」をキーとして、メール処理状況テーブル１１３のメール本文情報（“ｒｅｂ”）を取得し、ステップＳ４０８において、サーバ管理テーブル１１５をサーバＺ（“Ａ”）とコマンド名（“ｒｅｂ”）で読み込み、比較する。
【００８６】
ステップＳ４０９において、上記比較の結果、一致するものがある場合はステップＳ４１０に処理を移し、一致したものがなかった場合はステップＳ４１１に処理を移す。
【００８７】
ステップＳ４１０では、メール処理状況テーブル１１３の処理結果２に“１”をセットし、ステップＳ４１１では、メール処理状況テーブル１１３の処理結果２に“０”をセットする。本例の場合は、ステップＳ４１１の処理は行わない。
【００８８】
以上のサーバ・コマンドチェック処理が終わったら、次に、ステップＳ２１０において、「Ｎｏ．」をキーとして、メール処理状況テーブル１１３の処理結果２を取得し、コマンドチェックで問題ない場合（処理結果２が“１”の場合）、ステップＳ２１１に処理を移す。処理結果２が“０”の場合は、処理を終了する。本例の場合は、ステップＳ２１１に処理を移す。
【００８９】
次に、図１４−Ｄに移り、ステップＳ５０１において、サーバ識別番号１（”Ａ”）をキーとして、監視定義テーブル１１６の割込ＦＬＧ情報を取得する。なお、本図以降ではサーバ識別番号をサーバ識別子と記している。サーバ識別番号１がサーバＡ、サーバ識別番号２がサーバＢ、・・に対応する識別番号とする。
【００９０】
ステップＳ５０２において、割込ＦＬＧが”１“か否かをチェックし、割込ＦＬＧが”１“の場合（他で処理中のため自動処理を不可にした場合）、処理を終了する。割込ＦＬＧが”０“の場合、ステップＳ５０３に処理を移す。本例の場合は、割込ＦＬＧが”０“であるからステップＳ５０３へ処理を移す。
【００９１】
ステップＳ５０３において、「Ｎｏ．」をキーとしてメール処理状況テーブル１１３の処理結果１“１”と処理結果２“１”を取得し、ステップＳ５０４において、処理結果１が“０”か否かをチェックし、処理結果１が“０”（処理終了）の場合、ステップＳ５１２に処理を移し、処理結果１が“１”（処理継続）の場合、ステップＳ５０５に処理を移す。本例の場合、ステップＳ５０５に処理を移す。
【００９２】
ステップＳ５０５において、処理結果２が“０”か否かをチェックし、処理結果２が“０”（処理終了）の場合、ステップＳ５１２に処理を移し、処理結果１が“１”（処理継続）の場合、ステップＳ５０６に処理を移す。本例の場合、ステップＳ５０６に処理を移す。
【００９３】
ステップＳ５０６において、監視定義テーブル１１６の割込ＦＬＧに“１”をセットする。
【００９４】
ステップＳ５０７において、「Ｎｏ．」をキーとしてメール処理状況テーブル１１３のメール本文（“ｒｅｂ”）を取得し、該コマンドを実行する。ステップＳ５０８において、処理の完了をチェックし、処理結果が正常の場合、ステップＳ５１０に処理を移し、処理結果が正常終了でない場合（異常の場合）、ステップＳ５０９に処理を移す。本例の場合、異常を検出したものとする。
【００９５】
ステップＳ５０９において、「Ｎｏ．」をキーとしてメール処理状況テーブル１１３の更新ＦＬＧに“２”をセットする。
【００９６】
次に、ステップＳ５１０において、処理結果を処理結果情報として処理結果情報（ログ）１１７に格納し、ステップＳ５１１において、監視定義テーブル１１６の割込ＦＬＧに“０”をセットして排他制御の解除を行う。
【００９７】
ステップＳ５１２では、監視定義テーブル１１６の割込ＦＬＧに“０”をセットする（何らかの影響により、排他制御が解除されていない可能性があるため、ここで再度排他制御の解除処理を行う。ステップＳ５１１に制御を移すようにすればステップＳ５１２は不要）。次に、ステップＳ５１３のメール送信処理（図７のサブルーチン処理７０１）へ制御を移す（引数：１、Ｎｏ．）。
【００９８】
次に、図１４−Ｅに移り、ステップＳ７０１において、引数（“１”または“２”）により監視処理かを確認する。引数が“１”の場合（監視処理）、ステップＳ７０２に処理を移し、引数が“２”の場合（内部処理）、ステップＳ７０７に処理を移す。本例の場合は、ステップＳ７０２に処理を移す。
【００９９】
ステップＳ７０２において、「Ｎｏ．」をキーとしてメール処理状況テーブル１１３の更新ＦＬＧ（“２”）を取得し（サーバ識別番号とコマンド名も合わせて取得）、ステップＳ７０３において、サーバに異常があるか否かをチェックする。更新ＦＬＧが“１”の場合（異常なし）、ステップＳ７０６に処理を移し、更新ＦＬＧが“２”の場合（異常あり）、ステップＳ７０４に処理を移す。本例の場合、ステップＳ７０４に処理を移す。
【０１００】
ステップＳ７０４において、サーバ識別子（“Ａ”）とコマンド名（“ｒｅｂ”）をキーとして、サーバ管理テーブル１１５を読み込み、送信先メールアドレス（１＝３に設定されている全てのアドレス）を取得する。本例の場合、ＡＡ＠××．ｎｅ．ｊｐ、ＡＡ１＠××．ｎｅ．ｊｐ、ＡＡ２＠××．ｎｅ．ｊｐを取得する。
【０１０１】
ステップＳ７０５において、メール返信設定情報ファイル７０９（図１のメール返信設定情報ファイル１１９）を元に、返信メールの本文を生成し、送信者（メールを送信してきた人（ＢＢＢ＠××．ｎｅ．ｊｐ）と関係者（ステップＳ７０４で取得した返信先メールアドレス）へメールを送信する。
【０１０２】
ステップＳ７０６において、メール返信設定情報ファイル７０９（図１のメール返信設定情報ファイル１１９）を元に、返信メールの本文を生成し、送信者（メールを送信してきた人（ＢＢＢ＠××．ｎｅ．ｊｐ）へメールを送信する。
【０１０３】
ステップＳ７０７において、サーバ識別子（“Ａ”）とコマンド名（“ｒｅｂ”）をキーにして、サーバ管理テーブル１１５を読み込み、送信先メールアドレス（１＝３に設定されている全てのアドレス）を取得する。本例の場合、ＡＡ＠××．ｎｅ．ｊｐ、ＡＡ１＠××．ｎｅ．ｊｐ、ＡＡ２＠××．ｎｅ．ｊｐを取得する。
【０１０４】
ステップＳ７０８において、メール返信設定情報ファイル７０９（メール返信設定情報ファイル１１９）を元に、関係者（ステップＳ７０７で取得した返信先メールアドレス）へメールを送信する。
【０１０５】
なお、図１に示した本発明に係るサーバ監視システムにおける各処理部（メールチェック処理部、処理権限チェック処理部、サーバ・コマンドチェック処理部、監視処理部、内部監視処理部、メール送信処理部など）と図１に関連して説明した手段（不図示のサーバ監視手段など）は、各サーバの構成要素であるＣＰＵが各手段に対応するプログラムを実行することにより実現されるものであり（図２〜図７参照）、これらのプログラムはＣＤ−ＲＯＭ、ＤＶＤ、ＵＳＢなどの記録媒体やインターネットなどを介して市場に流通させることができる。
【図面の簡単な説明】
【０１０６】
【図１】本発明の複数サーバを総合的に監視する複数サーバ総合監視システム（サーバ監視システム）の本発明に係る構成の一実施例を示す構成図である。
【図２】図１におけるサーバ監視システムの本発明に係るメールチェック処理部の動作例を示すフローチャートである。
【図３】図１におけるサーバ監視システムの本発明に係る処理権限チェック処理部の動作例を示すフローチャートである。
【図４】図１におけるサーバ監視システムの本発明に係るサーバ・コマンド処理部の動作例を示すフローチャートである。
【図５】図１におけるサーバ監視システムの本発明に係る監視処理部の動作例を示すフローチャートである。
【図６】図１におけるサーバ監視システムの本発明に係る内部監視処理部の動作例を示すフローチャートである。
【図７】図１におけるサーバ監視システムの本発明に係るメール送信処理部の動作例を示すフローチャートである。
【図８】図１における本発明に係るサーバ管理テーブル（発行コマンド・管理者宛先対応テーブル）のレコード様式を示すものである。
【図９】図１における本発明に係る権限管理テーブルのレコード様式を示すものである。
【図１０】図１における本発明に係るメール確認テーブルのレコード様式を示すものである。
【図１１】図１における本発明に係る監視定義テーブルのレコード様式を示すものである。
【図１２】図１における本発明に係るメール処理状況テーブルのレコード様式を示すものである。
【図１３】本発明における監視処理を説明するための受信メールの内容例を示す図である。
【図１４−Ａ】図１３のメールを受信した場合の本発明における監視処理の各ステップにおける具体的な処理例を示す図である（その１）。
【図１４−Ｂ】図１３のメールを受信した場合の本発明における監視処理の各ステップにおける具体的な処理例を示す図である（その２）。
【図１４−Ｃ】図１３のメールを受信した場合の本発明における監視処理の各ステップにおける具体的な処理例を示す図である（その３）。
【図１４−Ｄ】図１３のメールを受信した場合の本発明における監視処理の各ステップにおける具体的な処理例を示す図である（その４）。
【図１４−Ｅ】図１３のメールを受信した場合の本発明における監視処理の各ステップにおける具体的な処理例を示す図である（その５）。
【符号の説明】
【０１０７】
１０１：通信機器（携帯電話端末など）
１０２：通信回線（インターネットなどのネットワーク）
１０３：メールサーバ
１０４：マスターサーバ
１０５：メールチェック処理部
１０６：処理権限チェック処理部
１０７：サーバ・コマンドチェック処理
１０８：監視処理部
１０９：内部監視処理部
１１０：メール送信処理部
１１１：共通テーブル
１１２：メール確認テーブル
１１３：メール処理状況テーブル
１１４：権限管理テーブル
１１５：サーバ管理テーブル
１１６：監視定義テーブル
１１７：処理結果情報（ログファイル）
１１８：サーバ設定情報（ファイル）
１１９：メール返信設定情報（ファイル）
１２０：サーバＡ（サブマスターサーバ）
１２１：サーバＢ
１２２：サーバＣ
【図１】
2010073117.tif 000003
【図２】
2010073117.tif 000004
【図３】
2010073117.tif 000005
【図４】
2010073117.tif 000006
【図５】
2010073117.tif 000007
【図６】
2010073117.tif 000008
【図７】
2010073117.tif 000009
【図８】
2010073117.tif 000010
【図９】
2010073117.tif 000011
【図１０】
2010073117.tif 000012
【図１１】
2010073117.tif 000013
【図１２】
2010073117.tif 000014
【図１３】
2010073117.tif 000015
【図１４−Ａ】
2010073117.tif 000016
【図１４−Ｂ】
2010073117.tif 000017
【図１４−Ｃ】
2010073117.tif 000018
【図１４−Ｄ】
2010073117.tif 000019
【図１４−Ｅ】
2010073117.tif 000020