快速入門
使用可觀測鏈路 OpenTelemetry 版前,您需要完成阿里云賬號注冊、開通可觀測鏈路 OpenTelemetry 版以及獲取接入點信息。本文以使用OpenTelemetry Java Agent自動埋點上報Java應(yīng)用數(shù)據(jù)為例,幫助您快速上手可觀測鏈路 OpenTelemetry 版。
前提條件
登錄ARMS制臺,在左側(cè)導(dǎo)航欄單擊接入中心。
在服務(wù)端應(yīng)用區(qū)域單擊OpenTelemetry卡片。
在彈出的OpenTelemetry面板中選擇數(shù)據(jù)需要上報的地域。
說明初次接入的地域?qū)詣舆M行資源初始化。
選擇連接方式和上報方式,然后復(fù)制接入點信息。
連接方式:若您的服務(wù)部署在阿里云上,且所屬地域與選擇的接入地域一致,推薦使用阿里云內(nèi)網(wǎng)方式,否則選擇公網(wǎng)方式。
上報方式:根據(jù)客戶端支持的協(xié)議類型選擇HTTP或gRPC協(xié)議上報數(shù)據(jù)。
方案概覽
本文以OpenTelemetry Java Agent自動埋點上報Java應(yīng)用數(shù)據(jù)為例進行說明,主要分為以下幾步:
下載Demo應(yīng)用代碼:您可以選擇下載Demo應(yīng)用代碼體驗可觀測鏈路 OpenTelemetry 版,您也可以嘗試在自己的業(yè)務(wù)中完成OpenTelemetry Java Agent自動埋點和查看監(jiān)控數(shù)據(jù)。
使用OpenTelemetry Java Agent自動埋點:您需要下載OpenTelemetry Java Agent,OpenTelemetry Java Agent提供了無侵入的接入方式,支持上百種Java框架自動上傳Trace數(shù)據(jù)。您還需要修改Java啟動的VM參數(shù)以上報鏈路數(shù)據(jù)。
查看監(jiān)控數(shù)據(jù):您可以在ARMS控制臺查看由OpenTelemetry生成的監(jiān)控數(shù)據(jù)。
一、下載Demo應(yīng)用代碼
您可以使用Demo應(yīng)用代碼,也可以使用您自己的Java業(yè)務(wù)代碼。
下載Demo代碼: OpenTelemetry Java Agent Demo。
Demo包中包含三個子文件夾,分別是:
java-agent-usage:使用OpenTelemetry Java Agent自動埋點,本文以此為例。
otel-sdk-usage:使用OpenTelemetry Java SDK手動埋點。
agent-sdk-usage:同時使用Java Agent和Java SDK埋點。
二、使用OpenTelemetry Java Agent自動埋點
本文以使用OpenTelemetry Java Agent自動埋點上報Java應(yīng)用數(shù)據(jù)為例進行說明。詳細(xì)的Java框架列表,請參見Supported Libraries and Versions。
在最新版本的Assets中找到opentelemetry-javaagent.jar包,單擊JAR包下載。
通過修改Java啟動的VM參數(shù)上報鏈路數(shù)據(jù)。
-javaagent:/{user.workspace}/opentelemetry-javaagent.jar //請將{user.workspace}替換為您文件下載的實際地址。 -Dotel.resource.attributes=service.name=<appName> // 請將<appName>替換為要接入可觀測鏈路 OpenTelemetry 版的應(yīng)用名稱。 -Dotel.exporter.otlp.headers=Authentication=<token> //前提條件中獲取的接入點信息。 -Dotel.exporter.otlp.endpoint=<endpoint> //前提條件中獲取的接入點信息。
例如,您原有的應(yīng)用啟動命令是:
java -jar /{user.workspace}/java-agent-usage-0.0.1-SNAPSHOT.jar
要接入可觀測鏈路 OpenTelemetry 版,需要改為如下啟動命令:
java -Dotel.resource.attributes=service.name=java-agent-usage-0.0.1-SNAPSHOT -Dotel.exporter.otlp.headers=Authentication=ggxw4l****@7323a5caae30263_ggxw4l****@53df7ad2afe**** -Dotel.exporter.otlp.endpoint=http://tracing-analysis-dc-hz.aliyuncs.com:8090 -javaagent:/{user.workspace}/opentelemetry-javaagent.jar -jar /{user.workspace}/java-agent-usage-0.0.1-SNAPSHOT.jar
三、查看監(jiān)控數(shù)據(jù)
訪問Demo應(yīng)用,訪問地址為
localhost:8081/user/async
。OpenTelemetry Java Agent會采集Demo應(yīng)用數(shù)據(jù),將數(shù)據(jù)上報至可觀測鏈路 OpenTelemetry 版。登錄ARMS控制臺后,在 頁面選擇目標(biāo)應(yīng)用,查看鏈路數(shù)據(jù)。
說明語言列顯示圖標(biāo)的應(yīng)用為接入應(yīng)用監(jiān)控的應(yīng)用,顯示-圖標(biāo)的應(yīng)用為接入可觀測鏈路 OpenTelemetry 版的應(yīng)用。
后續(xù)步驟
將應(yīng)用數(shù)據(jù)上報至可觀測鏈路 OpenTelemetry 版后,您可以在ARMS控制臺執(zhí)行以下操作:
可觀測鏈路 OpenTelemetry 版支持將Java、Go、Python、JS、.NET、C++等語言的應(yīng)用數(shù)據(jù)上報至控制臺。支持的上報數(shù)據(jù)客戶端包括OpenTelemetry、Jaeger、Zipkin和SkyWalking。
語言 | 文檔 |
Java語言 | |
PHP應(yīng)用 | |
Go應(yīng)用 | |
Python應(yīng)用 | |
Node.js應(yīng)用 | |
.NET應(yīng)用 | |
C++應(yīng)用 | |
Ruby應(yīng)用 | |
Swift應(yīng)用 | |
Android應(yīng)用 | |
Rust應(yīng)用 |