よく使うので健忘録。
JVM上のプロセス番号取得
$ $JAVA_HOME/bin/jps
5486 Jps
14691 jar
システムプロパティ表示
$ $JAVA_HOME/bin/jinfo -sysprops 14691
スレッドダンプ取得(ただのテキスト)
$ $JAVA_HOME/bin/jstack 14691 > threaddump.tdump
ヒープダンプ取得(バイナリ)
$ $JAVA_HOME/bin/jmap -dump:format=b,file=heap.hprof 14691
ローカルのMac, Win, LinuxでのGUIを使ったスレッドダンプやヒープダンプの比較
VisualVM
http://visualvm.java.net/
を使ってダウンロード後、開いてみる。比較機能も充実。
こと不具合究明に関しては、再現性さえ取れればJavaならたいていなんとかなると思う。これらデバッグツールのお陰で。最後はリモートデバッグとプロファイルもある。