本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
手动检测 S AWS DK 客户端
注意
End-of-support 注意 — 2027 年 2 月 25 日, AWS X-Ray 将停止对 AWS X-Ray SDKs 和守护程序的支持。2027 年 2 月 25 日之后,您将不再收到更新或发布。有关支持时间表的更多信息,请参阅X-Ray SDK 和守护程序终止支持时间表。我们建议迁移到 OpenTelemetry。有关迁移到的更多信息 OpenTelemetry,请参阅从 X-Ray 仪器迁移到 OpenTelemetry 仪器。
当你在构建依赖项中包含 SDK Instrumentor 子模块时, AWS 适用于 Java 的 X-Ray AWS SDK 会自动检测所有 SDK 客户端。
您可以通过删除 Instrumentor 子模块来禁用自动客户端检测。这使您可以手动检测一些客户端而忽略另一些客户端,或者在不同客户端上使用不同跟踪处理程序。
为了说明对特定 AWS SDK 客户端进行检测的支持,应用程序在用户、游戏和会话模型中将跟踪处理程序AmazonDynamoDBClientBuilder
作为请求处理程序传递给。此代码更改告知 SDK 使用这些客户端检测对 DynamoDB 的所有调用。
例 src/main/java/scorekeep/SessionModel.java
- 手动 AWS
SDK 客户端检测
import com.amazonaws.xray.AWSXRay;
import com.amazonaws.xray.handlers.TracingHandler;
public class SessionModel {
private AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()
.withRegion(Constants.REGION)
.withRequestHandlers(new TracingHandler(AWSXRay.getGlobalRecorder()))
.build();
private DynamoDBMapper mapper = new DynamoDBMapper(client);
如果您从项目依赖项中移除 AWS SDK Instrumentor 子模块,则只有手动检测的 AWS SDK 客户端才会出现在跟踪图中。