(57)【要約】【課題】  障害が起こった場合、障害となった要因と関数の呼び出し状況をみて、同じ障害かどうかを判断し、同じ原因の障害の場合にのみ障害情報ファイルが書き出されない障害情報管理システムを提供する。【解決手段】  コンピュータシステムのプロセス異常時に自動的に生成される障害情報を含む情報ファイルを管理する障害情報管理システムにおいて、プロセス異常時に障害情報を含む情報ファイルを生成するよう要求するダンプ要求手段と、ダンプ要求手段からの要求によって障害情報を含む情報ファイルを生成するシステムダンプ採取部と、システムダンプ採取部で生成された障害情報を含む情報ファイルを記憶する記憶部と、以前の障害情報を含む以前の情報ファイルを記憶する外部記憶装置とを有している。【選択図】      図１
2016057658.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムのプロセス異常時に自動的に生成される障害情報を含む情報ファイルを管理する障害情報管理システムにおいて、
前記プロセス異常時に前記障害情報を含む前記情報ファイルを生成するよう要求するダンプ要求手段と、
前記ダンプ要求手段からの要求によって前記障害情報を含む前記情報ファイルを生成するシステムダンプ採取部と、
前記システムダンプ採取部で生成された前記障害情報を含む前記情報ファイルを記憶する記憶部と、
以前の障害情報を含む以前の情報ファイルを記憶する外部記憶装置と、
を有し、
前記外部記憶装置は、前記コンピュータシステムに少なくとも１台具備され、前記コンピュータシステムを構成するそれぞれのコンピュータから、プロセス異常時に自動的に生成される前記障害情報を記憶し、
前記システムダンプ採取部は、前記障害情報と前記以前の障害情報の内容を比較して一致するかどうかを判定するダンプファイル出力判定手段を有していることを特徴とする障害情報管理システム。
【請求項２】
前記システムダンプ採取部は、前記ダンプファイル出力判定手段の判定結果が一致しない場合は、前記障害情報を含む前記情報ファイルを前記外部記憶装置へ記憶させることを特徴とする請求項１に記載の障害情報管理システム。
【請求項３】
前記障害情報は、障害発生までの命令の履歴を表すトレースバック情報を含んでいることを特徴とする請求項１または２に記載の障害情報管理システム。
【請求項４】
前記外部記憶装置は、前記コンピュータシステムのプロセス異常時に自動的に生成される前記障害情報を重複することなく記憶していることを特徴とする請求項１から３のうち１に記載の障害情報管理システム。
【請求項５】
コンピュータシステムのプロセス異常時に自動的に生成される障害情報を含む情報ファイルを管理する障害情報管理システムの障害情報管理方法において、
前記プロセス異常時に前記障害情報を含む前記情報ファイルを生成するよう要求するステップと、
ダンプ要求手段からの要求によって前記障害情報を含む前記情報ファイルを生成するステップと、
システムダンプ採取部で生成された前記障害情報を含む前記情報ファイルを記憶するステップと、
以前の障害情報を含む以前の情報ファイルを記憶するステップと、
を有し、
外部記憶装置は、前記コンピュータシステムに少なくとも１台具備され、前記コンピュータシステムを構成するそれぞれのコンピュータから、プロセス異常時に自動的に生成される前記障害情報を記憶するステップを有し、
システムダンプ採取部は、前記障害情報と前記以前の障害情報の内容を比較して一致するかどうかを判定するステップを有していることを特徴とする障害情報管理方法。
【請求項６】
前記システムダンプ採取部は、ダンプファイル出力判定手段の判定結果が一致しない場合は、前記障害情報を含む前記情報ファイルを記憶させるステップを有することを特徴とする請求項６に記載の障害情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害情報管理システムおよび障害情報管理方法に関し、特に同一の障害が発生した場合の障害情報管理システムおよび障害情報管理方法に関する。
【背景技術】
【０００２】
一般に、コンピュータネットワーク上のノードにおいて障害が発生した場合は、ノードのメモリイメージ（コンテキスト、スタック、データ）を障害情報としてダンプファイルに出力し、そのダンプファイルを解析することによって障害の原因を解析するという方法がとられている。ダンプファイルは、ダンプ領域に作成され、ダンプ領域は、１つまたは複数のノードによって共有される場合がある。
【０００３】
通常、障害発生後は、ノードを再立ち上げする運用となっているため、複数のノードでダンプ領域を共有している場合に、あるノードが立ち上げ中に障害が発生すると、障害−ダンプ採取−再立ち上げ−障害を繰り返す可能性があり、繰り返し同じダンプファイルが採取される可能性がある。
【０００４】
また、ジョブ運用をおこなっている場合、障害後の再立ち上げ時には、障害で実行を中断されたジョブを再実行する運用になっている場合が多い。このような場合に、そのジョブが原因となり障害が発生する場合に、障害−ダンプ採取−再立ち上げ−ジョブ再実行−障害を繰り返す可能性があり、繰り返し同じダンプファイルが採取される可能性がある。
【０００５】
また、ＭＰＩ（Ｍｅｓｓａｇｅ  Ｐａｓｓｉｎｇ  Ｉｎｔｅｒｆａｃｅ）のような分散並列プログラムは、同期を取って、各ノードで同じ処理が実行されるケースがほとんどであるため、複数のノードで同じ障害が発生し、複数ノードでダンプ領域を共有していた場合、複数ノードから、同じダンプファイルが採取される可能性がある。
【０００６】
このようなケースでは、ダンプ領域の残り容量が少なくなっているときに、他のノードで別な障害が発生した場合に、ダンプ容量が足らずに必要な情報が採取できない可能性がある。さらに、複数のダンプファイルの解析に時間がかかるという問題もある。
【０００７】
上記に関連する技術として、特許文献１には、外部記憶装置に保管されている情報ファイルの数が予め設定された上限値に達せず、同じ情報ファイルが既に外部記憶装置に存在せずかつ情報ファイルが解析可能な完全なファイルである場合、生成された情報ファイルを外部記憶装置に保管し、それ以外の場合に生成された情報ファイルを削除する技術が開示されている。
【０００８】
また、特許文献２には、ノードから受信した障害情報に対して所定の類似条件を満たす障害情報が格納されているか否かを判断し、その判断結果に応じて、ノードにおける障害発生時にプロセスによって利用されていた主記憶装置の内容を含む障害解析情報の出力可否を表す出力可否情報をノードに送信し、受信された障害情報に対して所定の類似条件を満たす障害情報が障害情報格納部に格納されていないと判断された場合、受信された障害情報を障害情報格納部に登録する技術が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１１−０２４９６６号公報
【特許文献２】特開２０１４−０９６０３１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１は、同じプロセスが繰り返し再実行した場合で、かつ繰り返し障害にあった場合、この繰り返し障害にあった障害箇所が、必ずしも前に発生した障害と一緒かどうかは判断しておらず、単なる予測として、同じプロセスが繰り返し傷害にあったならば、同じ問題と判断している。過去の障害と次の障害では違う問題が起きている可能性もあるが、そのような場合も個数制限によって、障害情報ファイルが書き出されない可能性がある、という課題があった。
【００１１】
また、特許文献２は、ノード間通信を前提として、ノード間通信を使った同一分散並列プログラム内で、同種の障害解析ファイルを書き出さないというものであり、複数システムでのダンプ領域を共有している場合の同種の障害解析ファイルを書き出しているわけではない、という課題があった。
【００１２】
本発明の目的は、この点を鑑みたものであり、障害が起こった場合、同じ障害かどうかを判断し、同じ原因の障害の場合に障害情報ファイルが書き出されないようにする障害情報管理システムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明では、上記課題を解決するために、コンピュータシステムのプロセス異常時に自動的に生成される障害情報を含む情報ファイルを管理する障害情報管理システムにおいて、プロセス異常時に障害情報を含む情報ファイルを生成するよう要求するダンプ要求手段と、ダンプ要求手段からの要求によって障害情報を含む情報ファイルを生成するシステムダンプ採取部と、システムダンプ採取部で生成された障害情報を含む情報ファイルを記憶する記憶部と、以前の障害情報を含む以前の情報ファイルを記憶する外部記憶装置とを有し、外部記憶装置は、コンピュータシステムに少なくとも１台具備され、コンピュータシステムを構成するそれぞれのコンピュータから、プロセス異常時に自動的に生成される障害情報を記憶し、システムダンプ採取部は、障害情報と以前の障害情報の内容を比較して一致するかどうかを判定するダンプファイル出力判定手段を有していることを特徴としている。
【００１４】
また、本発明では、コンピュータシステムのプロセス異常時に自動的に生成される障害情報を含む情報ファイルを管理する障害情報管理システムの障害情報管理方法において、プロセス異常時に障害情報を含む情報ファイルを生成するよう要求するステップと、ダンプ要求手段からの要求によって障害情報を含む情報ファイルを生成するステップと、システムダンプ採取部で生成された障害情報を含む情報ファイルを記憶するステップと、以前の障害情報を含む以前の情報ファイルを記憶するステップとを有し、外部記憶装置は、コンピュータシステムに少なくとも１台具備され、コンピュータシステムを構成するそれぞれのコンピュータから、プロセス異常時に自動的に生成される障害情報を記憶するステップを有し、システムダンプ採取部は、障害情報と以前の障害情報の内容を比較して一致するかどうかを判定するステップを有していることを特徴としている。
【発明の効果】
【００１５】
本発明によれば、障害が起こった場合、障害となった要因と関数の呼び出し状況をみて、同じ障害かどうかを判断し、同じ原因の障害の場合に障害情報ファイルが書き出されないようにする障害情報管理システムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施の形態における障害情報管理システムの構成を示すブロック図である。
【図２】本発明の第１の実施の形態における障害情報の内容の１例を示す図である。
【図３】本発明の第１の実施の形態における障害情報管理システムの動作を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（実施形態）
図１を用いて、本発明の実施形態の構成を説明する。図１は、本発明の実施形態における障害情報管理システムの構成を示すブロック図である。
【００１８】
図１において、障害情報管理システム１０は、ノード１０００と、ダンプ要求手段１００とシステムダンプ採取部２００と、主記憶部３００と、外部記憶装置２０の中のダンプ領域部２０００とから構成されている。システムダンプ採取部２００は、ダンプファイル出力判定手段２１０と、ダンプファイル出力部２２０と、障害トレースバック情報採取部２３０とを有している。主記憶部３００は、障害が起こった場合の障害情報を、障害トレースバック情報採取部２３０の要求により障害トレースバック情報３１０として記憶する。ダンプ領域部２０００には、情報ファイルとして複数のダンプファイル４００−１、・・・４００−ｎがあり、さらに、それぞれのダンプファイルには、ダンプ障害トレースバック情報４１０−１、・・・４１０−ｎが格納されている。複数のノードがある場合も、外部記憶装置２０のダンプ領域部２０００に、まとめてダンプファイルが保存されている。
【００１９】
図２は、障害トレースバック情報３１０の詳細を表した図である。障害トレースバック情報３１０には、カーネル情報、障害となった要因、障害となったコマンド名と、障害に至るまでの関数の呼び出し状況（トレースバック情報）から構成される。トレースバック情報は、障害発生までの命令の履歴を表している。
【００２０】
例えば、図２の上から３行目までは、カーネル情報で、Ｋｎｌｉｎｆｏは、どこで作成されたカーネルかを示し、Ｃａｕｓｅは、どんな原因で障害が発生したかを示している。ｃｏｍｍは、コメント欄である。
【００２１】
次に、４行目から下は、関数の呼び出し状況（トレースバック情報）であり、関数のアドレスと呼び出された関数を表示している。上の行ほど、新しく呼び出されていることを示している。この障害となった要因と関数の呼び出し状況（トレースバック情報）が同じならば、同じ障害であると推定できる。なお、ダンプファイル４００−１には、この障害トレースバック情報３１０が、ダンプ障害トレースバック情報４１０−１として書き込まれる。
【００２２】
図１、図３を用いて本発明の実施形態の動作について詳細に説明する。
【００２３】
図３は、本発明の実施形態の動作を示すフローチャートである。
【００２４】
まず、ノード１０００において障害が発生すると（Ｓ３０１）、ダンプ要求手段１００が、システムダンプ採取部２００のダンプファイル出力判定手段２１０に障害発生を通知する（Ｓ３０２）。ダンプファイル出力判定手段２１０は、障害トレースバック情報採取部２３０に通知を出し、障害トレースバック情報３１０を作成するよう依頼する（Ｓ３０３）。障害トレースバック情報採取部２３０は、主記憶部３００中の障害情報から、障害トレースバック情報３１０を作成する（Ｓ３０４）。
【００２５】
ダンプファイル出力判定手段２１０は、ダンプ領域部２０００中のダンプファイル４００−１を検索し、ダンプファイル４００−１中のダンプ障害トレースバック情報４１０−１を読み込む（Ｓ３０５）。ダンプファイル出力判定手段２１０は、障害トレースバック情報３１０と、ダンプ障害トレースバック情報４１０−１を比較し、障害トレースバック情報３１０と同じ障害原因、同じトレースバック情報を持つ情報がないかどうか調査する（Ｓ３０６）。
【００２６】
同じトレースバック情報を持つ情報がない場合は（Ｓ３０７のＮｏ）、ダンプファイル出力判定手段２１０は、ダンプ領域部２０００中の次のダンプファイル４００−２を検索し（Ｓ３０８のＹｅｓ）、同様にダンプ障害トレースバック情報４１０−２を読み込み、障害トレースバック情報３１０と、ダンプ障害トレースバック情報４１０−２を比較する（Ｓ３０５からＳ３０７）。
【００２７】
ダンプ領域部２０００中のすべてのダンプファイル４００−１から４００−ｎを検索し、すべてのダンプファイル４００−１から４００−ｎのダンプ障害トレースバック情報４１０−１から４１０−ｎが、障害トレースバック情報３１０と一致しない場合（Ｓ３０７のＮｏ、Ｓ３０８のＮｏ）、ダンプファイル出力部２２０により、ダンプ障害トレースバック情報４１０−（ｎ＋１）を加えたダンプファイル４００−（ｎ＋１）を、ダンプ領域部２０００に出力する（Ｓ３０９）。
【００２８】
逆に、同じトレースバック情報を持つ情報がある場合は（Ｓ３０７のＹｅｓ）、新たなダンプファイルを出力せずに終了する（Ｓ３１０）。
【００２９】
以上、説明してきたように、本発明の実施形態によれば、障害が起こった場合、障害となった要因と関数の呼び出し状況をみて、同じ障害かどうかを判断し、同じ原因の障害の場合にのみ障害情報ファイルが書き出されない障害情報管理システムを提供することができる。
【００３０】
本発明の実施形態によれば、重複するダンプファイルを保存しなくてもよいので、ダンプ領域のディスク容量を削減することができる。また、重複するダンプファイルを保存しないので、重複するダンプファイルを解析することなく解析作業の効率が良くなるという効果もある。
【００３１】
尚、本願発明は、上述の実施の形態に限定されるものではなく、本願発明の要旨を逸脱しない範囲で種々変更、変形して実施することが出来る。
【産業上の利用可能性】
【００３２】
本発明は、障害が発生した場合にダンプファイルが生成される障害情報管理システムに利用可能である。
【符号の説明】
【００３３】
１０    障害情報管理システム
２０    外部記憶装置
１００    ダンプ要求手段
２００    システムダンプ採取部
２１０    ダンプファイル出力判定手段
２２０    ダンプファイル出力部
２３０    障害トレースバック情報採取部
３００    主記憶部
３１０    障害トレースバック情報
４００−１〜４００−（ｎ＋１）    ダンプファイル
４１０−１〜４１０−（ｎ＋１）    ダンプ障害トレースバック情報
１０００    ノード（コンピュータ）
１００１    ノード（コンピュータ）
２０００    ダンプ領域部
【図１】
2016057658.tif 000003
【図２】
2016057658.tif 000004
【図３】
2016057658.tif 000005