手动检测 S AWS DK 客户端 - AWS X-Ray

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

手动检测 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 客户端才会出现在跟踪图中。