未找到 AWS X-Ray AmazonDynamoDBv2 段

Ani*_*ran 3 amazon-dynamodb aws-sdk aws-xray

我有一个 Web 应用程序(spring),我想使用 AWS-XRay 对其进行检测。根据文档,我在 web.xml 中添加了“AWSXRayServletFilter”,在 spring 配置类中添加了以下代码段。

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

    builder.withSamplingStrategy(new DefaultSamplingStrategy());

    AWSXRay.setGlobalRecorder(builder.build());
}
Run Code Online (Sandbox Code Playgroud)

在 pom.xml 中还添加了以下依赖项

<dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-xray-recorder-sdk-aws-sdk-instrumentor</artifactId>
            <version>1.2.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

在应用程序启动期间,我收到以下异常。

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

任何解决此问题的指针都会有所帮助

小智 5

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

AWSXRay.setGlobalRecorder(AWSXRayRecorderBuilder.defaultRecorder());
AWSXRay.beginSegment("MySeg");
Run Code Online (Sandbox Code Playgroud)