生产环境,Java进程异常退出,无jvm错误日志,如何查找原因?
如题,线上centos64位系统, jdk1.6, 在负载极小的时间段,出现Java进程突然退出的现象,并且无任何错误日志(包括@AntonyBi提到的hs_err_pid.log)。请教如何分析定位并解决此问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
启动java时把输出重定向到文件,java xxx >> logfile 2>&1; echo $? >> logfile。另外有时java退出是coredump了,ulimit -c 把core打开。
这种情况一般都是程序崩溃了,所以在log日志中是看不到的。
但是在调用程序运行的所在目录下会看到hs_err_pid.log的文件,那个里面会崩溃时jvm的信息以及栈信息等,那个可以帮助你分析崩溃原因。
有的时候JNI出错会把整个进程全杀死 这个就看经验了。。
有没有请求日志,可以看到退出前最后一个请求是什么。多做一下压力测试,看看会不会崩溃。
sudo dmesg -T | grep "(java)"
不谢~