本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云
在上一篇《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 这个文件在上面的仓库中有一个打包好的,大家可以直接下载使用。
默认的它是用 jdk 1.8 编译的,如果你的 jdk 版本过低,建议自己下载代码,自己编译这个 jar 文件。
诊断效果
执行完,上面的命令后,会有诊断信息的 tab 页,里面会告诉我们分析结果。 例如下面的报告:
这是一个解释器的问题,就是jvm把字节码转化成机器码出错了。 引起这种情况的原因有很多,一般都是jdk的bug 可以更换不同的jvm模式 例如-XInt,纯解释模式 在运行过程信息中有编译情况,可以查看具体编译到谁出错了 可以通过排除编译这些类来试试
很惊奇吧,全中文内容。傻瓜也能看懂。
最后说一下,虽然有工具可以帮助我们,但是工具不是万能的。只有自己写好代码,多学习,多进步,拥有扎实的技术实力才能笑看一切众生!
最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!