一.安装jmap
第一次使用需要安装jmap命令。
1.安装openjdk-devel-debug
yum -y install java-1.8.0-openjdk-devel.x86_64
看好是以上命令而不是下面的。
yum install -y java-1.8.0-openjdk-devel-debug
成功后。
2.安装jmap
yum -y whatprovides '*/jmap'
成功后。
进入红框内,如果查看有jmap,发现安装成功。
二.使用jmap dump堆日志
查看所要dump的java程序pid。
ps -ef|grep java
执行以下命令。
jmap -dump:format=b,file=/heap.bin 61718
再在填写目录生成heap.bin文件(与hprof相同),然后就可以使用MAT进行分析了。
三.监控oom
但是这里有一个问题,当jmap时,应用暂停,这是生产环境不允许的,那么我们使用内存转储,当发生oom时,直接将日志转到硬盘中。
-XX:+HeapDumpOnOutOfMemoryError