您的位置:首页 > 编程语言 > Java开发

jvm 生成 javacore 和 heapdump 文件

2017-01-03 13:10 369 查看
想要了解更多,加QQ群72132378

一、标准的SUN/Oracle JVM

当内存溢出时生成heapdump文件配置如下

-Xloggc:${目录}/temp_gc.log           (GC日志文件)

-XX:+HeapDumpOnOutOfMemoryError       (内存溢出时生成heapdump文件)

-XX:HeapDumpPath=${目录}              (heapdump文件存放位置)

如果要即时动态生成heapdump文件可以使用jmap命令,jdk6.0已取消了-XX:+HeapDumpOnCtrlBreak配置参数通过ctrl+break的方式。

jmap -dump:format=b,file=temp_heapdump.hprof <pid>

二、HP JVM

-Xverbosegc:file=${目录}/temp_gc.log  (GC日志文件)

-XX:+HeapDumpOnOutOfMemoryError       (内存溢出时生成heapdump文件)

-XX:+HeapDumpOnCtrlBreak              (可以通过ctrl+break组合键动态生成heapdump文件)

-XX:HeapDumpPath=${目录}              (heapdump文件存放位置)

三、IBM JVM

非windows操作系统环境中

-XverboseGClog: ${目录}/temp_gc.log   (GC日志文件)

-Xdump:heap:events=user,file=${目录}/pid%uid%pid.phd

表示可以根据需要通过kill -3 <pid>产生DUMP文件,%uid和%pid为变量

windows操作系统环境中

启动wsadmin,进入wsadmin环境
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
wsadmin> $AdminControl invoke $jvm generateHeapDump
wsadmin> $AdminControl invoke $jvm dumpThreads
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: