Arthas的安裝與使用
簡介
Arthas是一款線上監控診斷產品,透過全域性視角實時檢視應用load、記憶體、gc、執行緒的狀態資訊,並能在不修改應用程式碼的情況下,對業務問題進行診斷,包括檢視方法呼叫的出入參、異常、監測方法執行耗時,類載入資訊等,大大提升了線上問題排查效率。
下載
下載網址: https://arthas.aliyun.com/doc/download.html
點選下載連結即可得到最新版本的zip包,我這裡下載的是 arthas-packaging-4.0.4-bin.zip
解壓壓縮包到/opt/shen/Arthus資料夾中
unzip arthas-packaging-4.0.4-bin.zip -d /opt/shen/Arthus/
Arthas目錄如下:
使用
啟動Arthas並監控java程序
使用java -jar命令啟動arthas-boot.jar
java -jar arthas-boot.jar
選擇正在執行的java程序的序號,進入arthas命令列進行監控
常用命令列表
基礎命令
命令 |
說明 |
cls |
清空當前螢幕區域 |
base64 |
base64編碼轉換 |
cat |
列印檔案內容 |
echo |
列印引數 |
grep |
匹配查詢 |
help |
檢視命令幫助資訊 |
history |
列印命令歷史 |
pwd |
返回當前工作目錄 |
session |
檢視當前會話資訊 |
version |
輸出Arthas版本號 |
keymap |
Arthas快捷鍵列表 |
options |
檢視或設定Arthas全域性開關 |
quit |
退出當前Arthas客戶端,其他Arthas客戶端不受影響 |
stop |
關閉Arthas服務端,所有Arthas客戶端全部退出 |
jvm相關命令
命令 |
說明 |
dashboard |
當前系統的實時資料皮膚,實時重新整理,ctrl+c退出 |
jvm |
檢視當前JVM資訊 |
logger |
檢視和修改logger |
memory |
檢視JVM記憶體資訊 |
sysenv |
檢視JVM的環境變數 |
sysprop |
檢視和修改JVM系統屬性 |
thread |
檢視當前JVM的執行緒堆疊資訊 |
getstatic 全類名 靜態屬性名 |
檢視類的靜態屬性 |
class/classloader相關命令
命令 |
說明 |
classloader |
檢視classloader的繼承樹,urls,類載入資訊 |
jad 全類名 |
反編譯指定已載入類的原始碼 |
mc |
記憶體編譯器,.java檔案編譯為.class檔案 |
sc -d 全類名 |
檢視JVM已載入的類資訊 |
sm -d 全類名 |
檢視已載入類的方法資訊 |
monitor/watch/trace相關命令
命令 |
說明 |
monitor |
方法執行監控 |
stack |
輸出當前方法被呼叫的呼叫路徑 |
trace |
方法內部呼叫路徑 |
tt |
方法執行資料的時空隧道,記錄下指定方法每次呼叫的入參和返回資訊 |
watch |
方法執行資料觀測 |
火焰圖
命令 |
說明 |
profiler |
生成應用熱點的火焰圖 |
參考資料
Arthas官網: https://arthas.aliyun.com/