我有一个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());
}还在pom.xml中添加了以下依赖项
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-xray-recorder-sdk-aws-sdk-instrumentor</artifactId>
<version>1.2.0</version>
</dependency>在应用程序启动期间,我得到了下面的异常。
com.amazonaws.xray.exceptions.SegmentNotFoundException:无法开始名为‘AmazonDynamoDBv2’的子段:找不到段
任何解决这个问题的建议都会很有帮助
发布于 2017-10-27 02:42:55
初始化全局记录器时,还应启动父段。您正在尝试创建一个不带段的SubSegment。
AWSXRay.setGlobalRecorder(AWSXRayRecorderBuilder.defaultRecorder());
AWSXRay.beginSegment("MySeg");发布于 2018-11-07 16:03:29
我只在模拟dynamodb的junit测试中得到了这一点。为了解决这个问题,我把
AWSXRay.beginSegment("AmazonDynamoDBv2");在测试设置中(@Before)
我没有触及实现,因为我相信这是亚马逊已经在其SDK中做的事情?
https://stackoverflow.com/questions/46659223
复制相似问题