jvm hs_err_pid.log 文件分析工具 CrashAnalysis 使用教程

JAVA herman 2238浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog,发送下载链接帮助你免费下载!
本博客日IP超过1800,PV 2600 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog,之前的微信号好友位已满,备注:返现
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领

在上一篇《jvm crash(崩溃)文件 hs_err_pid.log 分析教程》中,我们可以看到 jvm crash 后生成的 hs_err_pid.log 文件非常的复杂,非常的难懂!那么有没有一款工具能帮助我们来分析它呢?且看本文给你推荐的这款工具 CrashAnalysis 的用法。

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}

是不是用起来比较自己看 hs_err_pid.log 文件简单多了。

CrashAnalysis-1.0-SNAPSHOT.jar 这个文件在上面的仓库中有一个打包好的,大家可以直接下载使用。

CrashAnalysis

默认的它是用 jdk 1.8 编译的,如果你的 jdk 版本过低,建议自己下载代码,自己编译这个 jar 文件。

诊断效果

执行完,上面的命令后,会有诊断信息的 tab 页,里面会告诉我们分析结果。 例如下面的报告:

这是一个解释器的问题,就是jvm把字节码转化成机器码出错了。 引起这种情况的原因有很多,一般都是jdk的bug 可以更换不同的jvm模式 例如-XInt,纯解释模式 在运行过程信息中有编译情况,可以查看具体编译到谁出错了 可以通过排除编译这些类来试试

很惊奇吧,全中文内容。傻瓜也能看懂。

最后说一下,虽然有工具可以帮助我们,但是工具不是万能的。只有自己写好代码,多学习,多进步,拥有扎实的技术实力才能笑看一切众生!

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加QQ1群:135430763(2000人群已满),QQ2群:454796847(已满),QQ3群:187424846(已满)。QQ群进群密码:xttblog,想加微信群的朋友,之前的微信号好友已满,请加博主新的微信号:xttblog,备注:“xttblog”,添加博主微信拉你进群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作可添加助理微信进行沟通!

本文原文出处:业余草: » jvm hs_err_pid.log 文件分析工具 CrashAnalysis 使用教程