当前位置: 首页 > 知识库问答 >
问题:

定制Spring靴执行器健康状态

东方俊明
2023-03-14

当我从Spring Boot应用程序访问/healthendpoint时,它返回的状态为UP:

{
  "status": "UP"
}

但我想像这样定制我的状态:

{
  "status": "success"
}

如何自定义状态?

共有1个答案

狄楷
2023-03-14

创建新的health builder状态并返回

状态

@JsonProperty("status")
public String getCode() {
    return this.code;
}

如果实施健康指标

@Component
public class HealthChecker implements HealthIndicator {

    @Override
    public Health health() {
        // Do checks ..
        // if no issues
        return Health.status("success").build();
    }   
}

如果扩展抽象健康指标

@Component
public class HealthIndicator extends AbstractHealthIndicator {

    @Override
    protected void doHealthCheck(Builder builder) throws Exception {
        builder.status("success").build();
    }
}

严重性顺序

要使此工作正常,您必须通过将UP替换为成功或将其移动到UP之前来更新状态严重性的顺序

应用属性

management.health.status.order=DOWN, OUT_OF_SERVICE, UNKNOWN, success

management.health.status.order=DOWN, OUT_OF_SERVICE, UNKNOWN, success, UP
 类似资料:
  • 我有一个正在运行的Springboot应用程序,它提供URL并按预期返回JSON响应。 我添加了执行器依赖

  • 我们使用spring boot actuator来获取应用程序的健康状态,我的理解是健康检查请求将由用于服务实际服务请求的线程池中的线程处理。 是否有一种方法来限制对健康endpoint的请求数量,以防止DDOS类型的饥饿。

  • 因此,我将Spring引导执行器添加到我的应用程序中,并在应用程序中指定。属性管理。endpoint。健康隐藏物生存时间=120秒,以缓存健康检查结果。因此,当我调用执行器/健康时,结果被缓存,效果很好。 当我调用执行器/健康/就绪或自定义创建的组时,问题开始出现。该请求结果不会被缓存。我查阅了Spring文档,只找到了主要健康终点的信息,没有找到特定人群的信息。 所以我的问题是:我错过了什么吗?

  • 我正在使用SpringBoot执行器返回应用程序的运行状况。 我看到了下面的回复 我想返回一个类似于下面的响应 有办法做到吗?

  • {“Status”:“Down”} 我需要做什么才能显示自定义健康状况指示器?

  • 我使用Spring执行器和Spring靴来检查我的服务的健康。我使用OpenJDK11。并使用: Spring-boot依赖关系: 执行器依赖性: