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 模式的选项。
注意
对于 debugd
、jstack
、jmap
、jinfo
和 jsnap
模式,必须提供 pid 或 executable 和 core 文件对或 [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 日