весна-сапог не показывает детали (с информациейDetail)
Я написал класс, реализующий HealthIndicator, переопределяя метод работоспособности. Я возвращаю Health.down().withDetail("SupportServiceStatus", "UP").build();
Это должно вернуть мое health
-endpoint:
{
"status":"UP",
"applicationHealth": {
"status":"UP"
}
}
Вместо этого он просто возвращается (здоровье, без деталей):
{
"status":"UP",
}
Джавакод (несколько упрощен):
@Component
public class ApplicationHealth implements HealthIndicator {
@Override
public Health health() {
return check();
}
private Health check() {
return Health.up().withDetail("SupportServiceStatus", supportServiceStatusCode).build();
}
}
Ответы
Ответ 1
В соответствии с документами по весенней загрузке:
, , по умолчанию только не работоспособное состояние отображается через HTTP-соединение без проверки подлинности. Если вы рады, что полная медицинская информация всегда доступна, вы можете установить для endpoints.health.sensitive
значение false
.
Решение состоит в том, чтобы установить endpoints.health.sensitive
в false
в application.properties
.
application.properties
endpoints.health.sensitive=false
Для> 1.5.1 application.properties
management.security.enabled=false
В Spring Boot 2.0.0.RELEASE (спасибо @rvit34
и @nisarg-panchal
):
management:
endpoint:
health:
show-details: "ALWAYS"
endpoints:
web:
exposure:
include: *
management.endpoints.web.exposure.include=*
предоставляет все конечные точки, если вы этого хотите.
Актуальную документацию можно найти здесь: https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html.
Ответ 2
В Spring Boot 2.0.0.RELEASE:
management:
endpoint:
health:
show-details: "ALWAYS"
Ответ 3
Установка "endpoints.health.sensitive" не имела никакого значения... пришлось установить:
management:
security:
enabled: false
Ответ 4
Благодаря @rvit34 и @Ninja Code Monkey работает.
Для Springboot 2.xxRELEASE,
Используйте ниже для application.properties,
management.endpoint.health.show-details=ALWAYS
Используйте ниже для applaton.yml,
management: endpoint: health: show-details: "ALWAYS"
Ответ 5
Для Spring boot 2.X у меня есть следующие в моем файле application.properties для подробной информации:
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=ALWAYS
Ответ 6
У меня была такая же проблема, в версии Spring Boot 1.5.9 мне пришлось установить
management.security.enabled=false
Ответ 7
нужно добавить
management.endpoint.health.show-details=always
к Application.properties