(57)【要約】【課題】  メイン監視プログラムが停止してしまうと、監視対象プログラムの停止を検知できなくなる。【解決手段】    動作監視プログラムは、第１のコンピュータに、監視対象プログラムの停止を検出すると第１の対応処理を実行し、サブ監視プログラムの停止を検出すると第２の対応処理を実行するメイン監視処理を実行させるメイン監視プログラムと、第２のコンピュータに、メイン監視プログラムの停止を検出すると第３の対応処理を実行するサブ監視処理を実行させるサブ監視プログラムとからなる。【選択図】      図１
2009282601.tif 000002
【特許請求の範囲】
【請求項１】
第１のコンピュータに、監視対象プログラムの停止を検出すると第１の対応処理を実行し、サブ監視プログラムの停止を検出すると第２の対応処理を実行するメイン監視処理を実行させるメイン監視プログラムと、
第２のコンピュータに、前記メイン監視プログラムの停止を検出すると第３の対応処理を実行するサブ監視処理を実行させる前記サブ監視プログラムと、からなる動作監視プログラム。
【請求項２】
前記第１のコンピュータに、前記第１の対応処理として前記監視対象プログラムの起動を、前記第２の対応処理として前記サブ監視プログラムの起動を実行させる前記メイン監視プログラムと、
前記第２のコンピュータに、前記第３の対応処理として前記メイン監視プログラムの起動を実行させる前記サブ監視プログラムとからなる請求項１の動作監視プログラム。
【請求項３】
前記監視対象プログラムの識別子を格納するパラメータファイルを備える前記第１のコンピュータに、
前記識別子で指定される前記監視対象プログラムの停止を検出する前記メイン監視処理を実行させる請求項１または２の動作監視プログラム。
【請求項４】
前記第１のコンピュータと前記第二のコンピュータが同一のコンピュータである場合に、前記同一のコンピュータに、前記メイン監視処理を実行させる前記メインプログラムと、前記サブ監視処理を実行させる前記サブ監視プログラムとを包含する請求項１乃至３の何れかの動作監視プログラム。
【請求項５】
ネットワークを介して相互に接続された、請求項１乃至４の動作監視プログラムにおける前記第１と前記第２のコンピュータを包含する監視システム。
【請求項６】
第１のコンピュータが、
監視対象プログラムの停止を検出すると第１の処理を実行させ、サブ監視プログラムの停止を検出すると第２の対応処理を実行させるメイン監視プログラムを実行するメイン監視行程と、
第２のコンピュータが、
前記メイン監視プログラムの停止を検出すると第３の対応処理を実行させるサブ監視プログラムを実行するサブ監視行程とを有する、監視方法。
【請求項７】
前記第１のコンピュータが、前記第１の対応処理として前記監視対象プログラムの起動を、前記第２の対応処理として前記サブ監視プログラムの起動を行わせる前記メイン監視プログラムを実行する前記メイン監視行程と、
前記第２のコンピュータが、前記第３の対応処理として前記メイン監視プログラムの起動を行わせる前記サブ監視プログラムを実行する前記サブ監視行程を有する請求項６の監視方法。
【請求項８】
前記監視対象プログラムの識別子を格納するパラメータファイルを備える前記第１のコンピュータが、
前記識別子で指定される前記監視対象プログラムの停止を検出させる前記メイン監視プログラムを実行する前記メイン監視行程を有する請求項６または７の監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作監視プログラム、監視システム、および、監視方法に関する。
【背景技術】
【０００２】
特許文献１には、ＯＳ１（Operating  System）上の監視プログラムの発する信号が停止すると、ＯＳ２がＯＳ１を再起動することが記載されている。
【０００３】
特許文献２には、相互に動作監視をする被監視コンピュータ管理プログラムと自コンピュータ監視プログラムが記載されている。
【０００４】
【特許文献１】特開２００１−１０１０３４号公報
【特許文献２】特開２００４−３４１７７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述の技術は何れも、監視対象プログラムの停止を検出するメイン監視プログラムの停止を検出しようとするものではなかった。したがって、メイン監視プログラムが停止してしまうと、監視対象プログラムの停止を検知できなくなるという課題があった。
【０００６】
本発明の目的は、上述の課題を解決する動作監視プログラム、監視システム、および、監視方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明の一実施形態の動作監視プログラムは、第１のコンピュータに、監視対象プログラムの停止を検出すると第１の対応処理を実行し、サブ監視プログラムの停止を検出すると第２の対応処理を実行するメイン監視処理を実行させるメイン監視プログラムと、第２のコンピュータに、前記メイン監視プログラムの停止を検出すると第３の対応処理を実行するサブ監視処理を実行させる前記サブ監視プログラムとからなる。
【０００８】
本発明の一実施形態の監視方法は、第１のコンピュータが、監視対象プログラムの停止を検出すると第１の処理を実行させ、サブ監視プログラムの停止を検出すると第２の対応処理を実行させるメイン監視プログラムを実行するメイン監視行程と、第２のコンピュータが、前記メイン監視プログラムの停止を検出すると第３の対応処理を実行させるサブ監視プログラムを実行するサブ監視行程とを有する。
【発明の効果】
【０００９】
本発明によれば、メイン監視プログラムが動作停止した場合に、それを検出することで、監視対象プログラムの動作をより確実に担保できる。
【発明を実施するための最良の形態】
【００１０】
図１は、本発明にかかる第１の実施形態の監視システム３０を示す。監視システム３０は、ネットワーク３１を介して相互に接続される、第１のコンピュータ１０と第２のコンピュータ２０を包含する。
【００１１】
第１のコンピュータ１０は、メイン監視プログラム１１、監視対象プログラム１２、第１のＯＳ１９、パラメータファイル１３を包含する。メイン監視プログラム１１、監視対象プログラム１２、第１のＯＳ１９（Operating System）は、第１のコンピュータ１０の図示されないメモリに格納され、同様に図示されないプロセッサにより実行されてその機能を果たす。メイン監視プログラム１１、監視対象プログラム１２は、第１のＯＳ１９の制御下で実行される。
【００１２】
監視対象プログラム１２は、例えば、経理関連のアプリケーション処理やネットワーク構成管理関連のシステム管理処理を行うプログラムである。監視対象プログラム１２は、監視システム３０の運転中のある期間は継続的に存在することが必要である。この監視対象プログラム１２が動作していることを監視し、意図しない停止をより確実に検出することが、本実施形態の目的である。監視対象プログラム１２は複数存在しても良い。
【００１３】
メイン監視プログラム１１は、ひとつまたは複数の監視対象プログラム１２の実行監視を行い、それらが上述の期間継続的に存在することをより確実にしようとする。本実施形態の特徴は、このメイン監視プログラム１１の停止を検知することにある。
【００１４】
パラメータファイル１３は、第１のコンピュータ１０の図示しない外部記憶装置またはメモリに設けられる。パラメータファイル１３は、メイン監視プログラム１１が実行監視の対象とする、監視対象プログラム１２の識別子１４と起動情報１５を対応させて格納する。パラメータファイル１３は、複数の識別子１４と起動情報１５を格納していても良い。
【００１５】
起動情報１５は、対応する識別子１４の監視対象プログラム１２を起動する為の情報である。この情報は、例えば、監視対象プログラム１２のファイルとしての所在や起動パラメータを包含する。
【００１６】
第２のコンピュータ２０は、サブ監視プログラム２１、第２のＯＳ２９を包含する。サブ監視プログラム２１、第２のＯＳ２９（Operating System）は、第２のコンピュータ２０の図示されないメモリに格納され、同様に図示されないプロセッサにより実行されてその機能を果たす。サブ監視プログラム２１は、第２のＯＳ２９の制御下で実行される。
【００１７】
監視システム３０においては、メイン監視プログラム１１が監視対象プログラム１２とサブ監視プログラム２１の実行監視を行う。そして、サブ監視プログラム２１が、メイン監視プログラム１１の実行監視を行う。
【００１８】
本発明は、このようにメイン監視プログラム１１とサブ監視プログラム２１を設けることで、メイン監視プログラム１１だけで監視対象プログラム１２の実行監視を行う場合に比べて、より確実に監視対象プログラム１２の実行監視を行うことを目指す。
【００１９】
なお、以下において、プログラムが動作主体として記載されることがある。これらの記載は、より正確には、当該プログラムを実行するプロセッサが動作主体であることを意味する。
【００２０】
図２は、本発明の動作監視プログラム４０の構成を示す。動作監視プログラム４０は、メイン監視プログラム１１とサブ監視プログラム２１から構成される。
【００２１】
図３は、メイン監視プログラム１１、サブ監視プログラム２１、監視対象プログラム１２の動作フローチャートである。
【００２２】
メイン監視プログラム１１は、監視システム３０の初期設定時などに第１のＯＳ１９が起動する。起動されると、同プログラムは、パラメータファイル１３から、全ての識別子１４を入力する（Ｓ１１）。
【００２３】
同プログラムは、各識別子１４で特定される監視対象プログラム１２、および、サブ監視プログラム２１に対して、動作監視用通知を送信する（Ｓ１２）。
【００２４】
具体的には、メイン監視プログラム１１は、各識別子１４で特定される監視対象プログラム１２に動作監視用通知を送信することを、第１のＯＳ１９に依頼する。同ＯＳは、図示しない第１のコンピュータ１０のメモリを経由したプロセス間通信機能等を用いて、動作監視用通知を監視対象プログラム１２に送信する。
【００２５】
ついで、メイン監視プログラム１１は、サブ監視プログラム２１に動作監視用通知を送信することを、第１のＯＳ１９に依頼する。同ＯＳは、ネットワーク３１を経由した通信機能等を用いて、動作監視用通知をサブ監視プログラム２１に送信する。サブ監視プログラム２１の通信アドレスなどは、例えば、あらかじめ同ＯＳのパラメータ等で指定されていればよい。
【００２６】
メイン監視プログラム１１は、一定時間、監視対象プログラム１２、および、サブ監視プログラム２１からの応答を待ち合わせる（Ｓ１３）。待ち合わせ時間は、例えば、パラメータファイル１３等で指定されていればよい。監視対象プログラム１２の応答待ち合わせ時間とサブ監視プログラム２１の応答待ち合わせ時間は、同じであっても異なっていても良い。
【００２７】
待ち合わせ後に、各監視対象プログラム１２からの応答を受信し（Ｓ１４でＹ）、かつ、サブ監視プログラム２１からの応答を受信すれば（Ｓ１５でＹ）、メイン監視プログラム１１は、再び動作監視用通知の送信に戻る（Ｓ１２）。
【００２８】
具体的には、Ｓ１４において、メイン監視プログラム１１は、第１のＯＳ１９に、監視対象プログラム１２から、応答を受信することを依頼する。同ＯＳは、監視対象プログラム１２から、図示しない第１のコンピュータ１０のメモリを経由したプロセス間通信機能等を用いて応答が送信されていれば、当該応答を受信する。当該応答は、当該応答を送信した監視対象プログラム１２の識別子１４を包含している。同ＯＳは、監視対象プログラム１２から応答が送信されていなければ応答受信が出来なかったことを、メイン監視プログラム１１に報告する。
【００２９】
ついで、Ｓ１５において、メイン監視プログラム１１は、第１のＯＳ１９に、サブ監視プログラム２１から、応答を受信することを依頼する。同ＯＳは、サブ監視プログラム２１から、ネットワーク３１を経由した通信機能等を用いて応答が送信されていれば、当該応答を受信する。同ＯＳは、サブ監視プログラム２１から応答が送信されていなければ応答受信が出来なかったことを、メイン監視プログラム１１に報告する。
【００３０】
ある監視対象プログラム１２からの応答を受信出来なかった場合（Ｓ１４でＮ）、メイン監視プログラム１１は当該監視対象プログラム１２を再度起動する（Ｓ１６）。当該監視対象プログラム１２は異常終了していると想定されるからである。起動は、メイン監視プログラム１１が、応答が受信できなかった監視対象プログラム１２の識別子１４に対応する起動情報１５を特定して、第１のＯＳ１９に起動要求することで実行される。
【００３１】
なお、メイン監視プログラム１１が監視対象プログラム１２からの応答を受信出来なかったにもかかわらず、当該監視対象プログラム１２が異常終了していない場合もあり得る。この場合、第１のＯＳ１９から二重起動を報告されたメイン監視プログラム１１が、図示しないコンソール装置等にオペレータ宛の警告を表示してもよい。
【００３２】
サブ監視プログラム２１からの応答を受信出来なかった場合（Ｓ１５でＮ）、メイン監視プログラム１１は、サブ監視プログラム２１を再度起動する（Ｓ１７）。サブ監視プログラム２１は異常終了していると想定されるからである。起動は、メイン監視プログラム１１が、第１のＯＳ１９に要求することで実行される。
【００３３】
第１のＯＳ１９は、ネットワーク３１を経由した通信機能等を用いて、当該起動要求を第２のＯＳ２９に送信し、第２のＯＳ２９がサブ監視プログラム２１を起動する。サブ監視プログラム２１のファイルとしての所在や起動パラメータは、例えば、あらかじめ同ＯＳのパラメータ等で指定されていればよい。
【００３４】
なお、メイン監視プログラム１１がサブ監視プログラム２１からの応答を受信出来なかったにもかかわらず、サブ監視プログラム２１が異常終了していない場合もあり得る。この場合、第２のＯＳ２９から第１のＯＳ１９を経由して二重起動を報告されたメイン監視プログラム１１が、図示しないコンソール装置等にオペレータ宛の警告を表示してもよい。
【００３５】
監視対象プログラム１２は、監視システム３０の図示しない業務プログラム起動時などに第１のＯＳ１９が起動する。同プログラムは、通常は経理処理などのアプリケーション処理を行っている（Ｓ３１）。
【００３６】
メイン監視プログラム１１が動作確認通知を送信する（Ｓ１２）と、例えば、それを受信した第１のＯＳ１９は、監視対象プログラム１２に割り込みを報告する。当該報告を受けた監視対象プログラム１２は、動作監視通知の応答を送信する（Ｓ３２）。
【００３７】
ここで、具体的には、監視対象プログラム１２はその識別子１４を指定して、第１のＯＳ１９に対して、メイン監視プログラム１１へ応答を送信することを依頼する。同ＯＳは、図示しない第１のコンピュータ１０のメモリを経由したプロセス間通信機能等を用いて、識別子１４を格納した応答をメイン監視プログラム１１に送信する。
【００３８】
サブ監視プログラム２１は、監視システム３０の初期設定時などに第２のＯＳ２９が起動する。同プログラムは、一定時間、メイン監視プログラム１１からの動作監視通知を待ち合わせる（Ｓ２１）。この待ち合わせ時間は、メイン監視プログラム１１の待ち合わせ時間よりやや大きい程度でよい。
【００３９】
待ち合わせ後に、メイン監視プログラム１１からの動作確認通知を受信すると（Ｓ２２でＹ）、サブ監視プログラム２１は、動作監視通知の応答を送信する（Ｓ２３）。
【００４０】
Ｓ２２において、サブ監視プログラム２１は、第２のＯＳ２９に、メイン監視プログラム１１から、動作確認通知を受信することを依頼する。同ＯＳは、メイン監視プログラム１１から、ネットワーク３１を経由した通信機能等を用いて動作監視通知が送信されていれば、当該通知を受信する。同ＯＳは、メイン監視プログラム１１から動作監視通知が送信されていなければ受信が出来なかったことを、サブ監視プログラム２１に報告する。
【００４１】
Ｓ２３において、サブ監視プログラム２１は、第２のＯＳ２９に対して、メイン監視プログラム１１へ応答を送信することを依頼する。同ＯＳは、ネットワーク３１を経由した通信機能等を用いて、応答をメイン監視プログラム１１に送信する。
【００４２】
待ち合わせ後に、メイン監視プログラム１１からの動作確認通知を受信出来ない場合（Ｓ２２でＮ）、サブ監視プログラム２１は、メイン監視プログラム１１を再度起動する（Ｓ２４）。メイン監視プログラム１１は異常終了していると想定されるからである。起動は、サブ監視プログラム２１が、第２のＯＳ２９に要求することで実行される。
【００４３】
第２のＯＳ２９は、ネットワーク３１を経由した通信機能等を用いて、当該起動要求を第１のＯＳ１９に送信し、第１のＯＳ１９がメイン監視プログラム１１を起動する。メイン監視プログラム１１のファイルとしての所在や起動パラメータは、例えば、あらかじめ同ＯＳのパラメータ等で指定されていればよい。
【００４４】
なお、サブ監視プログラム２１がメイン監視プログラム１１からの応答を受信出来なかったにもかかわらず、メイン監視プログラム１１が異常終了していない場合もあり得る。この場合、第１のＯＳ１９から第２のＯＳ２９を経由して二重起動を報告されたサブ監視プログラム２１が、図示しないコンソール装置等にオペレータ宛の警告を表示してもよい。
【００４５】
本発明によれば、監視システム３０は、より確実に監視対象プログラム１２の実行監視を行うことができる。メイン監視プログラム１１が監視対象プログラム１２とサブ監視プログラム２１の実行監視を行い、サブ監視プログラム２１がメイン監視プログラム１１の実行監視を行うからである。
【００４６】
第２の実施形態の監視システム３０は、監視対象プログラム１２、メイン監視プログラム１１、サブ監視プログラム２１から動作監視通知に対する応答が得られないときに、それらを再起動しない。同システムは、図示しないコンソール装置等にオペレータ宛の警告を表示してもよい。
【００４７】
この実施形態の監視システム３０は、監視対象プログラム１２、メイン監視プログラム１１、サブ監視プログラム２１が応答しなくなったときに、単純に再起動で処置できない場合にも使用できる。オペレータが、人出による何らかの処置をした後に、当該コンソール装置から再起動のコマンドを入力して再起動できるからである。
【００４８】
第３の実施形態の監視システム３０に於いては、プロセス切換などを通じて第１のＯＳ１９が、監視対象プログラム１２の動作監視を常時行う。本実施形態では、メイン監視プログラム１１が同ＯＳに動作確認通知送信を依頼した時点（Ｓ１２）で、同ＯＳが当該監視結果をメイン監視プログラム１１に返却しても良い。監視対象プログラム１２が、動作監視通知の応答を送信する（Ｓ３２）必要はない。
【００４９】
この実施形態では、既存の、または、流通している一般のアプリケーションプログラムを、監視対象プログラム１２として使用出来る。監視対象プログラム１２自身が、動作監視通知の応答を送信するように構成する必要がないからである。
【００５０】
図４は、本発明の第４の実施形態にかかる監視システム３０の構成を示す。この監視システム３０では、第１のコンピュータ１０が、監視対象プログラム１２、メイン監視プログラム１１、サブ監視プログラム２１の全てを包含する。即ち、第１のコンピュータ１０の図示しないプロセッサが、監視対象プログラム１２、メイン監視プログラム１１、サブ監視プログラム２１の全てを実行する。
【００５１】
このように構成することで、監視システム３０は、監視にかかわる負荷を軽減できる。監視対象プログラム１２、メイン監視プログラム１１、サブ監視プログラム２１間の通知、応答の全てが、第１のコンピュータ１０の図示しないメモリを経由したデータ交換で実現できるからである。
【図面の簡単な説明】
【００５２】
【図１】図１は、本発明にかかる第１の実施形態の監視システム３０を示す。
【図２】図２は、本発明の動作監視プログラム４０の構成を示す。
【図３】図３は、メイン監視プログラム１１、サブ監視プログラム２１、監視対象プログラム１２の動作フローチャートである。
【図４】図４は、本発明の第３の実施形態にかかる監視システム３０の構成を示す。
【符号の説明】
【００５３】
１０    第１のコンピュータ
１１    メイン監視プログラム
１２    監視対象プログラム
１３    パラメータファイル
１４    識別子
１５    起動情報
１９    第１のＯＳ
２０    第２のコンピュータ
２１    サブ監視プログラム
２９    第２のＯＳ
３０    監視システム
３１    ネットワーク
４０    動作監視プログラム
【図１】
2009282601.tif 000003
【図２】
2009282601.tif 000004
【図３】
2009282601.tif 000005
【図４】
2009282601.tif 000006