2012-04-10 129 views
8

对在Eclipse和Tomcat(WTP),tomcat的崩溃web应用程序工作时,并创建一个文件:hs_err_pid20216.log如何分析JVM崩溃文件hs_err_pidXYZ.log

我试图使用Eclipse MAT来分析该文件,但MAT不会将文件识别为可以处理的文件,我也尝试过DAT,而且这是同样的事情。它不会显示在打开的文件对话框中。

它是什么样的文件?

我应该用什么来分析它?

我必须更改此文件,以便将有可能对这些工具来分析它。

日志文件可作为GitHub gist

UPDATE:

见@丹克鲁兹回答有关如何应对hs_err_pidXYZ.log文件的详细信息。奇怪的是,事故原因是杰克逊被周期性关系混淆(双向一对多),但这是另一回事......

回答

7

它是什么样的文件?

这是一个文本格式的HotSpot错误日志文件。

我应该用什么来分析它?

首先下载OpenJDK 6 source bundle。在错误日志中通过热点*.cpp文件搜索字符串。查看源文件,了解错误日志包含的内容。

例如,使用OpenJDK 7个的来源,可以发现在os_linux.cppRegisters(CPU的寄存器值)在os_linux_x86.cppos::print_context()方法os::print_siginfo()方法siginfo(操作系统进程信号信息)等

我必须做出改变这个文件sothat将有可能对这些工具来分析它。

因为Eclipse Memory Analyzer需要一堆文件,其中热点错误日志是不是这是不可能的。

2

这是一个文本文件。在编辑器中打开它并尝试理解它的含义。