这篇文章将为大家详细讲解有关如何用CrashAnalysis工具实现jvm hs_err_pid.log 文件分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
CrashAnalysis
CrashAnalysis 是一款诊断工具。是某APM项目组成员编写,里面把常见的问题分类并且给出解决方案或者方向,帮助我们定位问题。 下面是这款工具的 github 地址:
https://github.com/xpbob/CrashAnalysis
CrashAnalysis 使用起来非常的简单和人性化。通过执行jar命令,把log作为参数输入 java -jar CrashAnalysis-1.0-SNAPSHOT.jar ${hs_err_pid.log}
java -jar CrashAnalysis-1.0-SNAPSHOT.jar ${hs_err_pid.log}
CrashAnalysis-1.0-SNAPSHOT.jar 这个文件在上面的仓库中有一个打包好的,大家可以直接下载使用。是不是用起来比较自己看 hs_err_pid.log 文件简单多了。
默认的它是用 jdk 1.8 编译的,如果你的 jdk 版本过低,建议自己下载代码,自己编译这个 jar 文件。
执行完,上面的命令后,会有诊断信息的 tab 页,里面会告诉我们分析结果。 例如下面的报告:
这是一个解释器的问题,就是jvm把字节码转化成机器码出错了。 引起这种情况的原因有很多,一般都是jdk的bug 可以更换不同的jvm模式 例如-XInt,纯解释模式 在运行过程信息中有编译情况,可以查看具体编译到谁出错了 可以通过排除编译这些类来试试。
关于如何用CrashAnalysis工具实现jvm hs_err_pid.log 文件分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。