Arthas 獲取當(dāng)前java進(jìn)程的數(shù)據(jù)庫(kù)連接信息

本文來(lái)自 布靈格 - Arthas 獲取當(dāng)前java進(jìn)程的數(shù)據(jù)庫(kù)連接信息

  1. 進(jìn)入arthas目錄, 執(zhí)行 java -jar arthas-boot.jar 啟動(dòng)Arthas

    arthas進(jìn)程啟動(dòng)

  2. 執(zhí)行 tt 命令來(lái)記錄 RequestMappingHandlerAdapter#invokeHandlerMethod 的請(qǐng)求,
    tt -t org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter invokeHandlerMethod

  3. 然后訪問(wèn)你連接進(jìn)程的網(wǎng)頁(yè), 例如: http://localhost:8080

    訪問(wèn)網(wǎng)頁(yè)

    可以看到Arthas會(huì)攔截到這個(gè)調(diào)用, index是1000

  4. 使用 tt 命令的 -i 參數(shù)來(lái)指定index, 并且用 -w 參數(shù)來(lái)執(zhí)行 ognl 表達(dá)式來(lái)獲取 spring context,
    tt -i 1000 -w 'target.getApplicationContext()'

    image.png

  5. 獲取到 applicationContext 之后我們就可以干一些大(ni)事(dong)情(de)...

  6. 接下來(lái)進(jìn)入正題, 我們執(zhí)行 tt -i 1000 -w 'target.getApplicationContext().getBean("dataSource").getUrl()'
    來(lái)獲取數(shù)據(jù)庫(kù)的連接

    數(shù)據(jù)庫(kù)連接地址

    數(shù)據(jù)庫(kù)連接用戶名

    數(shù)據(jù)庫(kù)連接密碼

這樣就知道當(dāng)前進(jìn)程連接的數(shù)據(jù)庫(kù)實(shí)例是不是符合我們預(yù)期的結(jié)果啦

參考:
Alibaba Arthas實(shí)踐--獲取到Spring Context,然后為所欲為

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

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

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