Arthas 服務監控-watch-trace


Watch

 

Watch:觀察指定路徑方法的調用情況

 

作用:

 

方法執行數據監測,讓你能方便的觀察到指定的方法的掉用情況

 

能觀察到的范圍:返回值、拋出異常、入參、通過編寫OGNL表達式進行對應變量的查看

 

Watch xxx.xxx.xxx.controller.StartAppImg xx (方法名

 

 命令:watch com.xxx.xxx.controller.Test list

查看list方法的調用詳細情況

 Watch 路徑.類名 方法名

觀察 指定路徑xxx.方法 (ognl表達式)“{參數,返回值}-x 2 屬性遍歷深度  

watch com.xxx.xxx.controller test {params,returnObj}” -x 2

 

通過 target 獲取所有2級屬性

 watch com.xxx.xxx.xxx.controller.test list "target" -x 2 -b

 

通過target獲取指定屬性值

 

獲取方法前后的返回值

 

 

 

 

trace

作用:

Trace 命令能主動搜索class-pattern/method-pattern 對應的方法調用路徑,渲染和統計整個調用鏈路上的所有性能開銷和追蹤鏈路

觀察表達式的構成主要由OGNL表達式組成,所以你可以這樣寫{params,returnObj},只要是一個和法的OGNL表達式,就都能被正常支持

很多時候我們只想看到某個方法的rt大於某個時間之后的trace結果,現在arthas可以按照方法執行的耗時進行過濾,例如 trace StringUtils isBlank #cost>100’”,表示當執行時間超過100ms時候才會輸出trace的結果

 

trace com.xxx.xxx.xx.controller.StartAppImgController list

查看指定路徑方法節點的耗時時間

trace com.xxx.xxx.xxx.controller.StartAppImgController list -n 3

查看指定路徑方法節點的耗時時間 並設置命令執行次數

trace com.xxx.xxx.xxx.controller.StartAppImgController list "#cost > .5"

查看指定路徑方法節點的耗時時間 過濾大於0.5秒的

 

 

 

Stack

 

獲取方法的調用路徑

Stack com.xxx.xxx.xxx.controller.StartAppImgController list

 

方法參數小於0時追蹤方法路徑 執行2

Stack com.xxx.xxx.xxx.controller.StartAppImgController list  ‘params[0]<0’  -n 2

 

追蹤大於執行時間0.5 的方法

Stack com.xxx.xxx.xxx.controller.StartAppImgController list  ‘#cost>0.5

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM