java-dump文件【生成】【解析】

1, 前言

《春宵》[宋]苏轼
春宵一刻值千金,花有清香月有阴。
歌管楼台声细细,秋千院落夜沉沉。

2,生成dump

2.1 JVM的配置文件中配置:

例如:堆初始化大小,而堆最大大小
在应用启动时配置相关的参数 ** -XX:+HeapDumpOnOutOfMemoryError ** ,当应用抛出OutOfMemoryError时生成dump文件。
在启动的时候,配置文件在哪个目录下面:

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=目录+产生的时间.hprof
JVM启动时增加两个参数:
#出现 OOME 时生成堆 dump:
-XX:+HeapDumpOnOutOfMemoryError
#生成堆文件地址:
-XX:HeapDumpPath=/home/liuke/jvmlogs/

2.2 发现程序异常前通过执行指令,直接生成当前JVM的dmp文件,6214是指JVM的进程号

jmap -dump:file=文件名.dump [pid]
jmap -dump:format=b,file=serviceDump.dat 6214
ps –ef  | grep java
kill -3 pid

由于第一种方式是一种事后方式,需要等待当前JVM出现问题后才能生成dmp文件,实时性不高,第二种方式在执行时,JVM是暂停服务的,所以对线上的运行会产生影响。所以建议第一种方式。
首先查找到服务器的进程号(process id), 然后获取堆栈.
转载于

== 注意一定要谨慎, 一步不慎就可能让服务器进程被杀死! ==

3, jdk自带监控程序jvisualvm的使用解析

  • 如果用jmap -dump 生成的文件要
    您尝试打开的文件是 Head Dump 而不是 Core Dump 。
    请遵循以下步骤:
    Go to File > Load…
    Select the File Format: as Heap Dumps (*.hprof, .)
    Choose your file and click on Open.
find / -name jvisualvm # 查找位置

在这里插入图片描述

参考链接
参考链接

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值