• Русский
  • Интеграция наблюдаемых данных OpenTelemetry в платформу

    Содержание

    Overview

    Текущий продукт предоставляет возможности мониторинга метрик и распределённого трассирования для Java-сервисов через OTel Java Agent. Кроме того, пользователи могут интегрировать наблюдаемые данные из сервисов, разработанных с использованием OTel SDK, или из систем, совместимых с OpenTelemetry (таких как Harbor и GitLab), в платформу, используя её возможности визуализации данных.

    Этот документ предназначен для руководства пользователей по интеграции таких наблюдаемых данных в платформу.

    Prerequisites

    Убедитесь, что в кластере, где расположены сервисы или системы, развернута сервисная сетка (service mesh).

    Steps

    1. Настройка приемников OTel Collector

    Приемники OTel Collector отвечают за получение и парсинг данных из различных источников. В зависимости от источника данных и протокола интеграции, OTel Collector предлагает несколько приемников.

    Ниже перечислены приемники, включённые по умолчанию на платформе, и их сценарии использования:

    OTLP Receiver

    OTLP (OpenTelemetry Protocol) — это стандартный протокол, рекомендованный OpenTelemetry для получения данных трассировки, метрик и логов, поддерживающий транспортные протоколы gRPC и HTTP.

    ПротоколАдрес в кластере
    HTTPasm-otel-collector.cpaas-system:4318
    GRPCasm-otel-collector.cpaas-system:4317

    Zipkin Receiver

    Zipkin Receiver используется для получения данных трассировки в формате Zipkin, поддерживает транспорт по HTTP от клиентов Zipkin.

    ПротоколАдрес в кластере
    Zipkinasm-otel-collector.cpaas-system:9411

    • Как выбрать подходящий приемник?

      1. Определите типы данных, которые необходимо собирать (трассировка, метрики, логи), и поддерживаемые протоколы.

      2. Исходя из форматов данных и транспортных протоколов, используемых внешними сервисами, выберите соответствующий приемник из списка поддерживаемых приемников OTel Collector на платформе.

    2. Интеграция данных в платформу

    Пользовательские сервисы

    Интегрируйте OpenTelemetry SDK для отправки наблюдаемых данных (таких как трассировка, метрики и логи), генерируемых вашими сервисами, в OTel Collector. Конкретные шаги:

    1. Импортируйте OpenTelemetry SDK.
    2. Инициализируйте OpenTelemetry.
    3. Генерируйте и отправляйте данные трассировки.

    Сообщество OpenTelemetry предоставляет примеры использования SDK для разных языков, пожалуйста, обратитесь к официальной документации:

    Интеграция наблюдаемого ПО

    Внешние сервисы (например, GitLab и Harbor) обычно уже имеют возможность экспорта данных. Для конкретных методов настройки обратитесь к документации соответствующего ПО.

    В конфигурации необходимо указать адрес приемника OTel Collector следующим образом:

    1. Если ПО развернуто в том же кластере, что и сервисная сетка:

      • Убедитесь, что нужный приемник включён на платформе.
      • Полный список поддерживаемых приемников смотрите в Platform Supported Receiver List.
    2. Если ПО не может напрямую обратиться к OTel Collector по адресу кластера, возможно, потребуется настроить балансировщик нагрузки для обеспечения доступа внешнего сервиса. Обратитесь к администратору для дальнейшей настройки.

    3. Проверка интеграции данных

    1. Запустите внешний сервис и выполните необходимые тесты для генерации данных трассировки.

    2. Проверьте, были ли данные трассировки успешно получены и обработаны OTel Collector на платформе.

      • Используйте функционал платформы Tracing для запроса данных распределённого трассирования и проверки успешности интеграции внешних данных.