組み込みJVMプロファイラの出力を表示するツールはありますか?たとえば、次のようにしてJVMを起動します。-jentlib:hprofプロファイリング出力を表示するHPjmeterのようなグラフィカルツール
-agentlib:hprof=cpu=times,thread=y,cutoff=0,format=a,file=someFile.hprof.txt
これは、hprof( "JAVA PROFILE 1.0.1")形式で出力を生成します。
私は合理的な方法でこれらの出力ファイルを表示するHPjmeterを使用して、過去に成功を収めています。ただし、Sun JVMの現在のバージョンを使用して生成されたファイルは、HPjmeterでの現在のバージョンでロードに失敗何らかの理由:
java.lang.NullPointerException
at com.hp.jmeter.f.jb.a(Unknown Source)
at com.hp.jmeter.f.a.a(Unknown Source)
at com.hp.c.a.j.z.run(Unknown Source)
Exception in thread "HPeprofDataFileReaderThread" java.lang.AssertionError: null pointer exception from loader
at com.hp.jmeter.f.a.a(Unknown Source)
at com.hp.c.a.j.z.run(Unknown Source)
(なぜ彼らは無料の製品のためのバイトコードを難読化でしょう?!)
二つの質問はここから生じ:
- 誰もがこのHPjmeterでエラーの原因を知っていますか? (編集:はい - 下記参照)
- hprofファイルを読むための他のツールはありますか?そしてなぜ太陽からのものはないのですか(そこにいるのですか)?
私はEclipse TPTPを知っているし、他のツールは、オンザフライでJVMTIデータを監視することができますが、私が展開され、マシンが唯一のintalled JRE(ないJDK)を持っているので、事実の後HPROF生成されたファイルを処理できるソリューションを必要とします。
EDIT:非常に参考HPjmeterを開発者がheap=dump
ニーズがHPjmeterでのバグが修正されるまで一時的に-agentlib
オプションに含まれていることを示す私のquestion on an HP ITRC forumに答えました。この情報はHPjmeterを再び実行可能にしますが、他のツールが分かっているかどうかを確認するために質問を開いたままにします。
EDIT:バージョン4.0.00のHPjmeter(利用可能な05/2009)から、このバグは修正されました。
VisualVMは明らかに、hprofファイルから「ヒープダンプ」情報(プロファイリングデータではない)のみを読み込み、そのファイルを読み込むのをやりとりするように動作します。あなたはこれで成功しましたか?私は本当に何かを探しています> = HPJmeterは動作します:-) –
残念ながら私はまだそれを使用していません...それを認識しています。 Visual VMを使用してプロファイリングを試みたことがありますか(実際にオフラインビューアが必要なように聞こえます)。 – TofuBeer
ええ、確かにローカルでプロファイルするのに使うことのできるさまざまなツールがありますが、hprofファイルをオフラインで表示できるものがあればいいと思います。 HPJmeterは、私がそれを動作させることができれば、近いうちに閉じています。彼らがソースコードを配布したかったのです。 –