日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

常用Arthas命令

發布時間:2023/12/4 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常用Arthas命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

jad反編譯

  • 檢查線上代碼是否修改成功,例如修改interface后看Jar包是否引入新的,或者代碼是否最新的。
jad com.zhenai.counseling.business.provider.facade.supremecourse.RedeemRecordFacadeImpl //反編譯只展示源碼 jad --source-only com.zhenai.counseling.business.api.service.supremecourse.impl.SupremeCourseServiceImpl

watch命令查看函數入參,返回值

watch com.zhenai.counseling.business.provider.facade.supremecourse.RedeemRecordFacadeImpl canRedeem {params,returnObj} -x 2 //按耗時過濾 watch com.zhenai.counseling.business.provider.facade.supremecourse.RedeemRecordFacadeImpl canRedeem {params,returnObj} '#cost>200' -x 2 //調整-x的值,觀察具體的方法參數值, 4 標識遍歷的深度,比如返回值里面有對象也會被遍歷處理,對象里面還有對象,繼續遞歸 watch com.zhenai.counseling.business.provider.facade.supremecourse.RedeemRecordFacadeImpl canRedeem {params,returnObj} -x 4

ts=2021-07-06 16:21:05; [cost=12.879504ms] result=@ArrayList[@Object[][@Long[156],],@Boolean[false], ]
  • cost 標識耗時
  • result 是整個watch命令的返回,我們監控的是入參,返回值,其中object是入參,boolean是返回值,按照你設置{params,returnObj} 的順序返回
  • 最常用的方法,用于微服務接口數據排查,當有多個provider接口調用時候,可以逐個排查每個provider是否正常

thread繁忙的n個線程

thread -n 5 //打印阻塞線程 thread -b

  • 打印出最忙的n 個線程的堆棧信息。
  • 這里的cpu使用率與linux 命令top -H -p 的線程%CPU類似,一段采樣間隔時間內,當前JVM里各個線程的增量cpu時間與采樣間隔時間的比例。
  • 可直接打印對應id thread id 即可,打印阻塞線程,在排查計算密集型引用導致的CPU資源不夠情況下,排查具體那個業務線程耗CPU資源比較高。

系統相關

//查看當前JVM信息 jvm //查看當前所有屬性 sysprop //查看當前環境變量 sysenv //查看日志級別 logger

查看類的靜態屬性

getstatic com.zhenai.counseling.business.api.consumer.OnlinePayCallBackConsumer logger

  • 此處我用的Logger來做實驗,實際生產中可以對具體類中的靜態屬性 進行監控,比如是一個Map,List等復雜數據結構,很好排查問題

sc 查看已經加載的類

//模糊查詢改包下的類加載情況 sc com.zhenai.counseling.business.api.consumer.* //打印類的詳細信息 sc -d com.zhenai.counseling.business.api.consumer.OnlinePayCallBackConsumer

sm查看方法詳細信息

sm -d com.zhenai.counseling.business.api.consumer.OnlinePayCallBackConsumer consume

方法調用監控

monitor -c 5 com.zhenai.counseling.business.api.service.supremecourse.impl.SupremeCourseServiceImpl courses

耗時檢測神器trace

//方法內部調用鏈路的時間監控 trace com.zhenai.counseling.business.api.service.supremecourse.impl.SupremeCourseServiceImpl courses //同樣過濾耗時 trace com.zhenai.counseling.business.api.service.supremecourse.impl.SupremeCourseServiceImpl courses '#cost > 10'
  • 對方法調用鏈路上每個節點的時間進行監控,類似pingpoint的一個輸出,檢測超時接口必備神器

總結

以上是生活随笔為你收集整理的常用Arthas命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。