您的位置:

javadump,java dump文件分析

本文目录一览:

java dump文件怎么生成和分析

jmap是java自带的工具

1. 查看整个JVM内存状态

jmap -heap [pid]

2. 查看JVM堆中对象详细占用情况

jmap -histo [pid]

3. 导出整个JVM 中内存信息,可以利用其它工具打开dump文件分析,例如jdk自带的visualvm工具

jmap -dump:file=文件名.dump [pid]

linux下java dump文件在哪儿

如果所使用的应用服务器是tomact,dump文件默认在catalina.out日志文件里;

如果不是则可以查看java环境变量设置的位置,也就知道在dump文件的位置了;

如果没有生成dump文件或者是生成错误,请按照一下几种方法来修复:

系统默认的core文件生成路径是 /var/logs,但是 /var/logs 目录并非系统自带的,系统初始安装默认自带的是/var/log,最终导致该系统出现core dump后并没能生成core文件,因此如何查询和修改系统默认的core dump文件生产路径呢?方法如下:

一. 查询core dump文件路径:

方法1:

# cat /proc/sys/kernel/core_pattern

方法2:

# /sbin/sysctl kernel.core_pattern

二. 修改core dump文件路径:

方法1:临时修改:修改/proc/sys/kernel/core_pattern文件,但/proc目录本身是动态加载的,每次系统重启都会重新加载,因此这种方法只能作为临时修改。

/proc/sys/kernel/core_pattern

例:echo ‘/var/log/%e.core.%p’ /proc/sys/kernel/core_pattern

方法2:永久修改:使用sysctl -w name=value命令。

例:/sbin/sysctl -w kernel.core_pattern=/var/log/%e.core.%p

宕机的时候,java dump 是什么东西?这句话又是什么意思?

对于大型 java 应用程序来说,再精细的测试都难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环境中进行重现。JVM 能够记录下问题发生时系统的运行状态并将其存储在转储(dump)文件中,从而为我们分析和诊断问题提供了重要的依据。常见的转储文件包括 Java Dump, Heap dump 和 System dump。

什么是java dump文件 怎么生成

java dump heap 是分配给实例类和数组对象运行数据区,所有java线程在运行期间共享heap中的数据。Java heap dump相当于java应用在运行的时候在某个时间点上打了个快照(snapshot)。

有java dump文件生成的方式如下:

1.使用$JAVA_HOME/bin/jmap -dump来触发,eg:jmap -dump:format=b,file=/home/longhao/heamdump.out

2.使用$JAVA_HOME/bin/jcosole中的MBean,到MBeancom.sun.managementHotSpotDiagnostic操作dumpHeap中,点击 dumpHeap按钮。生成的dump文件在java应用的根目录下面。

3.在应用启动时配置相关的参数 -XX:+HeapDumpOnOutOfMemoryError,当应用抛出OutOfMemoryError时生成dump文件。

4.使用hprof。启动虚拟机加入-Xrunhprof:head=site,会生成java.hprof.txt文件。该配置会导致jvm运行非常的慢,不适合生产环境。