dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

一、获取JVM的dump文件的两种方式

在jvm启动的时候增加两个参数

1、-XX:+

HeapDumpOnOutOfMemoryError 出现OOME时生成 堆 dump

2、-XX:HeapDumpPath=/home/jvmlogs/ 红色是生成堆文件地址

发现程序异常通过执行指令,直接生成当前JVM的dump文件

1、jmap -dump:format=b,file=/home/admin/logs/heap.hprof 6214

其中红色的生成堆文件的保存地址,6214是进程的id(pid),format=b指定为二进制格式文件。heap如果比较大的话,就会导致这个过程比较耗时,并且执行的过程中为了保证dump的信息是可靠的,所以会暂停应用, 线上系统慎用。

二、查看jvm逻辑

1、命令:jmap -heap pid

显示堆的摘要信息,包括使用的GC算法、堆配置信息和各内存区域内存使用信息,如图

dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

2、命令:jstat -gc PID 毫秒数 刷新次数 查看垃圾回收GC的情况,包括fullGC次数和耗时

比如命令PID jstat -gc 12880 5000 20 PID12880,5秒刷新一次,只刷新20次

三、JVM内存溢出定位

打开位于jdk安装目录下的bin目录下的jvisualvm.exe

3.1、点击左上角的文件菜单,看到装入选中,找到自己的堆文件所在的位子,可以看见如下图的界面,更改文件类型,选择堆Dump文件,最后打开

dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

3.2、正常的堆文件与异常的堆文件对比

异常的:

dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

正常的:

dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

3.3、查看异常错误的线程

dump文件在哪个目录下怎么打开分析(文件分析工具介绍)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2305938578@qq.com 举报,一经查实,本站将立刻删除。
(0)
上一篇 2023年 8月 23日
下一篇 2023年 8月 23日

相关推荐