目前,DHorse的鏈路追蹤功能是透過SkyWalking來實現。實現原理是DHorse在部署應用時,透過指定SkyWalking的Agent來收集服務的呼叫鏈路資訊。下面就來具體看一下DHorse如何使用Agent的功能。
鏈路追蹤配置
在“系統配置”選單,開啟“鏈路追蹤模板”選單,如圖1所示:
圖1
點選“新增”按鈕,進行新增模板,如圖2所示:
圖2
其中,“服務地址”是SkyWalking伺服器的地址,Agent映象來源選項有兩個:版本號和自定義。如果選擇了版本號,則在儲存模板之後,DHorse會自動製作“Agent版本”項對應版本號的映象檔案,並自動上傳到映象倉庫;如果選擇了自定義,那麼需要使用者手動製作Agent映象並上傳到倉庫。對於手動製作的Agent映象,DHorse是有規則要求的,下面就詳細介紹。
製作Agent映象
用Dockerfile來製作,具體步驟如下:
- 下載Agent,並複製檔案到/op/agent目錄,後續操作都在該目錄下進行
- 解壓tgz包
tar -zxvf apache-skywalking-java-agent-*.tgz
- 製作Dockerfile檔案,內容如下:
FROM busybox:latest
COPY skywalking-agent/ /skywalking-agent
- 則/op/agent目錄內容如下:
-rw-r--r-- 1 root root 30119842 Apr 11 2022 apache-skywalking-java-agent-8.9.0.tgz
-rw-r--r-- 1 root root 61 Nov 11 17:47 Dockerfile
drwxrwxr-x 10 admin 1002 221 Jan 28 2022 skywalking-agent
- 製作映象:
docker build -t 192.168.109.131:20080/dhorse/skywalking-agent:v8.9.0 .
- 登入Harbor倉庫:
docker login -u admin -p admin 192.168.109.131:20080
- 上傳映象:
docker push 192.168.109.131:20080/dhorse/skywalking-agent:v8.9.0
新增鏈路追蹤模板以後,再來看看如何使用。
使用鏈路追蹤
在“環境管理”選單下,進行修改操作,開啟鏈路追蹤狀態和選擇鏈路追蹤模板,如圖3所示:
圖3
儲存之後,重新發布該環境的應用,然後請求該環境的服務。開啟SkyWalking Web,在Trace的選單下可以看到上報的鏈路資訊,如圖4所示:
圖4