(57)【特許請求の範囲】
【請求項１】
複数のアラームそれぞれについて、その状態が変化したことを検出する検出部と、
アラーム毎のマスク要因リストであって、自アラームよりも優先度が高いアラームの識別情報を含んだマスク要因リストと、前記アラーム毎の被マスク要因リストであって、自アラームよりも優先度が低いアラームの識別情報を含んだ被マスク要因リストとが記録されたリスト記憶部と、
前記検出部によって状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラーム用のマスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、前記第１のアラームをマスクしてその状態を未発生にし、前記第１のアラーム用の被マスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、該アラームをマスクし、前記検出部によって状態が発生中から未発生に変化した第２のアラームが検出されたとき、優先度が前記第２のアラームよりも高いアラームが発生していないことを条件にして、前記第２のアラーム用の被マスク要因リストに含まれている識別子によって示されるアラームにかけられていたマスクを解除することを特徴とするアラーム制御装置。
【請求項２】
検出部と、マスク処理部と、リスト記憶部とを備えたコンピュータが実行するアラーム制御方法であって、
前記リスト記憶部には、アラーム毎のマスク要因リストであって、自アラームよりも優先度が高いアラームの識別情報を含んだマスク要因リストと、前記アラーム毎の被マスク要因リストであって、自アラームよりも優先度が低いアラームの識別情報を含んだ被マスク要因リストとが記録され、
前記検出部が、前記アラームそれぞれについて、その状態が変化したことを検出し、
前記マスク処理部が、前記検出部において状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラーム用のマスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、前記第１のアラームをマスクしてその状態を未発生にし、前記第１のアラーム用の被マスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、該アラームをマスクし、前記検出部において状態が発生中から未発生に変化した第２のアラームが検出されたとき、優先度が前記第２のアラームよりも高いアラームが発生していないことを条件にして、前記第２のアラーム用の被マスク要因リストに含まれている識別子によって示されるアラームにかけられていたマスクを解除することを特徴とするアラーム制御方法。
【請求項３】
アラーム毎のマスク要因リストであって、自アラームよりも優先度が高いアラームの識別情報を含んだマスク要因リストと、前記アラーム毎の被マスク要因リストであって、自アラームよりも優先度が低いアラームの識別情報を含んだ被マスク要因リストとが記録されリスト記憶部を備えたコンピュータをアラーム制御装置として機能させるためのプログラムであって、
前記コンピュータを、
複数のアラームそれぞれについて、その状態が変化したことを検出する検出部、
該検出部において状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラーム用のマスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、前記第１のアラームをマスクしてその状態を未発生にし、前記第１のアラーム用の被マスク要因リストに含まれている識別情報によって示されるアラームが発生中であれば、該アラームをマスクし、前記検出部において状態が発生中から未発生に変化した第２のアラームが検出されたとき、優先度が前記第２のアラームよりも高いアラームが発生していないことを条件にして、前記第２のアラーム用の被マスク要因リストに含まれている識別子によって示されるアラームにかけられていたマスクを解除するマスク処理部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害発生時に多くの種類のアラームが発生することがある伝送装置などにおいて、必要に応じてアラームをマスクするアラーム制御技術に関する。
【背景技術】
【０００２】
伝送装置などにおいては、障害復旧を迅速に行えるようにするため、装置内の各部（各種ＬＳＩや、各種ポートなど）の状態を監視し、障害発生を検出したならば、障害発生部分に対応した種類のアラームを発生するようにしている。このアラームは、保守管理装置などの外部システムに報告され、保守管理装置の管理者などは、アラームの種類に基づいて障害発生部分を推定し、障害復旧に必要な処置をとる。
【０００３】
ところで、伝送装置のように、装置内の各部が関連して動作する装置においては、装置内のある部分で障害が発生すると、その障害に連鎖して装置内の多くの部分で障害が発生し、それに伴って多くのアラームがほぼ同時に発生する場合がある。このような状況では、管理者が優先度の高いアラームを見逃してしまう危険性が高く、適切な障害復旧のための処置をとれないという事態が発生する危険性が高い。
【０００４】
一方、複数のアラームの中から、その優先度が管理者によって指定された、閾値となる優先度以上のアラームだけを管理者に提示し、上記優先度未満のアラームはマスクするようにした技術も知られている（例えば、特許文献１参照）。この技術によれば、連鎖障害によって多くのアラームがほぼ同時に発生した場合であっても、管理者に提示するアラームを、管理者によって指定された優先度以上の優先度を持つアラームに絞り込むことができるので管理者が、優先度の高いアラームを見逃してしまう危険性を少なくすることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平２−２９７６９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１に記載されている技術は、管理者に提示するアラームを絞り込むために、管理者自身が閾値となる優先度を指定しなければならないので、管理者に負担がかかるという問題がある。また、管理者が優先度を指定するようにしているので、適切な優先度が指定されない場合があり、このような場合には、管理者に全くアラームが提示されなかったり、反対に、管理者に数多くのアラームが提示されてしまうことがある。
【０００７】
[発明の目的]
そこで、本発明の目的は、管理者に提示するアラームを優先度に基づいて絞り込む際、管理者が優先度を指定しなければならなかったという課題を解決したアラーム制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明にかかる第１のアラーム制御装置は、
複数のアラームそれぞれについて、その状態が変化したことを検出する検出部と、
該検出部において状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラームよりも優先度が高いアラームが発生中であれば、前記検出された第１のアラームをマスクしてその状態を未発生にするマスク処理部とを備えている。
【０００９】
本発明にかかるマスク制御方法は、
検出部と、マスク処理部とを備えたコンピュータが実行するアラーム制御方法であって、
前記検出部が、複数のアラームそれぞれについて、その状態が変化したことを検出し、
前記マスク処理部が、前記検出部において状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラームよりも優先度が高いアラームが発生中であれば、前記検出された第１のアラームをマスクしてその状態を未発生にする。
【００１０】
本発明のかかるプログラムは、
コンピュータをアラーム制御装置として機能させるためのプログラムであって、
前記コンピュータを、
複数のアラームそれぞれについて、その状態が変化したことを検出する検出部、
該検出部において状態が未発生から発生中に変化した第１のアラームが検出されたとき、前記第１のアラームよりも優先度が高いアラームが発生中であれば、前記検出された第１のアラームをマスクしてその状態を未発生にするマスク処理部として機能させる。
【発明の効果】
【００１１】
本発明によれば、管理者に提示するアラームを優先度に基づいて絞り込む際、管理者に負担をかけることなく、発生しているアラームの中で、相対的に優先度の高いアラームを提示することが可能になる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】割り込み検出部D101の構成例を示すブロック図である。
【図３】マトリクス表、マスク要因リスト、及び、被マスク要因リストの一例を示す図である。
【図４】アラーム状態記憶部D107の内容例を示す図である。
【図５】Delay中アラームチェーン及びStretch中アラームチェーンを説明するための図である。
【図６】アラーム制御装置の処理の概要を示したフローチャートである。
【図７】マスク処理部D102が行うマスク処理の概要を示すフローチャートである。
【図８】マスク処理部D102が行う発生時マスク処理の処理例を示すフローチャートである。
【図９】マスク処理部D102が行う発生時被マスク処理の処理例を示すフローチャートである。
【図１０】マスク処理部D102が行う復旧時被マスク処理の一例を示すフローチャートである。
【図１１】Delay/Stretch処理部D103が行うDelay/Stretch処理の一例を示すフローチャートである。
【図１２】Delay/Stretch処理部D103が行うタイマ満了処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
[本発明の第１の実施の形態]
図１を参照すると、本発明にかかるアクセス制御装置の第１の実施の形態は、割り込み検出部D101と、マスク処理部D102と、前方/後方保護処理部（Delay/Stretch処理部）D103と、ディスク装置などの記憶装置D104とから構成されている。
【００１４】
記憶装置D104は、マトリクス表記憶部D105と、リスト記憶部D106と、アラーム状態記憶部D107と、チェーン記憶部D108とを備えている。
【００１５】
マトリクス表記憶部D105には、アラーム間のマスク関係を示すマトリクス表が記録される。リスト記憶部D106には、マスク処理部D102によって生成されたマスク要因リスト及び被マスク要因リストが記録される。アラーム状態記憶部D107には、マスク処理部D102によってマスク処理が行われる前の各アラームの状態（発生または未発生）と、マスク処理が行われた後の各アラームの状態とが記録される。チェーン記憶部D108には、Delay/Stretch処理部D103によってDelay中アラームチェーン及びStretch中アラームチェーンが記録される。
【００１６】
割り込み制御部D101は、状態変化の発生したアラームを検出し、そのアラームを一意に識別する識別情報と変化後のアラーム状態とを含んだアラーム変化通知をマスク処理部D102に対して出力する。
【００１７】
図２を参照すると、割り込み検出部D101は、ハードウェアによって実現される割り込み生成部D201と、ソフトウェアによって実現される割り込み通知部D202と、CPU(Central Processing Unit)とを含んでいる。
【００１８】
ハードウェアによって実現される割り込み生成部D201は、FPGA(Field Programmable Gate Array)と、LSI(Large Scale Integration)とを含んでいる。LSIは４ビット構成のアラームレジスタR1および変化検出レジスタR2を備え、FPGAは４ビット構成の変化検出レジスタR3を備えている。
【００１９】
LSI内のアラームレジスタR1の各ビットは、それぞれ異なるアラーム（障害）に対応しており、対応するアラームが発生しているか否かを示している。尚、本実施の形態では、“１”がアラームの発生している状態を、“０”がアラームの発生していない状態を示している。また、変化検出レジスタR2の第１ビット〜第４ビットは、それぞれアラームレジスタR1の第１ビット〜第４ビットに対応しており、対応するビットが変化したか否かを示している。
【００２０】
FPGA内の変化検出レジスタR3の各ビットは、それぞれ異なるLSIに対応しており、対応するLSI内のアラームレジスタR1の内容が変化したか否かを表示している。なお、図２においては、変化検出レジスタR3の第２ビットに対応するLSIしか図示していないが、変化検出レジスタR3のそれぞれのビットに対応するLSIが存在している。つまり、FPGA内の１個の変化検出レジスタR3が、複数のLSI内の変化検出レジスタR2の状態を集約している。このようにすることにより、各LSIからCPUに対して直接割り込みをかける場合に比較して、CPUへの割り込み配線数を削減することができる。
【００２１】
また、割り込み生成部D201と割り込み通知部D202との間に位置するCPUは、４ビット構成の変化検出レジスタR4を備えている。変化検出レジスタR4の各ビットは、それぞれ異なるFPGAに対応している。そして、対応するFPGA内の変化検出レジスタR3の４ビットの内の何れかのビットが変化有りを示す値（本実施の形態では“１”）になると、該当するビットが変化有りを示す値（“１”）になる。また、CPUは、変化レジスタR4の何れかのビットが“１”になると、割り込み通知部D202に対して割り込み検出を通知する。
【００２２】
一方、ソフトウェアで実現される割り込み通知部D202は、割り込みハンドラと、割り込み処理タスクとを含んでいる。
【００２３】
割り込みハンドラは、CPUによって割り込みが検出されると、割り込み処理タスクに対して割り込み通知を行う。
【００２４】
割り込み処理タスクは、状態変化レジスタR2〜R4及びアラームレジスタR1の内容に基づいて、状態が変化したアラームを認識し、そのアラームを示す識別情報（アラーム識別情報）と変化後のアラーム状態を示す情報（アラーム状態情報）とを含んだアラーム変化通知をマスク処理部D102に対して出力する。
【００２５】
より具体的には、割り込み処理タスクは、割り込みハンドラからの割り込み通知を受けると、先ず、CPU内の変化検出レジスタR4を参照し、その何ビット目に“１”が立っているかを調べる。次に、“１”が立っているビット（変化検出レジスタR4のビット）に対応するFPGA内の変化検出レジスタR3を参照し、その何ビット目に“１”が立っているかを調べる。その後、“１”が立っているビット（変化検出レジスタR3のビット）に対応するLSI内の変化検出レジスタR2を参照し、その何ビット目に“１”が立っているかを調べる。更に、アラームレジスタR1の各ビットの内、変化検出レジスタR2の対応するビットが“１”となっているビットについて、その値を求める。
【００２６】
そして、求めた値が“１”である場合は、アラーム発生状態を示すアラーム状態情報とアラーム識別情報とを含んだアラーム変化通知をマスク処理部D102に対して出力する。これに対して、求めた値が“０”である場合は、アラーム復旧状態を示すアラーム状態情報とアラーム識別情報とを含んだアラーム変化通知をアラーム処理部D102に対して出力する。その後、割り込み処理タスクは、上記参照した各変化検出レジスタR2〜R4をクリアする。尚、アラーム種別情報としては、例えば、内容が変化したアラームレジスタを示すレジスタ情報と、アラームレジスタの何ビット目が変化したのかを示すビット位置情報との組み合わせを使用することができる。本実施の形態では、割り込み検出処理部D101をハードウェアによる実現しているが、この部分をソフトウェアによる周期的な変化検出処理に置き換え、変化があったアラームのみをマスク処理部D102に通知することにより、ハードウェアに依存せずに機能を実現することが可能となる。
【００２７】
マスク処理部D102は、割り込み検出部D101からアラーム変化通知が渡されると、マトリクス表記憶部D105に記録されている、アラーム間のマスク関係を示すマトリクス表と、リスト記憶部D106に記録されているマスク要因リスト及び被マスク要因リストと、アラーム状態記憶部D107に記録されているアラームの実際の状態およびマスク後のアラームの状態とを利用したマスク処理を行う。
【００２８】
図３(a)を参照すると、マトリクス表記憶部D105に記録されているマトリクス表D301の一例が示されている。尚、図中のA1〜A4は、アラーム識別情報を示しており、以下の説明では、アラーム識別情報がA1〜A4のアラームをアラームA1~A4と記す場合がある。また、アラームA1〜A4の優先度は、アラームA1が最も高く、次に、アラームA2,A3が高く、アラームA4が最も低いとしている。同図(a)に示したマトリクス表の行にはマスク要因となるアラームの識別情報が設定され、列には被マスク要因となるアラームの識別情報が設定されている。そして、行と列の交点の要素に「×」が設定されているか否かによって、行に設定されているマスク要因と列に設定されている被マスク要因とが関連しているか否かを表している。例えば、マスク要因「アラームA1」については、被マスク要因「アラームA2,A3,A4」との交点に「×」が設定されているので、アラームA1はアラームA2〜A4をマスクすることを示している。また、例えば、被マスク要因「アラームA3」については、マスク要因「アラームA1」との交点に「×」が記載されているので、アラームA3はアラームA1によってマスクされることを示している。
【００２９】
図３(b),(c)を参照すると、マスク処理部D102がマトリクス表D301に基づいて作成したアラームA2についてのマスク要因リストD302及び被マスク要因リストD303が示されている。マスク要因リストD302には、アラームA2をマスクするアラームA1の識別情報が記録され、被マスク要因リストD303には、アラームA2によってマスクされるアラームA4の識別子が記録されている。
【００３０】
図４を参照すると、アラーム状態記憶部D107の一例が示されている。同図を参照すると、アラーム状態記憶部D107には、各アラームA1〜A4のアラーム状態と、マスク処理後のアラーム状態（マスク後アラーム状態）とが記録されている。アラーム状態およびマスク後アラーム状態は、「発生中」と「未発生」の２つの状態をとる。尚、初期状態においては、全てのアラーム状態およびマスク後アラーム状態は、「未発生」になっている。
【００３１】
マスク処理部D102は、割り込み検出部D101からアラーム変化通知がアラーム発生を通知するものである場合は、発生したアラームについてのマスク要因リストおよび被マスク要因リストを作成してリスト記憶部D106に記録する。マスク要因リストには、状態変化したアラームをマスクするアラームの識別情報が設定され、被マスク要因リストには、状態変化したアラームによってマスクされるアラームの識別情報が設定される。そして、マスク要因リストに識別情報が設定されているアラームが発生中であれば（アラーム状態記憶部D107に記録されている該当するアラーム状態が「発生中」であれば）、アラーム変化通知によって発生が通知されたアラームをマスクし、発生中でなければ、マスクをしない。具体的には、マスク要因リストに識別情報が設定されているアラームが発生中であれば、アラーム状態記憶部D107に記録されている該当アラームについてのマスク後アラーム状態を「未発生」とし、発生中でなければ、マスク後アラーム状態を「発生中」にする。更に、上記発生したアラーム以上の優先度を有しているアラームの中に発生中のアラームが存在するか否かを調べ、そのようなアラームが存在しない場合には、被マスク要因リストに識別情報が設定されているアラームの中に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」のアラームがあれば、アラーム状態記憶部D107に記録されている、上記アラームについてのマスク後アラーム状態を「未発生」とする。尚、各アラームの優先度は、例えば、記憶装置D104に各アラームの優先度を記録した優先度表を記録しておき、この優先度表を参照することにより求めることができる。
【００３２】
これに対して、アラーム変化通知がアラーム復旧を通知するものである場合には、復旧したアラームについての被マスク要因リストを作成してリスト記憶部D106に記録する。その後、上記復旧したアラーム以上の優先度を有しているアラームの中に発生中のアラームが存在するか否かを調べる。そして、そのようなアラームが存在しない場合には、被マスク要因リストに識別情報が設定されているアラームの中にアラーム状態が「発生中」のアラームがあれば、そのアラームについてのマスク後アラーム状態を「発生中」にする。
【００３３】
また、マスク処理部D102は、マスク後アラーム状態が変化したアラームの識別情報をDelay/Stretch処理部D103に渡す。
【００３４】
Delay/Stretch処理部D103は、マスク処理部D102から識別子が渡されたアラームについて、マスク後アラーム状態を利用したDelay処理あるいはStretch処理を行う。
【００３５】
より具体的には、Delay/Stretch処理部D103は、図５(a),(b)に示すDelay中アラームチェーンD501及びStretch中アラームチェーンD502を利用してDelay処理およびStretch処理を行う。
【００３６】
Delay中アラームチェーンD501には、マスク後アラーム状態が発生中に変化したアラームについての、満了時刻および識別情報（アラーム識別情報）が、満了時刻が早い順につながれている。Stretch中アラームチェーンD502には、マスク後アラーム状態が未発生に変化したアラームについての、満了時刻および識別情報（アラーム識別情報）が、満了時刻が早い順につながれている。
【００３７】
Delay/Stretch処理部D103は、マスク処理部D102からアラーム識別子が渡されると、この識別子によって特定されるアラームのマスク後アラーム状態が、発生中に変化したのか、それとも未発生に変化したのかを判定する。この判定は、アラーム状態記憶部D107を参照して行う。
【００３８】
そして、発生中に変化したと判定した場合には、そのアラームについての満了時刻および識別情報をDelay中アラームチェーンD501につなぐ。尚、満了時刻は、現在時刻に予め定められている所定時間を加算した時刻とする。また、アラームについての満了時刻および識別情報を、Delay中アラームチェーンD501の先頭につないだ場合には、Delayタイマ（図示せず）の発火時刻を、上記満了時刻に変更する。そして、Delayタイマの発火時に、DelayアラームチェーンD501の先頭から順に満了時刻をチェックし、満了時刻に達しているアラームについては、外部システムに対してアラームの発生報告を行う。
【００３９】
これに対して、未発生に変化したと判定した場合には、そのアラームについての満了時刻および識別情報をStretch中アラームチェーンD502につなぐ。満了時刻は、Delay中アラームチェーンにつなぐ場合と同様に、現在時刻の所定時間を加算した時刻とする。アラームについての満了時刻および識別情報をStretch中アラームチェーンD502の先頭につないだ場合には、Stretchタイマ（図示せず）の発火時刻を、上記満了時刻に変更する。そして、Stretchタイマの発火時に、StretchアラームチェーンD502の先頭から順に終了時刻をチェックし、満了時刻に達しているアラームについては、外部システムに対してアラームの復旧報告を行う。
【００４０】
尚、割り込み通知部D202、マスク処理部D102、および、Delay/Stretch処理部D103は、コンピュータによって実現可能であり、コンピュータによって実現する場合は、例えば次のようにする。コンピュータを割り込み通知部D202、マスク処理部D102、および、Delay/Stretch処理部D103として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、割り込み通知部D202、マスク処理部D102、および、Delay/Stretch処理部D103を実現する。
【００４１】
次に、本実施の形態の動作について図面を参照して詳細に説明する。
【００４２】
図６を参照すると、本実施の形態では、先ず、割り込み検出部D101によるアラーム検出処理が実行され（ステップC101）、次に、マスク処理部D102によるマスク処理が実行され（ステップC102）、最後に、Delay/Stretch処理部D103によるDelay/Stretch処理が実行される（ステップC103）。
【００４３】
ステップC101のアラーム検出処理では、図２に示す構成を有する割り込み検出部D101が、状態変化の発生したアラームを検出し、そのアラームを一意に識別する識別情報と変化後のアラーム状態とを含んだアラーム変化通知をマスク処理部D102に対して出力する。ここで、全ての割り込みを直接CPUに割り当てるのではなく、図２に示すように、FPGAにて複数の割り込み要因をビットマップ形式に集約することで、CPUへの割り込み配線数の削減を図り、且つ、ソフトウェアにて複数の割り込み要因をまとめて処理することが可能となる。
【００４４】
ステップC102のマスク処理では、マスク処理部D102が図７〜図１０のフローチャートに示す処理を実行する。
【００４５】
図７を参照すると、マスク処理部D102は、割り込み検出部D101からアラーム識別情報とアラーム状態とを含むアラーム変化通知が渡されると、アラーム状態が「発生中」になっているのか、それとも「未発生」になっているのかを判定する（ステップC201）。
【００４６】
そして、「発生中」になっている場合（ステップC201がYES）は、発生時マスク処理および発生時被マスク処理を順次実行する（ステップC202,C203）。これに対して、「未発生」になっている場合（ステップC201がNO）は、復旧時被マスク処理を実行する（ステップC204）。
【００４７】
ステップC202の発生時マスク処理では、図８のフローチャートに示す処理が実行される。
【００４８】
図８を参照すると、マスク処理部D102は、先ず、マトリクス表記憶部D105に記録されているマトリクス表に基づいて、アラーム変化通知中の識別情報によって特定されるアラーム（対象アラームと記す場合もある）についてのマスク要因リストを作成し、作成したマスク要因リストをリスト記憶部D106に記録する（ステップC301）。今、例えば、マトリクス表記憶部D105に記録されているマトリクス表が図３(a)に示すものであり、対象アラームがアラームA2を示すものであるとすると、アラームA2についてのマスク要因リストとして図３(b)に示すマスク要因リストD302が作成される。
【００４９】
次に、マスク処理部D102は、マスク要因リストに識別子が設定されているアラームの中に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」のものがあるか否かを調べる（ステップC302,C303）。
【００５０】
そして、そのようなアラームが存在する場合（ステップC303がYES）は、アラーム状態記憶部D107に記録されている対象アラームについてのマスク後アラーム状態を「未発生」にする（ステップC305）。つまり、対象アラームよりも優先度が高いアラームが発生している場合には、対象アラームはマスクされる。この発生時マスク処理により、発生時期が早く、優先度が高いアラームを優先的に管理者に提示することが可能になる。
【００５１】
これに対して、そのようなアラームが存在しない場合（ステップC302がYES）は、アラーム状態記憶部D107に記録されている対象アラームについてのマスク後アラーム状態を「発生中」にすると共に、対象アラームの識別情報をDelay/Stretch処理部D103に渡す（ステップC304）。
【００５２】
また、ステップC203の発生時被マスク処理では、図９のフローチャートに示す処理が行われる。
【００５３】
図９を参照すると、マスク処理部D102は、先ず、対象アラームについての被マスク要因リストを作成してリスト記憶部D106に記録する（ステップC401）。今、例えば、マトリクス表が図３(a)に示すものであり、対象アラームがアラームA2であるとすると、アラームA2に対する被マスク要因リストとして図３(c)に示す被マスク要因リストD303が作成されることになる。
【００５４】
次に、マスク処理部D102は、優先度が対象アラームの優先度以上のアラームの中に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」となっているアラームが存在するか否かを調べる（ステップC402）。
【００５５】
そして、そのようなアラームが存在する場合（ステップC402がYES）は、発生時被マスク処理を終了する。
【００５６】
これに対して、そのようなアラームが存在しない場合（ステップC402がNO）は、被マスク要因リストにアラーム識別情報が設定されているアラーム毎に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」になっているか否かを調べる（ステップC403,C404）。アラーム状態が「発生中」になっているアラームについては（ステップC404がYESとなったアラームについては）、アラーム状態記憶部D107に記録されている、そのアラームのマスク後アラーム状態を「未発生」にすると共に、そのアラームのアラーム識別情報をDelay/Stretch処理部D103に渡す（ステップC405）。そして、被マスク要因リストにアラーム識別情報が設定されている全てのアラームについて上記した処理を行うと（ステップC403がYES）、マスク処理部D102は、発生時被マスク処理を終了する。
【００５７】
また、ステップC204の復旧時被マスク処理では、図１０のフローチャートに示す処理が行われる。
【００５８】
図１０を参照すると、マスク処理部D102は、先ず、対象アラームについての被マスク要因リストを作成し、リスト記憶部D106に記録する（ステップC501）。その後、マスク処理部D102は、優先度が対象アラームの優先度以上のアラームの中に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」になっているアラームが存在するか否かを調べる（ステップC502）。
【００５９】
そして、そのようなアラームが存在する場合（ステップC502がYES）は、復旧時被マスク処理を終了する。
【００６０】
これに対して、そのようなアラームが存在する場合（ステップC502がNO）は、被マスク要因リストに識別情報が設定されているアラーム毎に、アラーム状態記憶部D107に記録されているアラーム状態が「発生中」になっているか否かを調べる（ステップC503,C504）。そして、アラーム状態が「発生中」になっているアラームについては、アラーム状態記憶部D107に記録されている、そのアラームについてのマスク後アラーム状態を「発生中」に変更すると共に、そのアラームの識別情報をDelay/Stretch処理部D103に渡す（ステップC505）。そして、被マスク要因リストのアラーム識別情報が設定されている全てのアラームについて上記処理を行うと（ステップC503がYESとなると）、マスク処理部D102は、復旧時被マスク処理を終了する。尚、マスク処理部D102は、発生時マスク処理の終了時には、リスト記憶部D106からマスク要因リストを削除し、発生時被マスク処理の終了時、および、復旧時被マスク処理の終了時には、リスト記憶部D106から被マスク要因リストを削除する。尚、本実施の形態では、ステップC202〜C204を実行するたびに、マトリクス表に基づいてマスク要因リスト、被マスク要因リストを作成するようにしているが、予め各アラームについてのマスク要因リスト、被マスク要因リストを作成し、リスト記憶部D106に記録しておくようにしてもよい。
【００６１】
以上が図６のステップC102で行われるマスク処理の詳細である。
【００６２】
ステップC102のマスク処理が終了すると、Delay/Stretch処理部D103によるDelay/Stretch処理が開始される（ステップC103）。ステップC103のDelay/Stretch処理では、図１１及び図１２のフローチャートに示す処理が行われる。
【００６３】
Delay/Stretch処理部D103は、マスク処理部D102からマスク後アラーム状態が変化したアラームの識別情報が送られてくると、アラーム状態記憶部D107を参照し、上記識別情報によって特定されるアラームのマスク後アラーム状態が「発生中」に変化したのか、それとも「未発生」に変化したのかを判定する（ステップC601）。
【００６４】
そして、「発生中」に変化したと判定した場合（ステップＳC601がYES）は、上記アラームの識別情報および満了時刻をチェーン記憶部D108上のDelay中アラームチェーンに組み込む（ステップC602）。ここで、アラームの満了時刻は、現在時刻に予め定められている時間を加算した時刻とする。その後、Delay/Stretch処理部D103は、アラームの識別情報および満了時刻をチェーンの先頭につないだのであれば、Delayタイマ（図示せず）に発火時刻を設定する（ステップC603）。ここで、発火時刻には、上記満了時刻と同じ時刻を設定する。
【００６５】
これに対して「未発生」に変化したと判定した場合（ステップC601がNO）は、上記アラームの識別情報及び満了時刻をチェーン記憶部D108上のStretch中アラームチェーンに組み込み、その後、アラームの識別情報および満了時刻をアラームの先頭につないだのであれば、Stretchタイマ（図示せず）に発火時刻を設定する。
【００６６】
そして、DelayタイマまたはStretchタイマが発火すると、Delay/Stretch処理部D103は、図１２のフローチャートに示す処理を行う。
【００６７】
Delayタイマが発火した場合（Delayタイマに設定した時刻になった場合）は、Delay中アラームチェーンの先頭につながれているアラームの満了時刻と現在時刻とを比較し、現在時刻がアラームの満了時刻を過ぎているか否かを判定する（ステップC701）。
【００６８】
そして、現在時刻がアラームの満了時刻を過ぎている場合（ステップC701がYES）は、保守管理装置などの外部システムに対してアラーム報告を行う（ステップC702）。具体的には、Delay中アラームチェーンの先頭につながれているアラームの識別情報を含むアラーム発生通知を外部システムに対して送信する。次に、Delay中アラームチェーンの先頭につながれているアラームの識別情報および満了時刻を削除し、その後、Delay中アラームチェーンにアラームの識別情報および満了時刻がつながれているか否かを判定する（ステップC704）。そして、つながれている場合は、ステップC701に戻って再び前述した処理と同様の処理を行い、つながれていなかった場合は、処理を終了する。
【００６９】
これに対して、現在時刻がアラームの満了時刻を過ぎていない場合（ステップC701がNO）は、Delay中アラームチェーンの先頭につながれているアラームの満了時刻をDelayタイマに設定した後（ステップC705）、処理を終了する。
【００７０】
また、Stretchタイマが発火した場合は、Stretch中アラームチェーンの先頭につながれているアラームの満了時刻が現在時刻を過ぎているか否かを判定する（ステップC701）。
【００７１】
そして、過ぎている場合（ステップC701がYES）は、外部システムに対してアラーム報告を行う。具体的には、Stretchアラームチェーンの先頭につながれているアラームの識別情報を含んだアラーム復旧報告を外部システムに対して送信する。次に、Stretch中アラームチェーンの先頭につながれているアラームの識別情報および満了時刻を削除し、その後、Stretch中アラームチェーンにアラームの識別情報および満了時刻がつながれているか否かを判定する（ステップC703,C704）。そして、つながれている場合（ステップC704がYES）は、ステップC701に戻って前述した処理と同様の処理を行い、つながっていない場合（ステップC704がNO）は、処理を終了する。
【００７２】
これに対して、現在時刻がアラームの満了時刻を過ぎていない場合（ステップC701がNO）は、Stretch中アラームチェーンの先頭につながれているアラームの満了時刻をStretchタイマに設定した後（ステップC705）、処理を終了する。
【００７３】
[第１の実施の形態の効果]
本実施の形態によれば、管理者に提示するアラームを優先度に基づいて絞り込む際、管理者に負担をかけることなく、発生しているアラームの中で、相対的に優先度の高いアラームを提示することが可能になる。その理由は、状態が未発生から発生中に変化したアラームが発生した際、上記アラームよりも優先度が高いアラームが発生している場合には、上記アラームをマスクするようにしているからである。
【００７４】
また、本実施の形態では、状態が未発生から発生中に変化したアラームが発生した場合には、上記アラームよりも優先度が低く、且つ、状態が発生中になっているアラームをマスクするようにしているので、管理者の提示するアラームを絞り込むことができる。
【００７５】
また、本実施の形態は、Delay/Stretch処理部D103を備えているので、バースト的なノイズをアラームとして処理してしまわないようにすることができる。
【符号の説明】
【００７６】
D101・・・割り込み検出部
D102・・・マスク処理部
D103・・・Delay/Stretch処理部
D104・・・記憶装置
D105・・・マトリクス表記憶部
D106・・・リスト記憶部
D107・・・アラーム状態記憶部
D108・・・チェーン記憶部
R1・・・アラームレジスタ
R2〜R4・・・変化検出レジスタ
【図１】
0005598971.tif 000002
【図２】
0005598971.tif 000003
【図３】
0005598971.tif 000004
【図４】
0005598971.tif 000005
【図５】
0005598971.tif 000006
【図６】
0005598971.tif 000007
【図７】
0005598971.tif 000008
【図８】
0005598971.tif 000009
【図９】
0005598971.tif 000010
【図１０】
0005598971.tif 000011
【図１１】
0005598971.tif 000012
【図１２】
0005598971.tif 000013