Перейти к содержанию

Настройка трассировки OpenTelemetry с Envoy

Заявление о поддержке

Данная интеграция основана на коде с открытым исходным кодом, регулируемом соответствующими сообществами, и не подпадает под действие политики поддержки Dynatrace. Мы стремимся оказывать помощь, однако проблемы и запросы на добавление функций следует сообщать непосредственно в соответствующий проект. Dynatrace не может гарантировать исправления или реализацию функций ввиду независимой природы проектов с открытым исходным кодом.

Всегда используйте последнюю версию выпуска, чтобы убедиться, что у вас установлены актуальные исправления.

На этой странице описано, как настроить экземпляр Envoy версии 1.29 и выше для экспорта трассировок в Dynatrace.

Если вы используете Envoy версий 1.28 и ниже, вы по-прежнему можете экспортировать трассировки в Dynatrace через кодовый модуль OneAgent для Envoy.

Предварительные условия

  • URL OTLP-трассировок для экспорта.
  • Кодовый модуль OneAgent для Envoy отключён. Для этого:

  • Перейдите на соответствующую страницу настроек:

    • Для всей среды перейдите в Настройки > Мониторинг > Отслеживаемые технологии.
    • Для конкретного хоста перейдите в Ваш хост > Настройки хоста > Общие.
    • Найдите Envoy в списке отслеживаемых технологий и выберите Редактировать.
    • Выберите переключатель Отслеживать Envoy, чтобы отключить кодовый модуль OneAgent для Envoy.

Шаги

  1. Получение записей конфигурации

  2. В Dynatrace Hub выполните поиск Envoy.

  3. Выберите запись Hub для Envoy.
  4. Выберите Настроить.
  5. Настройте токен API.
  6. Продолжите выполнение следующих шагов и используйте (при необходимости адаптируя) два предоставленных фрагмента конфигурации.

  7. Добавление записи кластера Dynatrace для экспорта OpenTelemetry

Чтобы Envoy отправлял трассировки в Dynatrace, необходимо сначала настроить запись кластера для Dynatrace в файле конфигурации Envoy. Для этого добавьте запись конфигурации кластера, полученную на шаге 2, в разделе верхнего уровня clusters.

  1. Специфическая для Dynatrace конфигурация трассировщика OpenTelemetry

Далее необходимо добавить провайдера трассировки в фильтр менеджера HTTP-соединений в файле конфигурации Envoy.

Envoy 1.30+

Envoy 1.29

Используйте запись конфигурации трассировщика, полученную на шаге 2, настройте токен API в разделе tracing - provider - typed_config - http_service - request_headers_to_add - header - value (правильный синтаксис: value: "Api-Token YOUR_API_TOKEN_HERE"), и добавьте конфигурацию трассировщика в упомянутую запись filters.

Настройте следующий фрагмент в разделе filters.

tracing:


provider:


name: envoy.tracers.opentelemetry


typed_config:


"@type": type.googleapis.com/envoy.config.trace.v3.OpenTelemetryConfig


service_name: your-service-name


http_service:


http_uri:


uri: "{your-environment-id}.live.dynatrace.com/api/v2/otlp/v1/traces"


cluster: dynatrace


timeout: 10s


request_headers_to_add:


- header:


key: "Authorization"


value: "Api-Token {API_TOKEN_HERE}"


resource_detectors:


- name: envoy.tracers.opentelemetry.resource_detectors.dynatrace


typed_config:


"@type": type.googleapis.com/envoy.extensions.tracers.opentelemetry.resource_detectors.v3.DynatraceResourceDetectorConfig

Следующие значения необходимо скорректировать в соответствии с вашей средой Dynatrace и конфигурацией экспорта:

  • uri — указывает желаемый URL экспорта с путём трассировки. Значение не должно содержать схему протокола, а начинаться с имени хоста.
  • cluster — указывает имя кластера и должно совпадать со значением cluster_name предыдущего определения кластера.
  • request_headers_to_add — содержит HTTP-заголовки, которые необходимо включить в запрос. Обязательно при экспорте через ActiveGate (настраивается для токена API).

  • Проверка настройки

После завершения настройки и приёма первых данных вы можете убедиться, что трассировки отображаются в Dynatrace.

trace

Связанные темы

  • Prometheus
  • Метрики прокси Istio/Envoy