(57)【要約】【課題】  メッセージキューに滞留するメッセージが長時間滞留し続けることによって生じる障害を防止する。【解決手段】  監視システム１１１において、メッセージがメッセージキュー１０７、１０８、１０９、及び１１０に挿入された時の時刻を当該メッセージに記録させ、監視処理を実行している現時刻と挿入時の時刻と、を比較し、所定時間経過したことが判定された場合、警告を行うことによって障害を検知することを特徴とする。【選択図】図１
2010134724.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置とネットワークを介してメッセージの送受信を行う送受信手段と、
前記送受信手段によって受信したメッセージを一時的に記憶するメッセージキューと、
前記メッセージキューに記憶されたメッセージを取得する取得手段と、
前記メッセージキューによって記憶されたメッセージが前記取得手段によって取得されずに所定時間経過した場合、警告を行う監視手段と、
を備えた事を特徴とするメッセージキューイング監視装置。
【請求項２】
請求項１に記載のメッセージキューイング監視装置は、複数のメッセージキューから構成され、前記所定時間は前記複数のメッセージキュー毎に設定することを特徴とする。
【請求項３】
前記監視手段は、前記メッセージキューにメッセージを記憶する時の時刻を前記メッセージへ記憶し、前記メッセージが前記取得手段によって取得されずに前記メッセージに記憶した時刻に対して所定時間経過した場合、警告を行うことを特徴とする請求項１または請求項２に記載のメッセージキューイング監視装置。
【請求項４】
前記監視手段は、前記メッセージキューにメッセージを記憶する時に、前記メッセージを一意に識別するための識別情報を記憶し、前記メッセージキューに前記記憶した識別情報に該当するメッセージが前記取得手段によって取得されずに所定時間以上記憶されている場合、警告を行うことを特徴とする請求項１または請求項２に記載のメッセージキューイング監視装置。
【請求項５】
情報処理装置とネットワークを介してメッセージの送受信を行う送受信工程と、
前記送受信工程によって受信したメッセージを一時的に記憶するメッセージキュー工程と、
前記メッセージキュー工程において記憶されたメッセージを取得する取得工程と、
前記メッセージキュー工程において記憶されたメッセージが前記取得工程において取得されずに所定時間経過した場合、警告を行う監視工程と、
を実行することを特徴とするメッセージキューイング監視方法。
【請求項６】
前記監視工程は、前記メッセージキュー工程においてメッセージを記憶する時の時刻を前記メッセージへ記憶し、前記メッセージが前記取得工程において取得されずに前記メッセージに記憶した時刻に対して所定時間経過した場合、警告を行うことを特徴とする請求項５に記載のメッセージキューイング監視方法。
【請求項７】
前記監視工程は、前記メッセージキュー工程においてメッセージを記憶する時に、前記メッセージを一意に識別するための識別情報を記憶し、前記メッセージキュー工程において前記記憶した識別情報に該当するメッセージが前記取得工程において取得されずに所定時間以上記憶されている場合、警告を行うことを特徴とする請求項５に記載のメッセージキューイング監視方法。
【請求項８】
請求項６または請求項７記載のメッセージキューイング監視方法でコンピュータに実行させるためのコンピュータに読み取り可能なプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータで読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末装置やホスト等とメッセージの送受信によって処理要求を行うメッセージキューイングを使用したオンラインシステムにおける、メッセージングの監視に関するものである。
【背景技術】
【０００２】
トランザクション処理において、クライアント端末からサーバへ所定の処理を実行するために要求情報を送信し、サーバが送信された要求情報に対応するトランザクションを処理し、処理結果をクライアント端末が同期的に待つトランザクション処理が存在する。
【０００３】
しかしながら、上記のようなモデルでは、クライアント端末とサーバとの間で通信が不可となった時、クライアント端末がサーバへ処理要求を行った場合、クライアント端末へはエラーを即座に受け取る事になり得る。
【０００４】
従って、サーバとの通信が可能となり、サーバが利用することができるまで、クライアント端末で上記の処理要求をブロックしておくか、再度、クライアント端末に対して、ユーザが上記の処理要求を起こすように指示入力を行う必要性が生じる。
【０００５】
当然、クライアント端末から処理要求を受け取ったサーバにおいて、この処理要求に対応したトランザクション処理を行っている最中に生じる障害によって、クライアント端末では、サーバからの処理結果を受け取ることができないという不具合が生じるケースもある。
【０００６】
そこで、上記の問題を解決すたるためにクライアント端末とサーバとの間で処理要求と処理結果についてバッファ機能としてメッセージキューを用いることにより、クライアント端末は、処理要求をサーバへ送信せずにメッセージキューに対して送信し、サーバは、メッセージキューに対して送信された処理要求を受け取り、受け取った処理要求に対する処理結果をメッセージキューに返すことで、クライアント端末は、メッセージキューに対して返された処理結果をうけとるメッセージキューイングシステムによって解決を図っている。
【０００７】
つまり、メッセージキュー自体が利用可能な状況である限り、クライアント端末やサーバ等に関する障害にも影響を受けずに継続した処理を実行することが可能となる。
【０００８】
しかしながら、メッセージキューを有するシステム自体に障害が発生した場合は、トランザクション処理は当然のことながら影響を受けるが、その対応方法として、自動的に必要最低限のメッセージキューを閉鎖させることが可能なシステムが提供されている（例えば、特許文献１）。
【０００９】
また、ある特定のクライアント端末と他のホストコンピュータとのキューイングバッファ毎に、キューイング禁止点及びキューイング解除点を設けて、メッセージキューに対するメッセージのトラフィック状態を監視することにより、ある特定のクライアント端末とホストコンピュータ間において、大量のメッセージが送受信される場合や、送信メッセージが長時間滞留した場合も、他のクライアント端末とホストコンピュータ間の処理に影響を与えないシステムが提案されている（例えば、特許文献２）
【特許文献１】特開平２００７−１３３４５３号公報
【特許文献２】特開平６−５９９９８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記メッセージキューイング監視システムは、メッセージキューに対するメッセージの滞留量が一定値を超えた場合、その状態を検知することによってシステムを管理するものであるが、これではメッセージが一定値を超えない場合、例えば、メッセージキューに滞留したメッセージに対して処理が施されない等の障害が発生しても即時検知することが出来ない。
【００１１】
上記特許文献１で提案されている発明は、メッセージキューイング機能を有するサーバ自体において監視を行うため、汎用性に乏しく、設定の変更も容易でない。また、メッセージがメッセージキューに挿入された後に、長時間処理が行われなくとも、何ら検知されない可能性がある。
【００１２】
上記特許文献２で提案されている発明では、メッセージがメッセージキューに滞留している個数によって、障害発生の検知を行うため、メッセージの量が少なく、これらのメッセージがメッセージキューに挿入されても処理が長時間なされないという障害に対応することは難しい。
【課題を解決するための手段】
【００１３】
本発明の目的を達成するための請求項１記載のメッセージキューイング監視装置は、情報処理装置とネットワークを介してメッセージの送受信を行う送受信手段と、前記送受信手段によって受信したメッセージを一時的に記憶するメッセージキューと、前記メッセージキューに記憶されたメッセージを取得する取得手段と、前記メッセージキューによって記憶されたメッセージが前記取得手段によって取得されずに所定時間経過した場合、警告を行う監視手段と、を備えた事を特徴とする。
【００１４】
本発明における請求項２記載のメッセージキューイング監視装置は、請求項１に記載のメッセージキューイング監視装置であって、複数のメッセージキューから構成され、前記所定時間は前記複数のメッセージキュー毎に設定することを特徴とする。
【００１５】
本発明における請求項３記載のメッセージキューイング監視装置は、請求項１または請求項２に記載のメッセージキューイング監視装置であって、前記監視手段は、前記メッセージキューにメッセージを記憶する時の時刻を前記メッセージへ記憶し、前記メッセージが前記取得手段によって取得されずに前記メッセージに記憶した時刻に対して所定時間経過した場合、警告を行うことを特徴とする。
【００１６】
本発明における請求項４記載のメッセージキューイング監視装置は、請求項１または請求項２に記載のメッセージキューイング監視装置であって、前記監視手段は、前記メッセージキューにメッセージを記憶する時に、前記メッセージを一意に識別するための識別情報を記憶し、前記メッセージキューに前記記憶した識別情報に該当するメッセージが前記取得手段によって取得されずに所定時間以上記憶されている場合、警告を行うことを特徴とする。
【００１７】
また、本発明における請求項５記載のメッセージキューイング監視方法は、情報処理装置とネットワークを介してメッセージの送受信を行う送受信工程と、前記送受信工程によって受信したメッセージを一時的に記憶するメッセージキュー工程と、前記メッセージキュー工程において記憶されたメッセージを取得する取得工程と、前記メッセージキュー工程において記憶されたメッセージが前記取得工程において取得されずに所定時間経過した場合、警告を行う監視工程と、を実行することを特徴とする。
【００１８】
本発明における請求項６記載のメッセージキューイング監視方法は、請求項５に記載のメッセージキューイング監視方法であって、前記監視工程は、前記メッセージキュー工程においてメッセージを記憶する時の時刻を前記メッセージへ記憶し、前記メッセージが前記取得工程において取得されずに前記メッセージに記憶した時刻に対して所定時間経過した場合、警告を行うことを特徴とする。
【００１９】
本発明における請求項７記載のメッセージキューイング監視方法は、請求項５に記載のメッセージキューイング監視方法であって、前記監視工程は、前記メッセージキュー工程においてメッセージを記憶する時に、前記メッセージを一意に識別するための識別情報を記憶し、前記メッセージキュー工程において前記記憶した識別情報に該当するメッセージが前記取得工程において取得されずに所定時間以上記憶されている場合、警告を行うことを特徴とする。
【００２０】
本発明における請求項８記載のプログラムは、請求項６または請求項７記載のメッセージキューイング監視方法でコンピュータに実行させるためのコンピュータに読み取り可能なプログラムである。
【００２１】
本発明における請求項９記載の記録媒体は、請求項８に記載のプログラムを記録したコンピュータで読取り可能な記録媒体である。
【発明の効果】
【００２２】
本発明によって、メッセージキューイング監視装置において、メッセージがメッセージキューに滞留する時間を監視することによって、メッセージの滞留による障害を検知する事が出来る、という効果を奏する。
【発明を実施するための最良の形態】
【００２３】
〔実施例１〕
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【００２４】
図１は、本発明の実施の形態に係るメッセージキューイング監視装置からなるメッセージキューイングシステムにおける基本構成を示す概略構成図である。
【００２５】
メッセージキューイングシステム１００は、サーバ１０１、サーバ１０２、チャネル１０５、１０６、サーバ１０１の監視システム１１１、サーバ１０２の監視システム１１２を含んで構成されている。
【００２６】
サーバ１０１及びサーバ１０２は、一般的なサーバであり、業務処理等を行うためのモジュールであるアプリケーション１０３、１０４を自身に有する。
【００２７】
これらのアプリケーション１０３及び１０４間のメッセージの行き来をさせるものとしてチャネル１０５、１０６が存在し、それらのチャネルを介してメッセージを受け渡しするための一時的な滞留場所として、メッセージキュー（以下、キューとする。）であるキュー１０７、１０８、１０９、及び１１０が存在する。
【００２８】
そして、監視対象のキューが存在する各サーバに監視システム１１１、１１２は存在し、アプリケーションからの指示に応じたメッセージのキューへの書き込み、キューに滞留したメッセージを読み取りアプリケーションへ提供する、あるいは、それぞれのサーバにおいてキュー内にメッセージが長時間滞留し続けるという障害を即時検知するためのキューを管理する機能を有する。
【００２９】
図２は、サーバ１０１、及びサーバ１０２のハードウェア構成を示す図である。
【００３０】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ(Basic Input / Output System)やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバを実行する機能を実現するために必要な各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００３１】
また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００３２】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３３】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３４】
本発明を実現するためのメッセージキューイング監視プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるメッセージキューイング監視プログラムが用いる定義ファイル及び各種情報テーブルは外部メモリ２１１に格納されており、これらについての詳細な説明は後述する。
【００３５】
図３は、本発明の実施の形態に係るメッセージキューイングシステム１００におけるサーバ１０１が有するアプリケーション、クライアントPC（不図示）あるいは他サーバ（不図示）との連携を表す関連図である。
【００３６】
図１で説明したとおり、サーバ１０１は、クライアントPC（不図示）、サーバ１０２、他サーバ（不図示）から、チャネルを介して、アプリケーション１０３に提供されるメッセージを一時的に滞留させておくキュー１１０及び３０１、メッセージを書き込むためのキュー１０７及び３０２を有する。
【００３７】
また、監視システム１１１は、アプリケーション１０３からの指示に応じてキュー１１０及び３０１に滞留しているメッセージの読み取りを実行しアプリケーション１０３へ提供すると共に、キュー１０７及び３０２へメッセージの書き込みを実行し、チャネルを介してクライアントPC（不図示）、サーバ１０２、及び他サーバ（不図示）へ、このメッセージを送信する。また、メッセージが各キューに対して長時間滞留することを防止するために監視を行っている。
【００３８】
なお、サーバ１０２を構成するキュー１０８及び１０９、アプリケーション１０４、監視システム１１２についても同様な機能を有するため説明は省略する。
【００３９】
次に、本発明の実施の形態に係るメッセージキューイングシステム１００において、キューに対してメッセージが長時間滞留することを防止するための監視システム１１１で実行される処理について図４のフローチャートを用いて説明する。なお、本処理は、図２に示すCPU２０１の制御下の元に制御されて処理が実行される。
【００４０】
まず、ステップ４０１では、図５のキューリストファイルをオープンする。このキューリストファイルには、監視対象となるキューのキュー名が予めユーザによって入力設定されている。キューリストファイルの設定目的は、ステップ４０６以下の処理を行う上で監視対象のキューすべてに対して監視を行うため。また、項目のキュー名とはキュー１０７、１１０、３０１、及び３０２のそれぞれについているキューを一意に識別するための名称を表す。
【００４１】
ステップ４０２では、本処理を実施している際に発生する障害に関する情報を出力するためのログファイルを作成し、RAM２０３へ記憶する。
【００４２】
ステップ４０３では、本処理において、ステップ４０４からステップ４１３の処理中に障害が発生したか否かを判定し、障害が発生した場合は、本処理を終了することを表している。なお、ここでいう障害とは、キューに対してメッセージが長時間滞留した場合を示している。
【００４３】
ステップ４０４では、外部メモリ２１１に記憶された図６に示す環境設定ファイルに予め設定されているSLEEP時間、メッセージタイムアウトを読取りRAM２０３へ記憶する。
【００４４】
尚、図６に示す環境設定ファイルは、SLEEP時間、メッセージタイムアウト共に、ユーザ等によって外部からプログラムを毎回変更せずとも容易に変更を行うことが可能となるために設定される。
【００４５】
また、SLEEP時間は、監視対象のキューすべての監視が終了した後、次の監視処理を行う迄の待ち時間を表し、メッセージアウトタイムは、メッセージがキュー内に滞留することを許される時間を表している。
【００４６】
また、環境設定ファイルは、キュー１０７、１１０、３０１、及び３０２の各々に対して設定することで、例えば、メッセージが滞留し易いキューに対してメッセージアウトタイムの時間をより長く設定することで、障害の発生回数を減じること、あるいは、より短く設定することでメッセージの滞留を抑止することによって、より柔軟に各キューに対するメッセージの監視を行うことも可能である。この場合、環境設定ファイルにキュー名を設定することで対応することが可能である。
【００４７】
ステップ４０５では、キューリストファイル（図５参照）の先頭のキュー名を取得し、取得したキュー名を変数Aに設定しRAM２０３へ記憶する。
【００４８】
ステップ４０６では、ステップ４０５の処理結果に基づいて、キューリストファイル（図５参照）にキュー名が存在するか否かを判定する。キュー名が存在した場合は、ステップ４０７へ進み、キュー名が存在しない場合は、ステップ４１３へ進む。
【００４９】
ステップ４０７では、ステップ４０６で取得したキュー名に該当するキューにメッセージが滞留しているか否かを確認する。メッセージが滞留していれば、ステップ４０８へ進み、滞留していなければ、ステップ４１３へ進む。なお、監視システム１１１が、キューに滞留しているメッセージを読取りアプリケーション１０３へ提供すると、あるいは、メッセージを読取り、チャネルを介してクライアントPC（不図示）、サーバ１０２、他サーバ（不図示）へメッセージを送信すると、キューからこれらのメッセージは存在しなくなる。
【００５０】
ステップ４０８では、現在の時刻、及びステップ４０７で該当すると判断されたキュー内に滞留しているメッセージが有するキュー挿入時間を読取りRAM２０３へ記憶する。本発明の実施の形態に係るメッセージキューイングシステム１００で使用されるメッセージの基本構成を示す概略構成図を図７に示す。
【００５１】
構造体IDは、図７で示している構造体を識別するためのIDを表しており、メッセージIDは、メッセージを一意に識別するための識別情報を表す。また、応答先キュー名は、メッセージが滞留するキュー名を表し、応答先監視システムは、メッセージの書き込み及び読取りを行う監視システムの名を表す。例えば、監視システム１１１を識別するための名称を表す。また、キュー挿入時間は、メッセージがキュー１０７、１１０、３０１、及び３０２内に挿入された時刻を表すものであり、監視システム１１１によって設定される。
【００５２】
ステップ４０９では、ステップ４０４でRAM２０３へ記憶したメッセージタイムアウトを変数Xに、ステップ４０８でRAM２０３へ記憶した先頭メッセージのキュー挿入時間を変数Yに、現在の時刻を変数Zに、ステップ４０４でRAM２０３へ記憶したSLEEP時間を変数Sに設定し、RAM２０３に記憶する。
【００５３】
ステップ４１０では、ステップ４０９でRAM２０３に記憶した変数X、Y、Zを用いて先頭メッセージの滞留時間とメッセージタイムアウトを比較する。例えば、Z−Yが、Xより大となる、すなわち、現在の時刻とキュー挿入時間との差が、メッセージタイムアウトの値より小となるか否かの判定を行う。差が小となった場合は、ステップ４１１へ進み、差が大とならなかった場合は、ステップ４１３へ進む。
【００５４】
ステップ４１１では、メッセージがメッセージタイムアウトの値以上、キューに滞留しているため、障害が発生したと判定し、ステップ４０２でRAM２０３へ記憶したログファイルに、障害に関する情報と現在の時刻、障害が発生したキュー名を出力する。
【００５５】
ステップ４１２では、図１１に示される如くCRT２１０のキュー名、時刻、障害コメントに対応させて、障害が発生したキュー名、現在の時刻、障害に関する情報を出力する。
【００５６】
ステップ４１３では、キューリストファイルからステップ４０５でRAM２０３へ記憶したキュー名を削除し、変数Aにキューリストファイル内の次のキュー名を設定しRAM２０３へ記憶する。
【００５７】
ステップ４１４では、変数Sに設定された時間、つまりステップ４０４でRAM２０３へ記憶したSLEEP時間の間、本処理を実行するための機能を休止すると共に、本処理を終了し、終了後、SLEEP時間経過した後に、再度、本処理を開始する。
【００５８】
なお、本処理については監視システム１１１について説明したが、監視システム１１２に本処理を適用することも可能であることは言うまでもない。
〔実施例２〕
【００５９】
本発明の第１の実施の形態にかかる発明においては、キュー挿入時間を使用して、キューに滞留するメッセージの滞留時間を監視する形態を説明したが、本発明の第２の実施の形態に係る発明は、キュー挿入時間の変わりにメッセージを一意に識別するためのメッセージIDを使用することによって、メッセージの滞留を監視する形態について説明する。
【００６０】
本発明の実施形態に係るメッセージキューイングシステムにおけるシステムの構成は、図１〜図３、図７、図１１に示される構成と同等であるものについては、同一符号を用いるとともに各構成の説明は省略する。
【００６１】
次に、本発明の実施形態に係るメッセージ監視装置からなるメッセージキューイングシステム１００において、キューに対してメッセージが長時間滞留することを防止するための監視システム１１１で実行される処理について図８のフローチャートを用いて説明する。なお、本処理は、図２に示すCPU２０１の制御下の元に処理が実行される。
【００６２】
まず、ステップ８０１では、図９のキューリストファイルに監視対象となるキュー名に対応する先頭のメッセージのメッセージID（図７の項目１２）を自動で取得し、キューリストファイルに格納する。また、メッセージがない場合は、０を格納する。なお、キューリストファイルには、予めユーザによって監視対象となるキュー名が設定されている。
【００６３】
キューリストファイルの設定目的は、ステップ８０６以下の処理を行う上で監視対象のキューすべてに対して監視を行うため。また、項目のキュー名とはキュー１０７、１１０、３０１、及び３０２のそれぞれについているキューを一意に識別するための名称を表す。
【００６４】
ステップ８０２では、本処理を実施している際に発生する障害に関する情報を出力するためのログファイルを作成し、RAM２０３へ記憶する。
【００６５】
ステップ８０３では、本処理において、ステップ８０４からステップ８１４の処理中に障害が発生したか否かを判定し、障害が発生した場合は、本処理を終了することを表している。なお、ここでいう障害とは、キューに対してメッセージが長時間滞留した場合を示している。
【００６６】
ステップ８０４では、外部メモリ２１１に記憶された図１０に示す環境設定ファイルに予め設定されているSLEEP時間を読取り、RAM２０３へ記憶する。
【００６７】
尚、図１０に示す環境設定ファイルは、SLEEP時間に対して、ユーザ等によって外部からプログラムを毎回変更せずとも容易に変更を行うことができるために設定される。
【００６８】
また、SLEEP時間は、監視対象のキューすべての監視が終了した後、次の処理を行う迄の待ち時間を表している。
【００６９】
また、環境設定ファイルは、キュー１０７、１１０、３０１、及び３０２の各々に対して設定することで、例えば、メッセージが滞留し易いキューに対してSLEEP時間をより長く設定することで、障害の発生回数を減じること、あるいは、より短く設定することでメッセージの滞留を抑止することによって、より柔軟に各キューに対するメッセージの監視を行うことも可能である。この場合、環境設定ファイルにキュー名を設定することで対応することが可能である。
【００７０】
ステップ８０５では、キューリストファイル（図９参照）の先頭のキュー名、そのキュー名に紐付くメッセージIDを読取り、読取ったキュー名を変数Aに、メッセージIDをXに設定し、RAM２０３へ記憶する。
【００７１】
ステップ８０６では、キューリストファイル（図９参照）に設定されたすべてのキュー１０７、１１０、３０１、及び３０２に対して、ステップ８０７からステップ８１４迄の処理、つまり、各キューに対するメッセージの滞留の監視を行うことを表しており、すべてのキューに対して処理が完了すると、ステップ８０７からステップ８１４までの処理は、終了となる。
【００７２】
ステップ８０７では、ステップ８０５でRAM２０３へ記憶したキュー名に該当するキュー１０７、１１０、３０１、あるいは３０２にメッセージが滞留しているか否かを確認する。メッセージが滞留していれば、ステップ８０８へ進み、滞留していなければ、ステップ８１４へ進む。なお、監視システム１１１が、キューに滞留しているメッセージを読取りアプリケーション１０３へ提供すると、あるいは、メッセージを読取り、チャネルを介してクライアントPC（不図示）、サーバ１０２、他サーバ（不図示）へメッセージを送信すると、キューからこれらのメッセージは存在しなくなる。
【００７３】
メッセージが滞留していない場合、すなわちステップ８１４では、図９に示すキューリストファイルのメッセージIDに対して０を設定する。
【００７４】
ステップ８０８では、現在の時刻、及びステップ８０７で該当すると判断されたキュー内に滞留しているメッセージが有するメッセージID（図７参照）を読取り、RAM２０３へ記憶する。
【００７５】
ステップ８０９では、参照したキュー１０７、１１０、３０１、あるいは３０２のキュー名に対応したキューリストファイル内のメッセージIDに対してステップ８０８でRAM２０３へ記憶したメッセージIDを使用して上書きを行う。
【００７６】
ステップ８１０では、ステップ８０８でRAM２０３へ記憶したメッセージIDを変数Yに、現在の時刻を変数Zに、ステップ８０４でRAM２０３へ記憶したSLEEP時間を変数Sに設定し、RAM２０３へ記憶する。
【００７７】
ステップ８１１では、ステップ８０５でRAM２０３へ記憶した変数X、ステップ８１０でRAM２０３へ記憶した変数Yを用いて、本処理を実行するための機能を休止する前の先頭メッセージのメッセージIDと現在の先頭メッセージIDとを比較する。変数Xに設定されたメッセージIDが、変数Yに設定されたメッセージIDと同じIDになれば、ステップ８１２へ進み、異なれば、ステップ８１５へ進む。
【００７８】
ステップ８１２では、本処理を実行するための機能を休止する前の先頭メッセージIDと現在のメッセージIDと、が同じIDであると、ステップ８１１で判定される、つまり、本処理を実行するための機能を休止する前にキューに滞留していたメッセージが、機能を休止した後、再度、処理を実行した時にも滞留したままの状態であるので、本処理において障害が発生したと判定されるため、ステップ８０２で作成し、RAM２０３へ記憶したログファイルに、障害が発生したキュー名、現在の時刻、及び障害に関する情報を出力する。
【００７９】
ステップ８１３では、図１１に示される如くCRT２１０のキュー名、時刻、障害コメントに対応させて、障害が発生したキュー名、現在の時刻、障害に関する情報を出力する。
【００８０】
ステップ８１５では、図９に示すキューリストファイルからステップ８０５でRAM２０３へ記憶したキュー名を削除し、変数Aにキューリストファイル内の次のキュー名を設定しRAM２０３へ記憶する。
【００８１】
ステップ８１７では、変数Sに設定された時間、つまりステップ８０４でRAM２０３へ記憶したSLEEP時間の間、本処理を実行するための機能を休止すると共に、本処理を終了し、終了後、SLEEP時間経過した後に、再度、本処理を開始する。
【００８２】
なお、本処理については監視システム１１１について説明したが、監視システム１１２に本処理を適用することも可能であることは言うまでもない。
【００８３】
以上、上記実施形態の一例について説明したが、これらの形態は、装置、システム、方法、コンピュータに実行させることが可能なプログラム、コンピュータで読取り可能な記録媒体等の形態によって実施することも可能である。記録媒体としては、フロッピー（登録商標）ディスク、ハードディスク、磁気ディスク、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＯＭ、ＤＶＤ＋ＲＷ、ＤＶＤ−ＲＷ等が上げられる。
【００８４】
また、ネットワークを介してプログラムをダウンロードすることによって利用することも可能である。
【００８５】
以上、上記実施形態によってメッセージキューイング監視装置において、メッセージキューに滞留する時間を監視することによって、メッセージの滞留による障害を検知する事が可能となる。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施形態に係るメッセージングキューイングシステムの基本構成に関する概略構成図である。
【図２】本発明の実施形態に係るサーバを構成するハードウェアを示す構成図である。
【図３】本発明の実施形態に係るサーバと他システムとの連携を説明するための構成図である。
【図４】本発明の実施形態に係る監視システムにおいて、メッセージがキューに長時間滞留することによって生じる障害を、キュー挿入時間を使用することによって防止する処理を表すフローチャートである。
【図５】本発明の実施形態に係る監視対象のキューを定めるためのファイルを表す構成図である。
【図６】本発明の実施形態に係るメッセージがキューに長時間滞留しているか否かを判定するために必要とするデータを設定するためのファイルを表す構成図である。
【図７】本発明の実施形態に係るメッセージの基本構成を示す概略構成図である。
【図８】本発明の実施形態に係る監視システムにおいて、メッセージがキューに長時間滞留することによって生じる障害を、メッセージIDを使用して防止する処理を表すフローチャートである。
【図９】本発明の実施形態に係る監視対象のキュー、及びキューに滞留しているメッセージを定めるためのファイルを表す構成図である。
【図１０】本発明の実施形態に係るメッセージがキューに長時間滞留しているか否かを判定するために必要とするデータを設定するためのファイルを表す構成図である。
【図１１】本発明の実施形態に係る監視システムにおいて、メッセージがキューに長時間滞留することによって障害が生じた場合、障害情報を表示するための画面を示す構成図である。
【符号の説明】
【００８７】
１００    メッセージキューイングシステム
１０１    サーバ
１０２    サーバ
１０３    アプリケーション
１０４    アプリケーション
１０５    チャネル
１０６    チャネル
１０７    メッセージキュー
１０８    メッセージキュー
１０９    メッセージキュー
１１０    メッセージキュー
１１１    監視システム
１１２    監視システム
２０１    CPU
２０２    ROM
２０３    RAM
２０４    システムバス
２０５    入力コントローラ
２０６    ビデオコントローラ
２０７    メモリコントローラ
２０８    通信Ｉ／Ｆコントローラ
２０９    キーボード
２１０    ＣＲＴディスプレイ
２１１    外部メモリ
３０１    メッセージキュー
３０２    メッセージキュー
【図１】
2010134724.tif 000003
【図２】
2010134724.tif 000004
【図３】
2010134724.tif 000005
【図４】
2010134724.tif 000006
【図５】
2010134724.tif 000007
【図６】
2010134724.tif 000008
【図７】
2010134724.tif 000009
【図８】
2010134724.tif 000010
【図９】
2010134724.tif 000011
【図１０】
2010134724.tif 000012
【図１１】
2010134724.tif 000013