Извлечение данных из Prometheus

Материал из Документация Ключ-АСТРОМ

В следующем примере конфигурации показано, как настроить экземпляр Collector для извлечения данных из существующей настройки Prometheus и импорта их в виде запроса OTLP в Ключ-АСТРОМ.

Предустановка

Информацию о настройке Collector с использованием указанной ниже конфигурации см. в разделах Развертывание коллектора и Конфигурация коллектора.

Демо конфигурация

receivers:

  prometheus:

     config:

       scrape_configs:

       - job_name: 'node-exporter'

         scrape_interval: 60s

         static_configs:

         - targets: ['prometheus-prometheus-node-exporter:9100']

       - job_name: opentelemetry-collector

         scrape_interval: 60s

         static_configs:

         - targets:

            - 127.0.0.1:8888

processors:

  cumulativetodelta:

exporters:

  otlphttp:

    endpoint: ${env:DT_ENDPOINT}

    headers:

      Authorization: "Api-Token ${env:DT_API_TOKEN}"

service:

  pipelines:

    metrics:

      receivers: [prometheus]

      processors: [cumulativetodelta]

      exporters: [otlphttp]

Компоненты

Для нашей конфигурации мы настраиваем следующие компоненты.

Приемники

В разделе receivers мы указываем приемник prometheus, как активный компонент приемника для нашего экземпляра Collector. Мы настраиваем приемник с двумя заданиями node-exporter и opentelemetry-collector в разделе scrape_configs, чтобы он извлекал данные с указанных хостов раз в минуту (scrape_interval: 60s).

Полный список параметров конфигурации см. в документации Prometheus .

Процессоры

В разделе processors мы указываем процессор cumulativetodelta для преобразования метрик, выдаваемых приемником Prometheus, в формат их дельта-агрегации.

Экспортеры

В разделе exporters мы указываем экспортер otlphttp по умолчанию и настраиваем его с помощью URL-адреса нашего API Ключ-АСТРОМ и требуемого токена аутентификации.

Для этой цели мы устанавливаем следующие две переменные среды и ссылаемся на них в значениях конфигурации для endpoint и Authorization.

  • DT_ENDPOINT содержит базовый URL-адрес конечной точки API Ключ-АСТРОМ (например, https://{your-environment-id}.live.dynatrace.com/api/v2/otlp)
  • DT_API_TOKEN содержит токен API

Сервисные контейнеры

В разделе service мы собираем объекты приемника, процессора и экспортера в контейнер метрик, который будет выполнять задания Prometheus, преобразовывать их метрики в дельта-значения и загружать данные в Ключ-АСТРОМ.