您可以使用該jhsdb工具將Java進程或崩潰的Java虛擬機(JVM)的核心轉儲連接。
概要
jhsdb clhsdb [--pid pid | --exe executable --core coredump]
jhsdb debugd [options] (pid | executable coredump) [server-id]
jhsdb hsdb [--pid pid | --exe executable --core coredump]
jhsdb jstack [--pid pid | --exe executable --core coredump] [options]
jhsdb jmap [--pid pid | --exe executable --core coredump] [options]
jhsdb jinfo [--pid pid | --exe executable --core coredump] [options]
jhsdb jsnap [options] [--pid pid | --exe executable --core coredump]
pid
jhsdb工具應附加到的進程ID 。該進程必須是Java進程。要獲取在機器上運行的Java進程的列表,請使用以下ps命令;如果JVM進程不在單獨的docker實例中運行,請使用jps命令。
注意:當附加到在單獨的docker進程中運行的Java進程時,JDK 10添加了對使用Attach API的支持。但是,該jps命令不會列出在單獨的docker實例中運行的JVM進程。如果嘗試將Linux主機與Docker容器中的虛擬機連接,則必須使用諸如ps查找JVM PID的工具。
server-id
當多個調試服務器在同一遠程主機上運行時使用的可選唯一ID。
executable
從中生成核心轉儲的Java可執行文件。
coredump
jhsdb工具應附加到的核心文件。
options
模式的命令行選項jhsdb。見為jhsdb模式的常用選項,選項為debugd模式,選項為金佛山模式,選項為JMAP模式,選項為JMAP模式,選項為jstack模式和選項的jsnap模式。
注意: 無論是pid或一對executable和coredump必須提供的文件。
描述
您可以使用該jhsdb工具將其附加到Java進程或啟動事后調試器,以分析崩潰的Java虛擬機(JVM)中核心轉儲的內容。此命令是實驗性的,不受支持。
注意: 將jhsdb工具附加到運行中的進程將導致進程掛起,并且當調試器分離時,該進程可能會崩潰。
該jhsdb工具可以通過以下任意一種方式啟動:
jhsdb clhsdb
啟動交互式命令行調試器。
jhsdb debugd
啟動遠程調試服務器。
jhsdb hsdb
啟動交互式GUI調試器。
jhsdb jstack
打印堆棧并鎖定信息。
jhsdb jmap
打印堆信息。
jhsdb jinfo
打印基本的JVM信息。
jhsdb jsnap
打印性能計數器信息。
jhsdb模式的常用選項
除了任何所需的jstack,jmap,jinfo或jsnap模式特定的選項中,pid,exe,或core選項必須被提供用于所有模式。以下選項適用于所有模式。
--pid
掛起進程的進程ID。
--exe
可執行文件名。
--core
核心轉儲文件名。
--help
顯示該命令可用的選項。
調試模式的選項
server-id
此調試服務器的可選唯一ID。如果在同一臺計算機上運行多個調試服務器,則這是必需的。
jinfo模式的選項
如果沒有指定選項,該jhsdb jinfo命令將同時輸出標志和屬性。
--flags
打印VM標志。
--sysprops
打印Java系統屬性。
沒有選擇
打印VM標志和Java系統屬性。
jmap模式的選項
除了以下模式的特定選項,所述pid,exe或core在所描述的選項為jhsdb模式通用選項必須被提供。
沒有選擇
打印與Solaris相同的信息pmap。
--heap
打印java堆摘要。
--binaryheap
java以hprof二進制格式轉儲堆。
--dumpfile
需要將信息寫入其中的文件的名稱。
--histo
打印java對象堆的直方圖。
--clstats
打印類加載器統計信息。
--finalizerinfo
在等待完成的對象上打印信息。
jstack模式的選項
除了以下模式的特定選項,所述pid,exe或core在所描述的選項為jhsdb模式通用選項必須被提供。
--locks
打印java.util.concurrent鎖信息。
--mixed
java如果平臺允許,則嘗試同時打印和原始幀。
jsnap模式的選項
除以下模式的具體選擇,pid,exe,或core在描述選項為jhsdb模式的常用選項,必須提供。
--all
打印所有性能計數器。