如果进程崩溃并离开核心转储,或者我创建了一个核心转储,gcore那我该如何分析呢?
我希望能够使用jmap,jstack,jstat等也看到所有变量的值.
这样我就可以找到崩溃或冻结的JVM的原因.
chi*_*tom 42
好的,如果你用gcore或gdb创建了核心转储,那么你需要将它转换为一个叫做HPROF文件的东西.这些可以由VisualVM,Netbeans或Eclipse的Memory Analyzer Tool(以前称为SAP Memory Analyzer)使用.我推荐Eclipse MAT.
要转换文件,请使用命令行工具jmap.
# jmap -dump:format=b,file=dump.hprof /usr/bin/java core.1234
Run Code Online (Sandbox Code Playgroud)
哪里:
dump.hprof是您要创建的hprof文件的名称
/ usr/bin/java是生成核心转储的java二进制版本的路径
core.1234是您的常规核心文件.
小智 5
也许VisualVM可以提供帮助(还没有机会亲自尝试).链接:
http://java.sun.com/javase/6/docs/technotes/guides/visualvm/coredumps.html
| 归档时间: |
|
| 查看次数: |
141946 次 |
| 最近记录: |