Состояние системы
Система публикует показатели работоспособности Системы и готовности Системы к приёму запросов на отдельном URI /health.
Система предоставляет следующие показатели:
- Работоспособность системы (liveness probe).
- Готовность системы (readiness probe).
Настройка интерфейса показателей состояния Системы
Для настройки параметров публикации интерфейса публикации метрик настройте параметры секции server в конфигурационном файле config.json Системы. Данные показатели размещаются на том же интерфейсе, на котором публикуется основной интерфейс аутентификации Системы.
После внесения изменений в параметры сессии в config.toml/config.json перезапустите службу Сервера Системы
Проверка доступности показателей состояния Системы
Любым подходящим инструментом отправьте HTTP-запрос на URI:
- Для получения liveness probe -
http://host/health/live. - Для получения readiness probe -
http://host/health/ready.
Метрики системы
Система публикует мгновенные показатели работы Системы на отдельном URI /metrics. Этот URI доступен по отдельному сетевому порту и может быть размещён на отдельном сетевом интерфейсе и на отдельном хосте, изолированном от остальных веб-интерфейсов.
Примечание
В роли потребителя метрик в инфраструктуре может быть развёрнута система Prometheus, а для визуализации показателей - сформирован дашборд в Grafana
Система предоставляет следующие показатели:
- Число фактов аутентификации с использованием определённого фактора аутентификации.
- Число фактов аутентификации в определённые приложения.
- Число активных сессий.
- Число создаваемых в момент времени новых сессий.
- Число завершаемых в момент времени сессий.
- Число создаваемых новых УЗ пользователей.
- Число блокируемых УЗ пользователей.
- Набор показателей производительности HTTP-запросов.
- Стандартный набор метрик языка Golang.
Настройка интерфейса публикации метрик Prometheus
Для настройки параметров публикации интерфейса публикации метрик настройте параметры секции metrics в конфигурационном файле config.json Системы.
| Параметр | Значение |
|---|---|
host | IP-адрес, на котором предполагается открыть сетевой порт |
port | Сетевой порт |
После внесения изменений в параметры сессии в config.toml/config.json перезапустите службу Сервера Системы
Проверка доступности интерфейса публикации метрик
Любым подходящим инструментом отправьте HTTP-запрос на указанный в конфигурации host и port.
В ответ Система вернёт заголовок HTTP/1.1 200 OK и в ответе текстовый набор показателей следующего вида:
Пример
# HELP go_gc_duration_seconds A summary of the GC invocation durations.
# TYPE go_gc_duration_seconds summary
go_gc_duration_seconds{quantile="0"} 1.58e-05
go_gc_duration_seconds{quantile="0.25"} 3.45e-05
go_gc_duration_seconds{quantile="0.5"} 4.24e-05
go_gc_duration_seconds{quantile="0.75"} 4.73e-05
...
Подключение интерфейса публикации метрик к Prometheus
В конфигурационном файле /etc/prometheus/prometheus.yml в секцию scrape_configs добавьте задачу на сбор метрик с указанного хоста.