Привод здоровья Spring Boot - КОГДА это UP?

Я не могу найти документацию о том, когда Springs Health Actuator вернет статус UP. Можете ли вы положиться на все @Components инициализируется? Будет @Controller быть готовым обслуживать запросы?

1 ответ

Чтобы проверить, загружен ли контекст приложения, вы можете выполнить эту пользовательскую реализацию.

@EventListener - Метод, аннотированный с помощью EventListener, запускается при инициализации контекста.

В приведенном ниже коде я увеличил счетчик при успешной инициализации. Когда вы нажмете на конечную точку исправности привода, вы получите статус UP.

Пример реализации для проверки работоспособности инициализации контекста:

@Component
public class ApplicationContextHealthIndicator implements HealthIndicator {

    private final Logger LOG = Logger.getLogger(getClass().getName());

    public static int counter;

    @EventListener
    public void onApplicationEvent(ContextRefreshedEvent event) {
        LOG.info("Increment counter :" + counter);
        counter++;
    }

    @Override
    public Health health() {
        if (counter == 0) {
            return Health.down().withDetail("Error Code", 500).build();
        }
        return Health.up().build();
    }
}

Конечная точка Spring загрузочная версия 5:-

HTTP: // локальный: 8080 / привод / здоровье

Spring Actator может проверять базу данных, конечные точки веб-службы, сервер электронной почты и т. Д. Он может предоставлять статус для всех этих ресурсов, которые являются частью приложения.

Доступны некоторые показатели здоровья по умолчанию

Другие вопросы по тегам