Spring启动禁用Custom HealthIndicator

时间:2017-05-05 11:30:46

标签: spring spring-boot spring-boot-actuator

我已经创建了一个自定义的HealthIndicator,我想在生产中禁用它,直到我们完全上线。 我知道有一个属性可以禁用默认的健康指标(management.health.defaults.enabled = false),但不能用于自定义HealthIndicators。

有什么办法可以暂时关闭应用程序属性配置级别的MyCustomHealthIndicator吗?

3 个答案:

答案 0 :(得分:3)

您的健康指标bean,

@ConditionalOnProperty(value='health.indicator.enabled')
@Bean 
class MyHealthIndicator {
}

在application.properties文件中,

health.indicator.enabled=true/false

希望这有帮助!

答案 1 :(得分:0)

您可以使用Spring Boot的机制而不使用自定义属性。首先在您的课程上添加注释:

@ConditionalOnEnabledHealthIndicator("your-health")

您现在可以使用Spring Boot建议的属性来禁用自己的运行状况指示器:

management.health.your-health.enabled=false

它具有相同的效果,但是它允许您将启用和禁用的运行状况指示器分组在一起。

答案 2 :(得分:0)

@ConditionalOnEnabledHealthIndicator("your-health")

您现在可以使用Spring Boot建议的属性来禁用自己的运行状况指示器:

management.health.your-health.enabled=false

这在我们重新启动应用程序时有效。它应该在不重新启动的情况下工作吗?