作者 | 於爽 中原銀行系統研發工程師,目前在技術平臺室中間件小組從事分佈式緩存、消息隊列等相關工作。
【Arthas 官方社區正在舉行徵文活動,參加即有獎品拿哦~點擊投稿】
Arthas 是一款 Java應用開源診斷工具,由於其強大的問題排查及診斷能力,自其開源以來廣受開發者的關注和使用,多次登頂 GitHub Trending,並得到國內多家技術媒體的推薦分享。
一. 定製化功能改造
Arthas 可以通過簡單的命令交互模式,接入運行的 JVM,快速定位和診斷線上程序運行問題。在不重啓服務的情況下,實時、動態的修改相關 code,並實時生效。具體工作原理如下:
1. 連接JVM:通過attach機制,通過attach pid連接正在運行的JVM;
2. 查看及修改JVM字節碼:通過instrument技術對運行中的JVM附加或修改字節