Arthas使用命令總結(jié)

1.java -jar Arthas-boot.jar啟動Arthas選中需要監(jiān)控的java項目
2.Arthas啟動成功之后進入命令行模式
3.下面是命令

  • help 幫助

  • dashboard jvm內(nèi)存儀表盤

  • thread 1 | grep 'main(' 查詢線程的棧信息 grep搜索方法名字

  • sc -d *類名 可以不加-d 是匹配符 可以寫類全路徑不需要 可以看到這個類的 加載信息,此方法非常重要可以看到j(luò)ar沖突
    類加載器加載多少個相同類名的版本

  • sm -d *類名 主要是查看方法 和sc差不多

  • jad 全類 例如 jad com.demo.Main 可以反編譯此類
    jad --source-only com.example.demo.arthas.user.UserController

  • watch 全類名 方法名 returnObj 例如 watch demo.MathGame primeFactors returnObj 可以一直監(jiān)控指定方法調(diào)用信息通過
    watch命令可以查看函數(shù)的參數(shù)/返回值/異常信息。

  • sysprop 可以打印所有的System Properties信息。也可以指定單個key: sysprop java.version 也可以通過grep來過濾:
    sysprop | grep user 可以設(shè)置新的value: sysprop testKey testValue

  • sysenv sysenv 命令可以獲取到環(huán)境變量。和sysprop命令類似。

  • jvm jvm 命令會打印出JVM的各種詳細信息。

  • ognl '@java.lang.System@out.println("hello ognl")' 執(zhí)行被監(jiān)控項目的方法
    還可以通過-x參數(shù)控制返回值的展開層數(shù)。比如:
    ognl --classLoaderClass org.springframework.boot.loader.LaunchedURLClassLoader -x 2
    @com.example.demo.arthas.user.UserController@logger
    執(zhí)行多行表達式,賦值給臨時變量,返回一個List
    ognl '#value1=@System@getProperty("java.home"), #value2=@System@getProperty("java.runtime.name"), {#value1,
    #value2}'
    其他更復(fù)雜的參考
    OGNL特殊用法請參考: (https://github.com/alibaba/arthas/issues/71)
    OGNL表達式官方指南: (https://commons.apache.org/proper/commons-ognl/language-guide.html)

4.退出Arthas監(jiān)控

用 exit 或者 quit 命令可以退出Arthas。

退出Arthas之后,還可以再次用 java -jar arthas-boot.jar 來連接。

徹底退出Arthas
exit/quit命令只是退出當前session,arthas server還在目標進程中運行。

想完全退出Arthas,可以執(zhí)行 stop 命令。

更多使用方法請參考官網(wǎng)https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn&id=arthas-advanced

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • https://blog.csdn.net/u013735734/article/details/10293030...
    大狗狼閱讀 1,844評論 0 0
  • 下載arthas-boot.jar: 然后用java -jar的方式啟動: 選擇一個pid進入(如1): 通過th...
    675ea0b3a47d閱讀 5,229評論 2 2
  • 啟動arthas:wget https://alibaba.github.io/arthas/arthas-boo...
    icecrea閱讀 3,119評論 0 3
  • 在阿里巴巴內(nèi)部,有很多自研工具供開發(fā)者使用,其中有一款工具,是幾乎每個Java開發(fā)都使用過的工具,那就是Artha...
    溫馭臣閱讀 845評論 0 0
  • Arthas簡介 Arthas 是Alibaba開源的Java診斷工具,安裝在應(yīng)用服務(wù)器,可幫助開發(fā)人員和運維人員...
    暝記閱讀 504評論 0 0

友情鏈接更多精彩內(nèi)容