Экспорт метрик в Prometheus

Метрики в MITIGATOR хранятся в Graphite. Есть возможность экспортировать метрики в Prometheus через graphite_exporter.

Для организации отправки необходимо развернуть и настроить graphite_exporter (основной файл конфигурации и файл конфигурации соответствия метрик), настроить отправку метрик на graphite_exporter.

Краткая последовательность действий:

  1. Написание конфигурации соответствия метрик под конкретные нужды.
  2. Развертывание graphite_exporter с этой конфигурацией.
  3. Настройка отправки данных в системе MITIGATOR.

Конфигурация соответствия метрик graphite_exporter

Список метрик с кратким описанием доступен по ссылке.

Информация

Не гарантируется, что имена метрик не будут меняться между версиями.

Пример конфигурации:

mappings:
  - match: ^mitigator\.(\d+)\.elements\.router\.extInputCounter\.(.*)$
    match_type: regex
    name: extInputCounter
    labels:
      instance: $1
      unit: $2

  - match: ^mitigator\.(\d+)\.elements\.\.policy_(\d+)\.policy\.inputCounter\.(.*)$
    name: inputCounter
    match_type: regex
    labels:
      instance: $1
      policy: $2
      unit: $3

  - match: ^mitigator\.(\d+)\.ports\.((?:int|ext)\d+)\.opackets$
    name: opackets
    match_type: regex
    labels:
      instance: $1
      port: $2

Настройка MITIGATOR

В docker-compose.override.yml добавить:

version: "2.2"
services:
  fwstats:
    environment:
      FWSTATS_GRAPHITE_ADDRESS: "carbon-clickhouse.mitigator:2003,some_server:9109"

Здесь some_server:9109 – адрес и порт graphite_exporter; первое значение сохранять обязательно. При желании можно указать несколько серверов.

Применить параметры:

docker-compose up -d fwstats