Spring启动健康端点

Spring启动健康端点,spring,header,endpoint,health-check,Spring,Header,Endpoint,Health Check,我正在寻找一种方法来更改spring boot健康检查的标题(添加一些内容)。我搜索了这个主题,但只找到了有关自定义运行状况函数等的问题(例如)。 那不是我要找的 我想使用标准/默认健康功能(因此我不想更改响应主体(“状态”):“启动”),也不想实现自己的健康功能或自定义默认功能。 我的目标是更改响应的标题,以实现两件事: 在标题中添加一些内容(例如最大年龄) 到达cors(例如,我想将allow origin设置为*、allowed method设置为GET等等),我知道在管理属性中有一种方

我正在寻找一种方法来更改spring boot健康检查的标题(添加一些内容)。我搜索了这个主题,但只找到了有关自定义运行状况函数等的问题(例如)。 那不是我要找的

我想使用标准/默认健康功能(因此我不想更改响应主体(“状态”):“启动”),也不想实现自己的健康功能或自定义默认功能。 我的目标是更改响应的标题,以实现两件事:

  • 在标题中添加一些内容(例如最大年龄)
  • 到达cors(例如,我想将allow origin设置为*、allowed method设置为GET等等),我知道在管理属性中有一种方法可以做到这一点,但这适用于所有端点,我只希望这些tgings适用于健康端点
是否有任何方法可以使用默认运行状况检查,只需修改标题和属性(如allowed origin),还是必须创建新的控制器?


谢谢您的帮助。

只需使用获得适当指标的方法实现您自己的服务,然后您的自定义控制器自然会引用它。我认为您无法修改这些默认端点

以下是此自定义服务的示例:

import java.util.Arrays;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.actuate.metrics.MetricsEndpoint;
import org.springframework.stereotype.Component;

@Component
public class SpringActuator {
    @Autowired
    MetricsEndpoint metrics;
    
    public Double getCPU() {
        return metrics.metric("process.cpu.usage", Arrays.asList()).getMeasurements().get(0).getValue();
    }
    
    public Double getRAM() {
        return metrics.metric("jvm.memory.used", Arrays.asList()).getMeasurements().get(0).getValue();
    }
}