Java ダンプ・イベントからの Fault Analyzer の起動
Java™ -Xdump 環境スイッチを使用して、例外の発生時に TDUMP を取り、その TDUMP を Fault Analyzer に渡して分析レポートを生成することができます。-Xdump 設定の使用について詳しくは、https://www.ibm.com/docs/en/sdk-java-technology/8?topic=options-xdump にアクセスしてください。この解説書では、ダンプを起動できる Java™ 内部イベントおよび適用できるフィルターについて説明しています。
以下のセットアップは、NullPointerException または SocketException に関する Fault Analyzer レポートを取得するための -Xdump の使用例です。
java -Xdump:system:events=throw+catch+uncaught,filter=*NullPointerException*,opts=IEATDUMP
-Xdump:system:events=throw+catch+uncaught,filter=*SocketException*,opts=IEATDUMP
-Xdump:tool:events=throw+catch+uncaught,filter=*NullPointerException*,
exec="tso 'idida dsn(%last) datasets(idihist(da.test.gui.hist))' "
-Xdump:tool:events=throw+catch+uncaught,filter=*SocketException*,
exec="tso 'idida dsn(%last) datasets(idihist(da.test.gui.hist))' " Java-program-name
opts=IEATDUMP を指定した「system」ダンプ・エージェントを使用して、ロー TDUMP を取り込みます。次に、同じイベントに対する「tool」ダンプ・エージェントが exec= オプションを使用して Fault Analyzer を呼び出し、dsn(%last) トークンを介して TDUMP を渡します。
Xdump:tool オプション内の「exec」は、要求されたイベントが起動されたときに呼び出すコマンドを Java™ に提供します。「exec」ストリングは、二重引用符で囲む必要があり、その結果 -Xdump ストリングが長くなるため、Java™ プログラムの実行に使用される BPXBATCH ジョブの STDPARM DD を使用してシーケンス全体を提供したほうが簡単な場合があります。
range サブオプションを使用すると、特定の例外について生成されるダンプの数を制限できます。上の例では、range 1..4 を指定すると、4 つの NullPointerException スロー・イベントまたは SocketException スロー・イベントについてのみダンプが生成され、それ以上は無視されます。このオプションは、例外がキャッチされて再スローされる場合に特に便利ですが、それ以降の例外は処理されないことになります。
priority サブオプションを使用すると、特定の順序でダンプを作成することができます。したがって、Java™ ダンプまたはヒープ・ダンプも必要な場合には、これらのダンプ時に Fault Analyzer が呼び出されるのを防止するために、TDUMP 以外のものは、Xdump system と Xdump tool の両方を合わせた優先順位より低いか、高いかのいずれかに設定してください。