手动检测 Amazon SDK 客户端
注意
终止支持通知:2027 年 2 月 25 日,Amazon X-Ray 将停止对 Amazon X-Ray SDK 和进程守护程序的支持。2027 年 2 月 25 日之后,您将不会再收到更新或发行版本。有关支持时间表的更多信息,请参阅 X-Ray SDK 和进程守护程序终止支持时间表。我们建议迁移到 OpenTelemetry。有关迁移到 OpenTelemetry 的更多信息,请参阅从 X-Ray 检测迁移到 OpenTelemetry 检测。
当您在生成依赖项中包含 Amazon SDK Instrumentor 子模块时,X-Ray SDK for Java 自动检测所有 Amazon SDK 客户端。
您可以通过删除 Instrumentor 子模块来禁用自动客户端检测。这使您可以手动检测一些客户端而忽略另一些客户端,或者在不同客户端上使用不同跟踪处理程序。
为了说明为检测特定 Amazon SDK 客户端提供的支持,应用程序传递跟踪处理程序到 AmazonDynamoDBClientBuilder 作为用户、游戏和会话模型中的请求处理程序。此代码更改告知 SDK 使用这些客户端检测对 DynamoDB 的所有调用。
例 src/main/java/scorekeep/SessionModel.java - 手动 Amazon 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);如果您从项目依赖项中删除 Amazon SDK Instrumentor 子模块,则只有手动检测的 Amazon SDK 客户端显示在跟踪地图中。