java进程老挂掉_Java进程突然挂掉排查分析手记(jvm bug)

本文记录了对一个Java进程频繁挂掉的问题进行的深入排查过程,涉及系统资源、OOM机制、应用程序日志以及JVM错误日志的检查。通过分析,确定问题是由于JVM的bug导致的,特别是JNI代码执行期间发生的致命错误。
摘要由CSDN通过智能技术生成

排查1:查看系统资源情况

1fae3487a3a3a0d83b0445d317118b7a.png

主要发现此刻CPU均突然增长,swap内存也有所增长但是并非资源耗尽的情况。此刻想到了Linux进行OOM-killer机制。

排查2:查核系统内核是否触发oom机制。

日志:/var/log/message --一般oom信息这里会找到,但是排查没有相关kill和内存信息。参考命令dmesg

了解:https://www.oracle.com/technetwork/articles/servers-storage-dev/oom-killer-1911807.html

排查3:java应用程序触发的oom

这个找了应用本身的log,发现并没有“java.lang.OutOfMemoryError: Java heap space”等信息

可查看JVM参数 -XX:+HeapDumpOnOutOfMemoryError 和 -XX:HeapDumpPath及是否产生相关dump,如果有则可

http://blog.51cto.com/renzhiyuan/2288355 之前分享的工具分析。 --本次查核没有,则继续分析。

排查4:JVM的bug导致

当jvm出现致命错误时,会生成一个错误文件 hs_err_pid.log。

参考:https://my.oschina.net/xionghui/blog/498785

重要信息:“SIGSEGV(0xb)”表示jv

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值