Извлечение данных из Prometheus
В следующем примере конфигурации показано, как настроить экземпляр Collector для извлечения данных из существующей настройки Prometheus и импорта их в виде запроса OTLP в Ключ-АСТРОМ.
Предустановка
- Экземпляр Prometheus, работающий на порту 8888
- Один из следующих дистрибутивов Collector с приемником Prometheus и процессором дельта-преобразования :
- URL-адрес конечной точки API Ключ-АСТРОМ, на которую следует экспортировать данные.
- Токен API с соответствующей областью доступа (требуется только для SaaS и АктивногоШлюза)
Информацию о настройке 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, преобразовывать их метрики в дельта-значения и загружать данные в Ключ-АСТРОМ.