リアルタイム異常終了分析

プログラムが異常終了すると、異常終了処理 (MVS またはサブシステム) がインターセプトされ、その処理環境に適切な出口を経由して、Fault Analyzer が自動的に起動されます。使用可能な出口のタイプに関する詳細は、Fault Analyzer を呼び出すための出口を参照してください。

Fault Analyzer は、障害分析処理を実行して、異常終了に関する詳細を障害ヒストリー・ファイルに記録します。Fault Analyzer は、障害分析レポートをジョブに、要約を SYSLOG に書き込みます。また、分析レポートをミニダンプとともにヒストリー・ファイルに保管します。ミニダンプは、分析プロセス中に参照されたすべての仮想記憶域ページのコピーで構成されています。このオペレーション・モードは、「リアルタイム分析」と呼ばれます。 リアルタイム異常終了分析 に、このプロセスを図示します。
1. リアルタイム異常終了分析

主要コンポーネントを示す図 faoug001: ユーザー・アプリケーション、呼び出し出口、SYSMDUMP、障害分析レポート、ヒストリー・ファイルおよび syslog。

リアルタイム障害分析レポート例について、詳細はレポート例を参照してください。

Fault Analyzer は、指定された TCB での最初の異常終了で呼び出しのみがされるように意図されています。

分析が正常終了したと Fault Analyzer が判断し、異常終了ジョブ・ステップに対して SYSMDUMP、SYSABEND、または SYSUDUMP が 指定された場合、Fault AnalyzerMVS にダンプを抑止するように指示を出します。

オプションの指定または JCL の変更を行わなくても、Fault Analyzer のリアルタイム起動について、ヒストリー・ファイルにミニダンプが書き込まれます。ミニダンプが抑止される例外には、次の 3 つがあります。
  • ページ数が、インストールで定義された制限を超える場合 (MaxMinidumpPages参照)。
  • 障害が別の障害と重複している場合 (NoDup参照)。
  • End Processing ユーザー出口がミニダンプの抑止を要求する場合 (終了処理ユーザー出口参照)。

ミニダンプは、処理環境で発生した障害の再分析を、MVS ダンプも書き込まれたかどうかにかかわらず許可します。

アプリケーションが異常終了しなければ、Fault Analyzer は処理リソースを消費しません。このため、Fault Analyzer は、アプリケーション開発、テスト、または実稼働環境のいずれにも適しています。

アプリケーション開発者および保守管理者に対して低レベルのシステム・ダンプやシステム・レベルのエラー・メッセージを解釈させる代わりに、障害分析レポートには、アプリケーション・コードの形で障害が記述されます。可能な場合は、レポートには異常終了が発生したソース・ステートメントや、(COBOL および PL/I の場合は) ステートメント内で使用されたデータの名前や値が引用されます。

一般的に、異常終了したプログラムの関連のコンパイラー・リスト (またはサイド・ファイル) がオンラインで入手可能な場合、アプリケーションの異常終了は、異常終了に関連したプログラムのソース・ステートメント・レベルまで分析されます (コンパイラー・リストまたはサイド・ファイルを選択する際に使用される基準については、コンパイラー・リストまたはサイド・ファイルの選択基準を参照してください)。リストが使用できなければ、マシン・インストラクションを逆アセンブルし、プログラム名とオフセットまで、問題が診断されます。

ほとんどの場合、Fault Analyzer が提供し、ジョブ出力に書き込まれる分析レポートで十分であり、問題判別を正しく行うためにこれ以上の障害情報は必要ありません。ただし、異常終了についてのさらに詳細な情報を取り出したい場合は、ISPF インターフェースを使用してバッチまたは対話式の再分析を開始し、障害の再分析を要求できます。