Можно ли кастомизировать readiness/liveness пробы в Spring Actuator для добавления дополнительных проверок? Если да, то как?

Да: можно добавить HealthIndicator и включить его в health group readiness или liveness. Внешние общие зависимости обычно не добавляют в liveness, чтобы их сбой не вызвал массовые перезапуски.

Короткий ответ

Что ответить на собеседовании

Да: можно добавить HealthIndicator и включить его в health group readiness или liveness. Внешние общие зависимости обычно не добавляют в liveness, чтобы их сбой не вызвал массовые перезапуски.

Подробный разбор

Ответ с пояснениями

Да: можно добавить HealthIndicator и включить его в health group readiness или liveness. Внешние общие зависимости обычно не добавляют в liveness, чтобы их сбой не вызвал массовые перезапуски.

Например, собственный индикатор с именем customCheck включают в readiness:

management.endpoint.health.probes.enabled=true
management.endpoint.health.group.readiness.include=readinessState,customCheck

Индикатор должен завершаться быстро и иметь ограниченное ожидание. Проверяйте, что probe проходит через тот же рабочий порт, если отдельный management-порт способен скрыть отказ основного сервера. Для общей БД включение в readiness требует оценки риска убрать из трафика сразу все экземпляры.

Источник: docs.spring.io.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее