如何为多个数据源创建/配置弹簧执行器?

时间:2017-02-02 16:01:25

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

我有一个包含多个数据源的项目,并且还实现了弹簧执行器。当我访问/健康时,我得到以下内容:

{"status":"DOWN"}

这对我没有任何意义。什么是下来?另外,为什么缺少数据库健康?我假设它是因为我的数据源前缀是默认的。

如何配置执行器/运行状况以显示两种数据源运行状况?

2 个答案:

答案 0 :(得分:1)

实际上,健康终点检查多个指标。您只有{"status":"DOWN"},因为默认情况下,spring boot应用程序是安全的。

您可以使用

修改application.properties
endpoints.health.sensitive=false

显示所有健康指标。

您可以在此页面中找到所有自动配置的健康指标: http://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html#_auto_configured_healthindicators

此外,您可以通过实施HealthIndicator来编写自己的健康指标。

 @Component
 public class MyHealthIndicator implements HealthIndicator {

    @Override
    public Health health() {
       int errorCode = check(); // perform some specific health check
       if (errorCode != 0) {
         return Health.down().withDetail("Error Code", errorCode).build();
       }
       return Health.up().build();
    }
 }

答案 1 :(得分:0)

由于现在不推荐使用该执行器(也许对某人有所帮助),因此您可以使用以下方法:

management:
  endpoint:
    health:
      show-details: always