學(xué)習(xí)完整課程請移步 互聯(lián)網(wǎng) Java 全棧工程師
本節(jié)視頻
Java Agent 服務(wù)器探針
參考官網(wǎng)給出的幫助 Setup java agent,我們需要使用官方提供的探針為我們達(dá)到監(jiān)控的目的,按照實際情況我們需要實現(xiàn)三種部署方式
- IDEA 部署探針
- Java 啟動方式部署探針(我們是 Spring Boot 應(yīng)用程序,需要使用
java -jar的方式啟動應(yīng)用) - Docker 啟動方式部署探針(需要做到一次構(gòu)建到處運行的持續(xù)集成效果,本章節(jié)暫不提供解決方案,到后面的實戰(zhàn)環(huán)節(jié)再實現(xiàn))
探針文件在 apache-skywalking-apm-incubating/agent 目錄下

IDEA 部署探針
繼續(xù)之前的案例項目,創(chuàng)建一個名為 hello-spring-cloud-external-skywalking 的目錄,并將 agent 整個目錄拷貝進(jìn)來

修改項目的 VM 運行參數(shù),點擊菜單欄中的 Run -> EditConfigurations...,此處我們以 nacos-provider 項目為例,修改參數(shù)如下
-javaagent:D:\Workspace\Others\hello-spring-cloud-alibaba\hello-spring-cloud-external-skywalking\agent\skywalking-agent.jar
-Dskywalking.agent.service_name=nacos-provider
-Dskywalking.collector.backend_service=localhost:11800

-
-javaagent:用于指定探針路徑 -
-Dskywalking.agent.service_name:用于重寫agent/config/agent.config配置文件中的服務(wù)名 -
-Dskywalking.collector.backend_service:用于重寫agent/config/agent.config配置文件中的服務(wù)地址
Java 啟動方式
java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -Dskywalking.agent.service_name=nacos-provider -Dskywalking.collector.backend_service=localhost:11800 -jar yourApp.jar
測試監(jiān)控
啟動 nacos-provider 項目,通過觀察日志可以發(fā)現(xiàn),已經(jīng)成功加載探針

訪問之前寫好的接口 http://localhost:8081/echo/hi 之后再刷新 SkyWalking Web UI,你會發(fā)現(xiàn) Service 與 Endpoint 已經(jīng)成功檢測到了


至此,表示 SkyWalking 鏈路追蹤配置成功
SkyWalking Trace 監(jiān)控
SkyWalking 通過業(yè)務(wù)調(diào)用監(jiān)控進(jìn)行依賴分析,提供給我們了服務(wù)之間的服務(wù)調(diào)用拓?fù)潢P(guān)系、以及針對每個 Endpoint 的 Trace 記錄。
調(diào)用鏈路監(jiān)控
點擊 Trace 菜單,進(jìn)入追蹤頁

點擊 Trace ID 展開詳細(xì)信息


上圖展示了一次正常的響應(yīng),總響應(yīng)時間為 185ms 共有一個 Span(基本工作單元,表示一次完整的請求,包含響應(yīng),即請求并響應(yīng))
Span /echo/{message} 說明如下:
- Duration:響應(yīng)時間 185 毫秒
- component:組件類型為 SpringMVC
- url:請求地址
- http.method:請求類型
服務(wù)性能指標(biāo)監(jiān)控
點擊 Service 菜單,進(jìn)入服務(wù)性能指標(biāo)監(jiān)控頁

選擇希望監(jiān)控的服務(wù)

- Avg SLA: 服務(wù)可用性(主要是通過請求成功與失敗次數(shù)來計算)
- CPM: 每分鐘調(diào)用次數(shù)
- Avg Response Time: 平均響應(yīng)時間
點擊 More Server Details... 還可以查看詳細(xì)信息


上圖中展示了服務(wù)在一定時間范圍內(nèi)的相關(guān)數(shù)據(jù),包括:
- 服務(wù)可用性指標(biāo) SLA
- 每分鐘平均響應(yīng)數(shù)
- 平均響應(yīng)時間
- 服務(wù)進(jìn)程 PID
- 服務(wù)所在物理機(jī)的 IP、Host、OS
- 運行時 CPU 使用率
- 運行時堆內(nèi)存使用率
- 運行時非堆內(nèi)存使用率
- GC 情況