実行中のプロセスのスナップショットをとりたい
今まで知らなかった 5 つの事項: Java のパフォーマンス・モニタリング、第 2 回
Java技術最前線 - 「Java SE 6完全攻略」第4回 Windowsでも利用できるようになった管理ツール:ITpro
この辺参考にやってみた。
※javaのPID=25596のとき
[root@hostname ~]# /usr/local/java/bin/jstack 25596 25596: Unable to open socket file: target process not responding or HotSpot VM not loaded The -F option can be used when the target process is not responding [root@hostname ~]# /usr/local/java/bin/jstack -F 25596 Attaching to process ID 25596, please wait... sun.jvm.hotspot.debugger.NoSuchSymbolException: Could not find symbol "gHotSpotVMTypeEntryTypeNameOffset" in any of the known library names (libjvm.so, libjvm_g.so, gamma_g) at sun.jvm.hotspot.HotSpotTypeDataBase.lookupInProcess(HotSpotTypeDataBase.java:390) at sun.jvm.hotspot.HotSpotTypeDataBase.getLongValueFromProcess(HotSpotTypeDataBase.java:371) at sun.jvm.hotspot.HotSpotTypeDataBase.readVMTypes(HotSpotTypeDataBase.java:102) at sun.jvm.hotspot.HotSpotTypeDataBase.<init>(HotSpotTypeDataBase.java:85) at sun.jvm.hotspot.bugspot.BugSpotAgent.setupVM(BugSpotAgent.java:568) at sun.jvm.hotspot.bugspot.BugSpotAgent.go(BugSpotAgent.java:494) at sun.jvm.hotspot.bugspot.BugSpotAgent.attach(BugSpotAgent.java:332) at sun.jvm.hotspot.tools.Tool.start(Tool.java:163) at sun.jvm.hotspot.tools.JStack.main(JStack.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at sun.tools.jstack.JStack.runJStackTool(JStack.java:118) at sun.tools.jstack.JStack.main(JStack.java:84) Debugger attached successfully. jstack requires a java VM process/core!
なんか一部ライブラリが足りないよう?
本番稼働中のサーバなので、
なんか追加するには怖いので断念。。。