Alibaba Cloud Toolkit 中SLS插件助力线上服务问题排查
簡介:Alibaba Cloud Toolkit 是一款非常優秀的插件,新增SLS日志服務的功能,針對軟件開發者日常工作中常見的問題排查場景,將日志服務平臺的功能集成到ide當中,省去了不同窗口之間來回切換的時間,大大提高了日常工作的效率。
產品介紹
Alibaba Cloud Toolkit 是阿里云針對IDE平臺為開發者提供的一款插件,用于幫助開發者高效開發并部署適合在云端運行的應用。在本地完成應用程序的開發、調試和測試后,可以使用在IDE(如Eclipse或IntelliJ)中安裝的Cloud Toolkit插件,通過圖形配置的方式連接到云端部署環境并將應用程序快速部署到云端。
SLS插件解決的痛點
作為一個軟件開發人員,線上問題的排查是必不可少的經歷。在不同成熟度的服務中,線上排查的流程也有些許不同。某些小的創業公司開發的軟件,有可能服務還是單點的,或者幾臺機器搭建一個集群,每個服務的日志都需要ssh到每一臺服務器上查看日志。成熟度高一些的公司,就會自建自己的日志服務平臺、或者使用像SLS這種成熟的日志平臺,將線上的日志集中起來管理,這樣就省去了ssh到服務器上查看日志的麻煩,這樣已經大大提高了問題排查的效率,
但是,還是不夠完美。我們假設一種常見的場景,就是當線上發生了異常,此時我們從日志服務平臺的頁面上找到了服務的日志,比如是Java的stack trace。Java的stack trace通常是比較長的,那么為了準確的從代碼庫中找到發生異常的代碼,我們需要在日志服務平臺的頁面和ide中來回切換;某些時候,當日志過長的時間,我們還需要把日志拷貝到本地文件中。這樣在不同窗口之間來回切換,浪費了非常多寶貴的時間。
那么為了方便我們準確的把日志服務平臺的日志跟代碼關聯起來,Alibaba Cloud Toolkit集成了SLS日志平臺的功能,讓軟件開發者能夠在ide中方便的查詢到想要的日志。日志服務SLS是云原生觀測與分析平臺,為Log、Metric、Trace等數據提供大規模、低成本、實時的平臺化服務。日志服務一站式提供數據采集、加工、查詢與分析、可視化、告警、消費與投遞等功能,全面提升研發、運維、運營、安全等場景的數字化能力。
下面我們就來看一個常見的java服務異常排查的場景,來看看Alibaba Cloud Toolkit插件中SLS的功能到底有多方便。
場景模擬
服務模擬
首先我們模擬一個線上發生異常的服務。創建一個簡單的springboot服務,然后實現ApplicationRunner的一個Component類型的bean,做的事情非常簡單,就是每秒打印一行NPE的日志,用來模擬線上發生NPE的服務。
@Component @Slf4j public class LogDemoService implements ApplicationRunner {@Overridepublic void run(ApplicationArguments args) throws Exception {while (true) {try {String field = null;System.out.println(field.length());Thread.sleep(1000);} catch (Exception e) {log.error("write exception log :", e);}}} }服務打包好之后,在服務器上啟動服務。
SLS采集部署、驗證
然后我們在服務器上部署SLS的日志采集服務,具體操作文件參見:Logtail采集 - 日志服務 - 阿里云,用來把日志采集到SLS的logstore中,
我們在SLS的頁面上確認日志已經成功采集到了之后,服務的模擬和日志平臺的接入就已經完成了,下面我們回到ide里。
IDE配置、使用流程
首先我們通過intellij的plugins的market place查找到Alibaba Cloud Toolkit, 點擊install,然后重啟ide之后即可生效
點擊Tools-> Alibaba Cloud -> Preference,配置賬號信息,這里需要把擁有SLS日志查看權限的賬號的Access Key Id和Access Key Secret填入
點擊Tools-> Alibaba Cloud -> Alibaba Cloud View -> Alibaba Cloud SLS
即可在ide的窗口的下方看見SLS的日志查詢界面
選擇相應的Region和project之后,點擊對應的logstore右邊的查看按鈕
就可以像SLS的頁面一樣,在ide里面查看服務的日志了,這個界面還支持日志時間范圍的篩選和查詢、分析語句的篩選,可以幫助開發人員快速準確的找到想要的日志數據。SLS查詢和分析語句可以參考文檔:查詢與分析 - 日志服務 - 阿里云
像Java Stack Trace這種比較長的日志,在這個界面沒有辦法一次性看到完整的信息,在查詢結果每條日志右側有一個"在編輯器中打開"的按鈕
點擊之后,就可以在ide的新的頁面里完整查看這條日志,方便開發人員獲取最完整的信息
總結
Alibaba Cloud Toolkit 是一款非常優秀的插件,新增SLS日志服務的功能,針對軟件開發者日常工作中常見的問題排查場景,將日志服務平臺的功能集成到ide當中,省去了不同窗口之間來回切換的時間,大大提高了日常工作的效率。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。?
總結
以上是生活随笔為你收集整理的Alibaba Cloud Toolkit 中SLS插件助力线上服务问题排查的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从阿里核心场景看实时数仓的发展趋势
- 下一篇: 2021 年云原生技术发展现状及未来趋势