目录

获取JVM的dump文件

两种方式

JVM启动增加参数

发生异常才生成

#出现 OOME 时生成堆 dump: 
-XX:+HeapDumpOnOutOfMemoryError
#生成堆文件地址:
-XX:HeapDumpPath=/home/liuke/jvmlogs/

执行jmap

发生异常前,直接生成

#6214是指JVM的进程号
jmap -dump:format=b,file=serviceDump.dat 6214

比较

[推荐]第一种方式是事后方式,需要等待当前JVM出现问题后才能生成dmp文件,实时性不高

第二种方式在执行时,JVM是暂停服务的,所以对线上的运行会产生影响

所以建议第一种方式