Amazon dynamodb 未找到AWS X射线AmazonDynamoDBv2段

Amazon dynamodb 未找到AWS X射线AmazonDynamoDBv2段,amazon-dynamodb,aws-sdk,aws-xray,Amazon Dynamodb,Aws Sdk,Aws Xray,我有一个web应用程序(spring),我想使用AWS X射线检测它。根据文档,我在web.xml中添加了“AWSXRayServletFilter”,并在spring配置类中添加了下面的代码片段 static { AWSXRayRecorderBuilder builder = AWSXRayRecorderBuilder.standard() .withPlugin(new EC2Plugin()).withPlugin(new ECSPlugin());

我有一个web应用程序(spring),我想使用AWS X射线检测它。根据文档,我在web.xml中添加了“AWSXRayServletFilter”,并在spring配置类中添加了下面的代码片段

static {
    AWSXRayRecorderBuilder builder = AWSXRayRecorderBuilder.standard()
        .withPlugin(new EC2Plugin()).withPlugin(new ECSPlugin());

    builder.withSamplingStrategy(new DefaultSamplingStrategy());

    AWSXRay.setGlobalRecorder(builder.build());
}
pom.xml中还添加了以下依赖项

<dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-xray-recorder-sdk-aws-sdk-instrumentor</artifactId>
            <version>1.2.0</version>
</dependency>

亚马逊网站
aws X射线记录器sdk aws sdk仪器
1.2.0
在应用程序启动期间,我得到以下异常

com.amazonaws.xray.exceptions.SegmentNotFoundException:未能开始名为“AmazonDynamoDBv2”的子段:找不到段


解决此问题的任何指针都将非常有用

当您初始化全局记录器时,还应启动父段。您正在尝试创建一个子段,但没有段

AWSXRay.setGlobalRecorder(AWSXRayRecorderBuilder.defaultRecorder());
AWSXRay.beginSegment("MySeg");

我只在junit测试中得到了这个,dynamodb被嘲笑了。为了解决这个问题,我把

AWSXRay.beginSegment("AmazonDynamoDBv2");
在测试设置中(@Before)

我没有涉及实现,因为我相信这是亚马逊在其SDK中已经做过的事情