Metrics From Static Targets
Общие сведения
Название плагина: metricsFromStaticTargets
Ссылка для загрузки плагина: скачать
Описание:
Данный плагин позволяет собрать метрики с внешних целей (экспортеров метрик)
Формат сценария задания потока данных
name: Task for metricsFromStaticTargets
jobs:
  - name: Task for metricsFromStaticTargets
    steps:
      - plugin: metricsFromStaticTargets
        with:
          streamId: $.vars.stream.id
          streamKey: $.vars.stream.key
          syncLogLevel: <string>
          remote_write:
          - url: <string>
            remoteTimeout: <string>
            maxSamplesPerSend: <integer>
            minBackoff: <string>
            maxBackoff: <string>
          scrapeConfigs:
          - jobName: <string>
            scrapeTimeout: <string>
            scheme: <string>
            metricsPath: <string>
            followRedirects: <boolean>
            enableHttp2: <boolean>
            basicAuth:
              username: <string>
              password: <string>
              passwordFile: <string>
            authorization:
              type: <string> 
              credentials: <string>
              credentialsFile: <string>
            staticConfigs:
              - targets:
                - <string>
              labels:
                "<key>":"<value>"
Параметры конфигурации используемые в сценарии
| Параметр | Тип | Обязательный параметр | Значение по умолчанию | Описание | 
|---|---|---|---|---|
| streamId | string | да | Идентификатор текущего потока ($.vars.stream.id) | |
| streamKey | string | да | API ключ текущего потока ($.vars.stream.key) | |
| syncLogLevel | string | опционально | error | Параметр, определяющий уровень логирования выполнения заданий. Лог выводится в лог работы агента. | 
| remoteWrite:url | string | опционально | $.baseUri/api/public/mcs/v1/metrics-collector/prometheus/remote-write | URL-адрес коллектора monq для отправки собранных метрик | 
| remoteWrite:remoteTimeout | string | опционально | 30s | Таймаут для запросов к коллектору Monq | 
| remoteWrite:minBackoff | string | опционально | 30ms | Задержка начальной повторной попытки отправки метрик. Удваивается при каждой повторной попытке | 
| remoteWrite:maxBackoff | string | опционально | 5s | Максимальная задержка повтора | 
| remoteWrite:maxSamplesPerSend | integer | опционально | 2000 | Количество метрик, отправляемых в коллектор единоразово | 
| scrapeConfigs | list | да | ||
| jobName | string | да | Наименование задания по снятию метрик | |
| scrapeTimeout | integer | опционально | 10 | Таймаут запроса на метрики | 
| timestampsConfig | boolean | опционально | true | Использовать исходную временную метку от издателя метрики (если таковая имеется) | 
| metricsPath | string | опционально | /metrics | Путь к HTTP ресурсу, по которому можно получить метрики | 
| scheme | string | опционально | http | Протокол (http/https) для обращения к точке публикации метрик | 
| followRedirects | boolean | опционально | false | Параметр, позволяющий запросу следовать перенаправлениям | 
| enableHttp2 | boolean | опционально | false | Поддержка http2 | 
| basicAuth | ||||
| username | string | опционально | Логин для http-аутентификации | |
| password | string | опционально | Пароль для http-аутентификации | |
| passwordFile | string | опционально | Путь к файлу с паролем | |
| authorization | ||||
| type | string | опционально | Bearer | Тип аутентификации запроса | 
| credentials | string | опционально | Реквизиты доступа | |
| credentialsFile | string | опционально | Путь к файлу с реквизитами доступа | |
| staticConfigs | ||||
| targets | list | да | Список целей для данного задания, представляющих собой строки, состоящие из имени хоста или IP-адреса, за которым следует необязательный номер порта. | |
| labels | list | опционально | Перечисление меток, добавляемые к полученной метрике | 
Пример сценария на получение метрик
В приведенном примере метрики собираются с экспортера - vmware_exporter.
name: vCenter - Health metrics
jobs:
  - name: vCenter - Health metrics
    steps:
      - plugin: metricsFromStaticTargets
        with:
          streamId: $.vars.stream.id
          streamKey: $.vars.stream.key
          syncLogLevel: warning
          remoteWrite:
            remoteTimeout: 30s
            maxSamplesPerSend: 500
          scrapeConfigs:
          - jobName: vcenter
            scrapeTimeout: 10s
            scheme: http
            metricsPath: /metrics
            followRedirects: true
            enableHttp2: true
            staticConfigs:
              - targets:
                - 10.10.10.10:9272