Skip to content

Класс CollectorRegistry

Реестр коллекторов Prometheus.

Коллектор — объект с методом Collect(), который возвращает массив семейств метрик в промежуточном формате библиотеки (Имя, Тип, Справка, Сэмплы).

Жизненный цикл

При создании:

  • инициализирует внутренний массив Коллекторы (список зарегистрированных коллекторов).

Обычно используется через модуль PrometheusRegistry, но может создаваться и использоваться вручную, если нужно несколько независимых реестров.

Методы

Функция Register(Коллектор) Экспорт

Регистрирует коллектор в реестре.

Параметры:

  • Коллектор — объект с методом Collect().

Возвращаемое значение:

  • БулевоИстина (реестр не делает сложной валидации, но может быть расширен в будущем).

Функция Unregister(Коллектор) Экспорт

Снимает регистрацию коллектора.

Параметры:

  • Коллектор — ранее зарегистрированный объект.

Возвращаемое значение:

  • БулевоИстина, если коллектор найден и удалён;
  • Ложь, если такого коллектора в реестре нет.

Функция Gather() Экспорт

Собирает метрики со всех зарегистрированных коллекторов.

Алгоритм:

  1. Создаёт пустой массив ВсеСемейства.
  2. Для каждого коллектора из Коллекторы:
    • вызывает Коллектор.Collect(), получая массив семейств;
    • добавляет каждое семейство в ВсеСемейства.
  3. Возвращает ВсеСемейства.

Результат:

  • массив семейств метрик, готовый к дальнейшей обработке:
    • либо напрямую — через PrometheusTextFormat.Сериализовать;
    • либо через дополнительные преобразования (например, объединение со старыми коллекторами в PrometheusRegistry).