現在実行中の Java プログラム (ダウン中の可能性があります) に関するできるだけ多くの情報を含む zip ファイルを作成して、事後法医学分析を可能にしたい状況があります。現在 Java 5 にデプロイしていますが、Java 6 の機能も興味深いものです。
これまでのところ、私は考えました:
- プログラムで生成されたスレッド ダンプ。これは、Java 6 でうまく機能するようです。
- 過去 X 分間に記録されたログ イベント。現在、logback または java.util.logging を使用しています。
- 一部のシリアル化されたオブジェクト。
- 外部環境 - すべてのシステム プロパティ。
JVM 情報で他に役立つものはありますか?
一般的な方法でコール スタックを調べて引数を確認することは可能でしょうか? (または、これには JVMTI または同等のものが必要ですか)。これは IBM JVM であるため、jvisualvm と Attach API は使用できません。