Класс CollectorRegistry
Реестр коллекторов Prometheus.
Коллектор — объект с методом Collect(), который возвращает массив семейств метрик в промежуточном формате библиотеки (Имя, Тип, Справка, Сэмплы).
Жизненный цикл
При создании:
- инициализирует внутренний массив
Коллекторы(список зарегистрированных коллекторов).
Обычно используется через модуль PrometheusRegistry, но может создаваться и использоваться вручную, если нужно несколько независимых реестров.
Методы
Функция Register(Коллектор) Экспорт
Регистрирует коллектор в реестре.
Параметры:
Коллектор— объект с методомCollect().
Возвращаемое значение:
Булево—Истина(реестр не делает сложной валидации, но может быть расширен в будущем).
Функция Unregister(Коллектор) Экспорт
Снимает регистрацию коллектора.
Параметры:
Коллектор— ранее зарегистрированный объект.
Возвращаемое значение:
Булево—Истина, если коллектор найден и удалён;Ложь, если такого коллектора в реестре нет.
Функция Gather() Экспорт
Собирает метрики со всех зарегистрированных коллекторов.
Алгоритм:
- Создаёт пустой массив
ВсеСемейства. - Для каждого коллектора из
Коллекторы:- вызывает
Коллектор.Collect(), получая массив семейств; - добавляет каждое семейство в
ВсеСемейства.
- вызывает
- Возвращает
ВсеСемейства.
Результат:
- массив семейств метрик, готовый к дальнейшей обработке:
- либо напрямую — через
PrometheusTextFormat.Сериализовать; - либо через дополнительные преобразования (например, объединение со старыми коллекторами в
PrometheusRegistry).
- либо напрямую — через
