X-Ray: Sampling, Integrations Flashcards
Sampling - это способ …, отправляемых в X-Ray (для …). Например, слать только % от всех.
снизить количество запросов, снижения стоимости
… - мы определяем их, чтобы регулировать количество данных, которые шлём в X-Ray. Больше данных - больше платим.
Sampling Rules
Преимущество Sampling Rules в том, что можно менять их …
БЕЗ изменений в коде и БЕЗ перезапуска приложения.
Sampling Rule имеет настройки RESERVOIR и RATE (цифры). Что они значат? По-умолчанию RATE равен …
-
RESERVOIR
значит отслеживать первый запрос в течение каждой 1-ой секунды -
RATE
значит отслеживать дополнительно ещё какой-то процент запросов сверхRESERVOIR
По-умолчанию RATE равен 5%.
IAM Role, которую assume’ает X-Ray агент должна иметь указанные Policies, например API операции …
PutTraceSegments
-
PutTelemetryRecords
(загружать метрики в X-Ray) GetSamplingRules
GetSamplingTargets
GetSamplingStatisticSummaries
Чтобы читать данные из X-Ray, нужно API операции …
GetSamplingRules
GetSamplingTargets
GetSamplingStatistictSummaries
BatchGetTraces
GetServiceGraph
GetTraceSummaries
GetGroups
Чтобы активировать X-Ray для Beanstalk приложения, нужно … или … в случае IaC подхода.
При этом EC2 instance, на котором развёрнут Beanstalk Stack должен …
- Выбрать опцию на AWS Console
- Или указать конфигурацию в
.ebextension/xray-daemon.config
иметь IAM Role с правами записи в X-Ray для демона
Чтобы Beanstalk приложения инструментировалось X-Ray, нужно как обычно …
использовать X-Ray SDK для инструментации.
Какова особенность Multicontainer Docker?
X-Ray демон НЕ поддерживает Multicontainer Docker
.
Так что, если мы используем Multicontainer Docker
, то управлять X-Ray демоном нужно самому.
Чтобы активировать X-Ray для ECS (EC2 Launch Type) приложения, нужно … или …
Выделять Docker Container для X-Ray демона на каждом EC2 instance
Выделять Sidecar для X-Ray демона в каждом контейнере
Если для ECS выбран вариант “separate container”, то X-Ray демон живёт внутри … (напоминает …)
Если для ECS выбран вариант “sidecar”, то X-Ray демон живёт внутри …
внутри EC2 instance’а (напоминает ECS агента)
внутри контейнера каждого приложения
Чтобы активировать X-Ray для ECS (Fargate) приложения, нужно …
Выделять Sidecar для X-Ray демона в контейнере каждого приложения
Каким образом X-Ray демон (будучи контейнером в EC2 Launch Type ECS кластере) собирает Trace’ы от контейнеров приложений?
Контейнеры приложений шлют данные (Trace’ы) в контейнер с X-Ray агентом.
Для каждого приложения нужно указать environment variable AWS_XRAY_DAEMON_ADDRESS.
В ней будет указан host:port контейнера с X-Ray демоном. Тогда X-Ray SDK будет знать, как слать данные в контейнер с демоном.
Порт контейнера с демоном 2000, прокотол UDP.
Что значит Проект “OpenTelemetry”? Как он связан с AWS?
Это Open Source проект со множеством дистрибутивов.
В том числе AWS имеет свой дистрибутив “OpenTelemetry”.
Вообще, можно сказать, что OpenTelemetry - это стандарт.
А AWS имеет конкретную реализацию этого стандарта.
Какие цели преследует OpenTelemetry?
Проект “OpenTelemetry” следует тем же целям, что и AWS X-Ray.
Собирает Trace
’ы и Metric
’и распределённых приложений.