Перейти к содержимому
Skip to main content

OTLP в Flaree

info

Перевод в процессе / Translation in progress. See русская версия.

OTLP (OpenTelemetry Protocol) — стандарт OpenTelemetry для передачи метрик, логов и трасс. В Flaree он используется в двух сценариях: локальный receiver на агенте для приложений на той же машине и публичный ingestion в облаке, если готов OpenTelemetry-пайплайн и агент не нужен.

OTLP на агенте

Receiver на агенте слушает только loopback 127.0.0.1 и не принимает соединения с 0.0.0.0: при non-loopback host в agent.yaml агент отказывается стартовать. Это изолирует приём OTLP от внешней сети и соответствует ADR 0005. Пути приёма — POST /v1/logs, POST /v1/metrics, POST /v1/traces. Дальше агент пересылает батчи в ingestion по egress-only каналу.

JSON-only кодирование

Receiver агента принимает только OTLP/JSON — Protobuf не поддерживается. Причина — сохранение NativeAOT-совместимости: Protobuf-зависимости ломают AOT-компиляцию, поэтому payload разбирается через JsonDocument без рефлексии (см. ADR 0005). Если SDK по умолчанию шлёт Protobuf, переключите его на JSON-экспортёр.

OTLP в облаке

Публичные ingestion-эндпоинты принимают OTLP/HTTP напрямую, минуя агент: POST /otlp/v1/metrics, POST /otlp/v1/logs, POST /otlp/v1/traces. Авторизация — токен workspace в заголовке X-Flaree-Token. Traces могут приниматься без отображения в UI, если хранение spans ещё не включено для вашего тарифа: данные не теряются и станут видимыми после активации.

Когда использовать

  • приложение уже инструментировано OpenTelemetry SDK и шлёт OTLP;
  • нужен единый канал для метрик и логов без отдельной интеграции под runtime;
  • миграция с Jaeger или Prometheus на Flaree без переписывания инструментации;
  • короткоживущим процессам проще отправить OTLP на loopback, чем ждать опроса агентом.

Дальше