我有一个kinesis consumer,它在ECS fargate中运行,我尝试将其添加到x射线上。我已将x射线side car添加到CloudFormation中,用于任务定义,它显示在任务中并正在运行
{
"name": "xray-daemon",
"Image": {************.dkr.ecr.us-east-1.amazonaws.com/xray-daemon},
"cpu": 32,
"memoryReservation": 256,
"portMappings" : [
{
"containerPort": 2000,
"protocol": "udp"
}
]
},
我就把前后一个SNS发布
AWSXRay.beginSubsegment("SNS Publish")
-- do the publish
AWSXRay.endSubsegment();
但还是没找到。
最后,我在应用程序的开头添加了以下内容,我认为这会将整个ECS过程记录到X射线
AWSXRayRecorderBuilder builder = AWSXRayRecorderBuilder.standard().withPlugin(new ECSPlugin())
AWSXRay.setGlobalRecorder(builder.build())
到目前为止,一切运行良好(消费者不受影响,运行良好),但没有显示在x光。任何想法,我可能错过了什么?
谢谢
1条答案
按热度按时间cgh8pdjw1#
当您在应用中添加此内容时:
我不是awsMaven,但是,你没错过吗?
由于Fargate是一个管理任务运行示例的服务,因此禁止访问底层主机。因此,ECSPlugin和EC2 Plugins for X-Ray将无法工作。
如果没有,请查看代码片段,了解如何将X射线SDK添加到应用并在fargate上运行X射线:
向AWS X射线发送跟踪信息