如何抓取Thread Dump(轉儲執行緒堆疊)
環境: JDK 1.5/1.6, WebLogic 9.0 or later
當伺服器掛起,崩潰或者效能很差時,可以抓取伺服器的執行緒堆疊(Thread Dump)用於後續的分析.
Thread dump提供了當前活動的執行緒的快照. 它提供了JVM中所有Java執行緒的棧跟蹤資訊,有很多
方式可用於獲取Thread Dump。
作業系統命令獲取ThreadDump:
Windows:
a. 轉向伺服器的標準輸出視窗並按下Control + Break組合鍵, 之後需要將執行緒堆疊複製到檔案中
a. 轉向伺服器的標準輸出視窗並按下Control + Break組合鍵, 之後需要將執行緒堆疊複製到檔案中
UNIX/ Linux
首先查詢到伺服器的程式號(process id), 然後獲取堆疊.
a. ps –ef | grep java
b. kill -3
-------------------------------------------
JVM 自帶的工具獲取執行緒堆疊:
JDK自帶命令列工具獲取PID並做ThreadDump:
a. jps
b. jstack
a. jps
b. jstack
使用JVisualVM:
Threads 標籤頁ThreadDump按鈕.
Threads 標籤頁ThreadDump按鈕.
-------------------------------------------
WebLogic 自帶的獲取 thread dump的工具:
1. 使用 Admin Console
a. 登入 Admin Console , 點選對應的伺服器
b. 點選Server Monitoring Threads
c. 點選: Dump Thread Stack 按鈕
a. 登入 Admin Console , 點選對應的伺服器
b. 點選Server Monitoring Threads
c. 點選: Dump Thread Stack 按鈕
2. 使用WLST (WebLogic Scripting Tool)
java weblogic.WLST
connect('weblogic','weblogic123','t3://dggtsebs01-vlx:7010')
cd('Servers')
cd('soa_server1')
threadDump()
disconnect()
exit()
注意: 執行緒堆疊將會儲存在執行wlst的當前目錄下.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-746641/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何利用執行緒堆疊定位問題執行緒
- Java多執行緒-程式執行堆疊分析Java執行緒
- JVM 執行緒堆疊分析過程詳解JVM執行緒
- 詳解JAVA執行緒問題診斷工具Thread DumpJava執行緒thread
- 巧用Grafana和Arthas自動抓取K8S中異常Java程式的執行緒堆疊GrafanaK8SJava執行緒
- Thread(執行緒)thread執行緒
- 分享一款JVM執行緒堆疊線上分析工具JVM執行緒
- 輕巧的執行緒堆疊檢視工具HotThreads執行緒thread
- 根據openGauss/MogDB的lwtid檢視執行緒堆疊執行緒
- 怎樣在程式中獲取所有執行緒的堆疊資訊?執行緒
- 關於核心執行緒(kernel_thread)(轉)執行緒thread
- JAVA執行緒dump的分析Java執行緒
- kernel-執行緒thread執行緒thread
- 執行緒轉儲:命名你的執行緒和檢視系統(轉)執行緒
- 不一樣的 Android 堆疊抓取方案Android
- [譯] JavaScript 如何工作:對引擎、執行時、呼叫堆疊的概述JavaScript
- Java 中的執行緒 threadJava執行緒thread
- Thread執行緒終止interruptthread執行緒
- new Thread與執行緒建立thread執行緒
- 如何分析java Thread DUMPJavathread
- IDEA生成執行緒轉儲資訊Idea執行緒
- JavaScript是如何工作的:引擎,執行時和呼叫堆疊的概述!JavaScript
- 你知道Thread執行緒是如何運作的嗎?thread執行緒
- 瞭解Javascript中的執行上下文和執行堆疊JavaScript
- Java多執行緒/併發07、Thread.Join()讓呼叫執行緒等待子執行緒Java執行緒thread
- Java多執行緒(二):Thread類Java執行緒thread
- java多執行緒之Thread類Java執行緒thread
- Java多執行緒Thread類使用Java執行緒thread
- python 多執行緒之threadPython執行緒thread
- Swift多執行緒:使用Thread進行多執行緒間通訊,協調子執行緒任務Swift執行緒thread
- 解讀 JavaScript 之引擎、執行時和堆疊呼叫JavaScript
- JavaScript的工作原理:引擎,執行時和呼叫堆疊JavaScript
- 十七:主庫的DUMP執行緒(筆記)執行緒筆記
- [golang]如何看懂呼叫堆疊Golang
- 多執行緒、重疊I/O的通訊埠元件 (轉)執行緒元件
- 多執行緒系列(二)之Thread類執行緒thread
- 【 Thread】建立執行緒的2種方法thread執行緒
- 一. 執行緒管理之Thread基礎執行緒thread