Я следовал документации AWS по настройке XRAY для нашего приложения Spring Boot, развернутого в AWS ECS, но я не могу увидеть следы своих сервисов в консоли AWS.Вот общий обзор изменений, которые я реализовал:
Добавлена роль с разрешениями политики для моего EC2
"xray:BatchGetTraces",
"xray:GetServiceGraph",
"xray:GetTraceGraph",
"xray:GetTraceSummaries",
"xray:PutTelemetryRecords",
"xray:PutTraceSegments"
Добавлен фильтр трассировки
@Bean
public Filter TracingFilter() {
return new AWSXRayServletFilter("myService");
}
Добавлен XRAYзависимостей к нашему POM-файлу и добавили аннотацию @ XRayEnabled к нашему методу Controller:
Загрузил демон XRAY в наш экземпляр ec2 и установил
curl https://s3.dualstack.us-east-1.amazonaws.com/aws-xray-assets.us-east-1/xray-daemon/aws-xray-daemon-3.x.rpm -o /home/ec2-user/xray.rpm
yum install -y /home/ec2-user/xray.rpm
Я подтвердилчто мы видим операторы протоколирования UDP, например: com.amazonaws.xray.emitters.UDPEmitter:
{
"name" : "myService",
"id" : "1234",
"start_time" : 1.546020031234E9,
"trace_id" : "myTraceId",
"end_time" : 1.546020031234E9,
"http" : {
"request" : {
"method" : "POST",
"client_ip" : "myIp",
"url" : "myURL",
"user_agent" : "PostmanRuntime/7.4.0",
"x_forwarded_for" : true
},
"response" : {
"content_length" : 200,
"status" : 200
}
},
"aws" : {
"xray" : {
"sdk_version" : "1.2.1",
"sdk" : "X-Ray for Java"
}
},
"service" : {
"runtime" : "OpenJDK 64-Bit Server VM",
"runtime_version" : "1.8.0_151"
}
}
И я также проверил, что демон работает на ec2, используя netstat -tulpn
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 127.0.0.1:2000 0.0.0.0:* 14126/xray
Что еще нужно для того, чтобы трассировки XRAY могли отображаться в консоли AWS?
Я запустил демон докера с включенной регистрацией, но я не вижу никакихуказание на то, что демон docker отправляет данные в AWS, просто информацию о запуске и все:
2018-12-28T23:14:19Z [Info] Initializing AWS X-Ray daemon 3.0.0
2018-12-28T23:14:19Z [Info] Using buffer memory limit of 304 MB
2018-12-28T23:14:19Z [Info] 4864 segment buffers allocated
2018-12-28T23:14:19Z [Info] Using region: us-east-1
2018-12-28T23:14:19Z [Info] Starting proxy http server on 127.0.0.1:2000