线上java项目发生内存溢出,如何dump出来内存快照进行线下分析?

提问者:帅平 问题分类:微服务
线上java项目发生内存溢出,如何dump出来内存快照进行线下分析?

 您阅读本篇文章共花了: 

Jvm
1 个回答
凉眸似水°
凉眸似水°
启动java项目的时候,指定下对应的参数:
-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:ErrorFile=/logs/oom_dump/xxx.log -XX:HeapDumpPath=/logs/oom_dump/xxx.hprof

这里说下这个参数:ExitOnOutOfMemoryError 这个参数的意思是有时候即使发生了oom,其实程序还是可以直接使用的,不会崩掉,加了这个参数代表的就是出现oom就让程序直接崩掉,此时如果有监控或者k8s集群的话,就会自动重启项目。
发布于:1年前 (2023-03-10) IP属地:四川省
我来回答