Сбор метрик для мониторинга

Технический эндпоинт /metrics отдает метрики сервиса в формате Prometheus. Его можно использовать для подключения систем мониторинга.

Включить сбор метрик

По умолчанию технические эндпоинты выключены. Чтобы включить /metrics, добавьте переменную ENABLE_TECH_ENDPOINTS=true.

Если включить только ENABLE_TECH_ENDPOINTS, но не указать способ защиты, эндпоинт не будет доступен. Дополнительно настройте один из режимов: защищенный доступ или доступ без защиты.

Настроить защищенный доступ

Рекомендуемый вариант — включить эндпоинт и задать токен для доступа к техническим эндпоинтам:

ENABLE_TECH_ENDPOINTS=true TECH_ENDPOINTS_TOKEN=<СОЗДАЙТЕ_СЕКРЕТНЫЙ_КЛЮЧ>

В запросах к /metrics передавайте токен в заголовке Authorization:

curl -H "Authorization: Bearer <СОЗДАЙТЕ_СЕКРЕТНЫЙ_КЛЮЧ>" https://{ges_url}/metrics

Если токен не передан или значение не совпадает с TECH_ENDPOINTS_TOKEN, сервис вернет ошибку 401 Unauthorized.

Доступ без защиты

Если эндпоинт доступен только во внутреннем закрытом контуре, можно разрешить доступ без токена:

ENABLE_TECH_ENDPOINTS=true ALLOW_UNSAFE_TECH_ENDPOINTS=true

Используйте этот режим только если доступ к сервису ограничен на уровне сети.

Проверка

После настройки проверьте, что эндпоинт возвращает метрики.

Для защищенного доступа:

curl -H "Authorization: Bearer <СОЗДАЙТЕ_СЕКРЕТНЫЙ_КЛЮЧ>" https://{ges_url}/metrics

Для доступа без защиты:

curl https://{ges_url}/metrics

В ответе сервис вернет текст в формате Prometheus с MIME-типом text/plain.