Java 如何分析 .mdmp 文件?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/3243386/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How do I analyze a .mdmp file?
提问by fastcodejava
I have java application that is crashing while in production. It doesn't do so in dev/QA. The jvm is creating a .mdmp file and a text file. How do I analyze the binary dump file? I googled but had no luck. We are using bea jrockit jvm 1.5 R27.
我有一个在生产中崩溃的 Java 应用程序。在开发/质量检查中没有这样做。jvm 正在创建一个 .mdmp 文件和一个文本文件。如何分析二进制转储文件?我用谷歌搜索但没有运气。我们正在使用 bea jrockit jvm 1.5 R27。
采纳答案by MicSim
The .mdmp
file is a Windows MiniDump file that you can only read with a debugger (like WinDbg). Typically you need the sources of the crashed application to really get some information out of the dump. So in your case you can't do much but contacting JRockit support.
该.mdmp
文件是一个 Windows MiniDump 文件,您只能使用调试器(如 WinDbg)读取。通常,您需要崩溃应用程序的来源才能真正从转储中获取一些信息。因此,在您的情况下,您只能联系 JRockit 支持。
Here a link to the Orace JRockit information about JVM crahes.
这里是指向有关 JVM 崩溃的Orace JRockit 信息的链接。
回答by chillitom
If you want to look at the heap of the crashed process you can use a tool that ships with the JDK called jmap
to extract a HPROF file and then load this into a memory analyser. Note also that some memory analyzers can load core dumps and Windows minidumps directly.
如果您想查看崩溃进程的堆,您可以使用 JDK 附带的工具jmap
来提取 HPROF 文件,然后将其加载到内存分析器中。另请注意,某些内存分析器可以直接加载核心转储和 Windows 小型转储。
Related issueand the jmap docs
If you want to see the state of the threads then you can use a tool called jstack
to print stack traces for every thread at the point the dump was created. jstack docs.
如果您想查看线程的状态,那么您可以使用一个名为的工具jstack
在创建转储时为每个线程打印堆栈跟踪。jstack 文档。