Перейти к основному содержимому
Версия: 9.3

Настройка сбора трейсов Monq

При необходимости выполнения тонкой отладки какого-либо функционала возможно включение отправки трейсов микросервисов Monq в любом из модулей (pl, sm, cl, mcs, fm, plugins). Трейсы будут отправлены в OpenTelemetry Collector, который должен быть заранее установлен и доступен для сервисов Monq.

Для включения данной опции необходимо:

  1. Перейти в Consul

  2. Найти нужный модуль (pl,sm,cl,mcs,fm,plugins)

  3. В файле common-appsettings.json выбранного модуля добавить секцию OpenTelemetry (если не было сделано ранее):

    "OpenTelemetry": {
    "Otlp": {
    "Endpoint": "http://<адрес-коллектора>:4317",
    "Protocol": "grpc",
    "Headers": "Authorization=Basic <token>" # если в коллекторе требуется авторизация
    },
    "EnableTracing": true,
    "EnableMetrics": true,
    "EnablePrometheusEndpoint": true,
    "SamplingRatio": 1.0
    }

Значения Endpoint и Headers замените параметрами целевого окружения.

Значение SamplingRatio регулирует, какой процент трейсов полетит в коллектор.

  • 1.0 = 100%
  • 0.1 = 10%

Сэмплирование осуществляется только по родительским трейсам, поэтому попавшие в коллектор трейсы будут полными.

Сохраните конфигурацию в Consul и выполните rollout restart для сервисов модуля, в которые вносились изменения.

Настройки экспорта трейсов в коллекторе и выбор решения для хранения остается в зоне ответственности клиента. В качестве примера это может быть VictoriaTraces.

Для анализа трейсов можно использовать любое из OTEL-совместимых решений, например, подключить к Grafana в качестве источника VictoriaTraces (datasource=Jaeger).