本文以Java应用为例,介绍从开通链路追踪服务及相关依赖服务并授权,到将应用接入链路追踪的流程,帮助您快速上手链路追踪。
授权链路追踪读写您的日志服务数据
- 登录链路追踪控制台。
- 在概览页面上,单击授权,授权链路追踪读写您的日志服务。
- 在云资源访问授权页面上,选择所需的权限,并单击同意授权。
通过Jaeger客户端上报Java应用数据
本文以Jaeger客户端上报Java应用数据为例,介绍如何上报数据。通过其他客户端上报数据和上报其他语言应用数据的方法,请参见文末的相关文档。
- 下载Demo工程,进入manualDemo目录,并按照Readme的说明运行程序。
- 打开pom.xml,添加对Jaeger客户端的依赖。
<dependency>
<groupId>io.jaegertracing</groupId>
<artifactId>jaeger-client</artifactId>
<version>0.31.0</version>
</dependency>
- 配置初始化参数并创建Tracer对象。
Tracer对象可以用来创建Span对象以便记录分布式操作时间、通过Extract或Inject方法跨机器透传数据、或设置当前Span。Tracer对象还配置了上报数据的网关地址、本机IP地址、采样率、服务名等数据。您可以通过调整采样率来减少因上报数据产生的开销。
说明 请将<endpoint>
替换成链路追踪控制台集群设置页面里的上相应客户端和地域的接入点。
// 将manualDemo替换为您的应用名称。
io.jaegertracing.Configuration config = new io.jaegertracing.Configuration("manualDemo");
io.jaegertracing.Configuration.SenderConfiguration sender = new io.jaegertracing.Configuration.SenderConfiguration();
// 将 <endpoint> 替换为控制台概览页面上相应客户端和地域的接入点。
sender.withEndpoint("<endpoint>");
config.withSampler(new io.jaegertracing.Configuration.SamplerConfiguration().withType("const").withParam(1));
config.withReporter(new io.jaegertracing.Configuration.ReporterConfiguration().withSender(sender).withMaxQueueSize(10000));
GlobalTracer.register(config.getTracer());
- 记录请求数据。
Tracer tracer = GlobalTracer.get();
// 创建Span。
Span span = tracer.buildSpan("parentSpan").withTag("myTag", "spanFirst").start();
tracer.scopeManager().activate(span, false);
tracer.activeSpan().setTag("methodName", "testTracing");
// 业务逻辑。
secondBiz();
span.finish();
- 等待2分钟~3分钟后,登录链路追踪Tracing Analysis控制台,在应用列表页面并查看上报的链路数据。
后续步骤
将应用数据上报至链路追踪控制台后,您可以在链路追踪控制台执行以下操作:
链路追踪支持将Java、PHP、Go、Python、JS、.NET、C++等语言的应用数据上报至控制台。支持的上报数据客户端包括Jaeger、Zipkin和SkyWalking。请在下方根据您的应用语言或者使用的客户端查看相应的应用接入文档。
按应用语言
按客户端
在文档使用中是否遇到以下问题
更多建议
匿名提交