性能监控之常见 Java Heap Dump 方法
性能监控之常见 Java Heap Dump 方法
性能监控之常见 Java Heap Dump 方法 关键,今天去目录下面没有看到有heapdump.bin文件了。
从经验上来说,我们应该记得在运行 Java 应用程序时始终使用 HeapDumpOnOutOfMemoryError 参数。
在内存不足或内存异常的情况下,会生成heapdump文件。以下工具是在正常运行的情况下获取heapdump文件的方法。
1.jmap方式
格式:
jmap -dump:[live],format=b,file=<file-path> <pid>
demo:
jmap -dump:live,format=b,file=/usr/local/tomcat-auto-myProject-8081/logs/dump240513Jmap.hprof 9407
ps -ef | grep "项目名称" 可以查询获取pid(进程ID)
2.jcmd方式
格式:
jcmd <pid> GC.heap_dump <file-path>
demo:
jcmd 9407 GC.heap_dump dump2405132.hprof
##注意:生成的文件需要使用完整的路径
jcmd 9407 GC.heap_dump /usr/local/tomcat-auto-myProject-8081/logs/dump240513Jcmd.hprof
3.下载
sz dump240513Jmap.hprof 9407
sz dump240513Jcmd.hprof
4.本地MAT工具打开分析(MemoryAnalyzer.exe)