線上系統為何經常出錯?數據庫為何屢遭黑手?業務調用為何頻頻失敗?連環異常堆棧案,究竟是哪次調用所為? 數百臺服務器意外雪崩背後又隱藏著什麼?是軟件的扭曲還是硬件的淪喪? 走進科學帶你瞭解 Arthas,一款開源一年多 GitHub star 就近 2 萬,99% 的阿里研發小哥都在用的 Java 終極診斷利器!
Arthas 可以幫你解決這些問題:
- 這個類從哪個 jar 包加載的?為什麼會報各種類相關的 Exception?
- 我改的代碼為什麼沒有執行到?難道是我沒 commit?分支搞錯了?
- 遇到問題無法在線上 debug,難道只能通過加日誌再重新發布嗎?
- 線上遇到某個用戶的數據處理有問題,但線上同樣無法 debug,線下無法重現!
- 是否有一個全局視角來查看系統的運行狀況?
- 有什麼辦法可以監控到 JVM 的實時運行狀態?
- 怎麼快速定位應用的熱點,生成火焰圖?
開始使用 Arthas
- 方式一:通過Cloud Toolkit 實現 Arthas 一鍵遠程診斷
Cloud Toolkit 是阿里雲發佈的免費本地 IDE 插件,幫助開發者更高效地開發、測試、診斷並部署應用。通過插件,可以將本地應用一鍵部署到任意服務器,甚至雲端(ECS、EDAS、ACK、ACR 和 小程序雲等);並且還內置了 Arthas 診斷、Dubbo工具、Terminal 終端、文件上傳、函數計算 和 MySQL 執行器等工具。不僅僅有 IntelliJ IDEA 主流版本,還有 Eclipse、Pycharm、Maven 等其他版本。詳情可點擊:http://t.tb.cn/2A5CbHWveOXzI7sFakaCw8
- 方式二:直接下載
地址:https://github.com/alibaba/arthas;
Arthas 的原理、命令在其官方文檔有詳細介紹,下文將介紹一下近期幾個使用場景。
徵文活動介紹
為了讓更多開發者開始用上 Arthas 這個Java 診斷神器,這一次我來發獎你來說,聊聊這些年你和 Arthas 之間的那些事兒。在此次活動中,大家可以盡情表達自己的聲音,你可以將使用 Arthas 過程中積累的經驗及感悟整理成一篇文章分享給大家,或者也可以把你對 Arthas 提出的建議彙總成稿給到我們,我們將在多個渠道發佈。
當然更歡迎你直接參與 Arthas 開源貢獻,成為社區的 contributor!
第一期徵文活動將於 3 月 26 日—— 4 月 26 日舉辦,後續徵文活動將持續至 2020 年 12 月。
如何參與活動
- 直接使用 Arthas 或通過 Cloud Tookit 體驗 Arthas;
- 將你的體驗整理成文章發佈在掘金社區;
- 按要求填寫以下表單:http://alibabadeveloper.mikecrm.com/9khcRrs
投稿文章要求
- 字數 1000 字以上,文章層次結構及行文邏輯清晰;
- 文章必須是原創;
- 拼寫規範:英文和中文間需要空格,數字和中文間需要空格;
- 禁止發佈廣告類內容信息;
- 禁止發佈涉政、暴恐、違禁等敏感內容。
文章投稿福利
精美禮品
- 凡提交有效內容(詳情參考投稿文章要求)的同學,將獲得 Arthas Most Valuable User 福袋一份,包含淘公仔、Arthas 貼紙、阿里雲 T 恤 ;
- 最受歡迎的 top3 的文章,獲得天貓精靈一臺;
- 年度 top 20 文章,將獲得 cherry 鍵盤及神祕禮品。
社區榮譽
我們將會對稿件內容進行評選,入選的高質量文章,除了實物獎勵之外,我們還會:
- 在阿里巴巴雲原生公眾號和 Arthas 技術社區的首頁,展示您的文章及作者介紹模塊,讓更多的開發者瞭解你;
- 成為 Arthas 社區的貢獻者,參與社區的日常運營,並作為社區講師參與 Arthas 線上/線下活動分享。
內容方向建議
- 使用 Arthas 排查過的問題
可以將你使用 Arthas 排查的問題整理成一篇文章,分享你在排查問題中的得到的經驗與思考,為更多的開發者提供一份“避坑指南”。 - 對 Arthas 進行源碼解讀
你可以找幾個最感興趣的功能點切入,從源碼來分析設計與實現原理,然後整理成稿投稿給我們,基於對 Arthas 的源碼解讀來和眾多開發者們“隔空對話”,來一場思想上的碰撞。 - 對 Arthas 提出建議
如果你希望能夠更多地參與到 Arthas 社區中來,可以提出你對 Arthas 的建議或者說出你對 Arthas 未來的期待並將其整理成文。 - 不限,其它與 Arthas 有關的內容
例如,你是如何接觸到 Arthas 的?你會選擇把 Arthas 推薦給更多的開發者嗎?或者只是簡單記錄一次 Arthas 的使用實踐等等均可。
【參考歷史用戶文章】