系列中的上一篇
当前教程
Jhsdb - 分析崩溃的 JVM 的核心转储
系列中的下一篇

系列中的上一篇: Jdb - 修复 Java 程序中的错误

系列中的下一篇: Jinfo - 生成 Java 配置信息

Jhsdb - 分析崩溃的 JVM 的核心转储

 

介绍 Jhsdb

jhsdb - 附加到 Java 进程或启动事后调试器以分析崩溃的 Java 虚拟机 (JVM) 的核心转储内容

 

概要

jhsdb clhsdb [--pid pid | --exe executable --core coredump]

jhsdb hsdb [--pid pid | --exe executable --core coredump]

jhsdb debugd (--pid pid | --exe executable --core coredump) [options]

jhsdb jstack (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [options]

jhsdb jmap (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [options]

jhsdb jinfo (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [options]

jhsdb jsnap (--pid pid | --exe executable --core coredump | --connect [server-id@]debugd-host) [options]

pid

jhsdb 工具应附加到的进程 ID。该进程必须是 Java 进程。要获取机器上运行的 Java 进程列表,请使用 ps 命令,或者如果 JVM 进程未在单独的 docker 实例中运行,请使用 jps 命令。

executable

生成核心转储的 Java 可执行文件。

coredump

jhsdb 工具应附加到的核心文件。

[server-id@]debugd-host

可选的服务器 ID 和远程调试服务器 (debugd) 的地址。

options

jhsdb 模式的命令行选项。请参阅 debugd 模式的选项jstack 模式的选项jmap 模式的选项jinfo 模式的选项jsnap 模式的选项

注意

对于 debugdjstackjmapjinfojsnap 模式,必须提供 pidexecutablecore 文件对或 [server-id@]debugd-host

 

描述

您可以使用 jhsdb 工具附加到 Java 进程或启动事后调试器以分析崩溃的 Java 虚拟机 (JVM) 的核心转储内容。此命令是实验性的,不受支持。

注意

jhsdb 工具附加到活动进程会导致进程挂起,并且当调试器分离时,进程可能会崩溃。

jhsdb 工具可以以下列任何一种模式启动

jhsdb clhsdb

启动交互式命令行调试器。

jhsdb hsdb

启动交互式 GUI 调试器。

jhsdb debugd

启动远程调试服务器。

jhsdb jstack

打印堆栈和锁信息。

jhsdb jmap

打印堆信息。

jhsdb jinfo

打印基本 JVM 信息。

jhsdb jsnap

打印性能计数器信息。

jhsdb command --help

显示 command 可用的选项。

 

debugd 模式的选项

--serverid server-id

此调试服务器的可选唯一 ID。如果在同一台机器上运行多个调试服务器,则需要此选项。

--rmiport port

设置 RMI 连接器绑定的端口号。如果未指定,则使用随机可用的端口。

--registryport port

设置 RMI 注册表端口。此选项将覆盖系统属性 'sun.jvm.hotspot.rmi.port'。如果未指定,则使用系统属性。如果未设置系统属性,则使用默认端口 1099。

--hostname hostname

设置 RMI 连接器绑定的主机名。该值可以是主机名或 IPv4/IPv6 地址。此选项将覆盖系统属性 'java.rmi.server.hostname'。如果未指定,则使用系统属性。如果未设置系统属性,则使用系统主机名。

 

jinfo 模式的选项

--flags

打印 VM 标志。

--sysprops

打印 Java 系统属性。

无选项

打印 VM 标志和 Java 系统属性。

 

jmap 模式的选项

无选项

打印与 pmap 相同的信息。

--heap

打印 java 堆摘要。

--binaryheap

hprof 二进制格式转储 java 堆。

--dumpfile name

转储文件的名称。

--histo

打印 java 对象堆的直方图。

--clstats

打印类加载器统计信息。

--finalizerinfo

打印等待终结的对象的信息。

 

jstack 模式的选项

--locks

打印 java.util.concurrent 锁信息。

--mixed

如果平台允许,尝试打印 java 和本机帧。

 

jsnap 模式的选项

--all

打印所有性能计数器。


上次更新: 2021 年 9 月 14 日


系列中的上一篇
当前教程
Jhsdb - 分析崩溃的 JVM 的核心转储
系列中的下一篇

系列中的上一篇: Jdb - 修复 Java 程序中的错误

系列中的下一篇: Jinfo - 生成 Java 配置信息