在Eclipse和Tomcat(wtp)中处理webapp时,tomcat崩溃并创建一个文件:hs_err_pid20216.log
我尝试使用eclipse MAT来分析文件,但是MAT不能将文件识别为它可以处理的东西,我也尝试了DAT,它也是一样的。它不会显示在打开的文件对话框中。
它是什么类型的文件?
我应该用什么来分析它?
我是否必须对此文件进行更改,以便这些工具可以对其进行解析。
日志文件以GitHub gist
的形式提供更新:
有关如何处理hs_err_pidXYZ.log文件的更多信息,请参阅@Dan Cruz回复。好奇的是,崩溃的原因是杰克逊被一个循环关系(双向一对多)弄糊涂了,但这是另一个故事......
答案 0 :(得分:8)
它是什么类型的文件?
这是一个文本格式的HotSpot错误日志文件。
我应该用什么来分析它?
首先下载OpenJDK 6 source bundle。在错误日志中搜索热点*.cpp
文件中的字符串。查看源文件以获取有关错误日志包含内容的说明。
例如,使用OpenJDK 7源,您可以在os_linux.cpp
siginfo
os::print_siginfo()
方法(CPU中找到Registers
(操作系统过程信号信息)在os_linux_x86.cpp
等os::print_context()
方法中注册'值'。
我是否必须对此文件进行更改,以便这些工具可以解析它。
这是不可能的,因为Eclipse Memory Analyzer需要一个堆文件,HotSpot错误日志不是。
答案 1 :(得分:2)
这是一个文本文件。在编辑器中打开它并尝试理解它的含义。
答案 2 :(得分:0)
https://fastthread.io对文件进行了很好的描述性分析。它只需要上传它,它将提供以下项目: