Spring Boot Actuator是否有Java API?

Spring Boot Actuator是否有Java API?,第1张

Spring Boot Actuator是否有Java API?

要获得通过REST端点公开的执行器端点的属性完全相同,可以在一个类中注入相应端点类的实例。在您的情况下,“正确的”端点类将是InfoEndpoint。对于度量标准,运行状况等,有类似的端点类。

在Spring Boot 1.5.x和Spring Boot
2.x之间,界面有所变化。因此,确切的完全合格的类名称或读取方法名称可能会根据所使用的Spring Boot版本而有所不同。在Boot
1.5.x中,您可以在

org.springframework.boot.actuate.endpoint
程序包中找到大多数端点。

大致来说,这就是您可以构建一个简单的组件来读取version属性的方法(假设info端点内的属性名称只是

build.version
):

@Componentpublic class VersionAccessor {    private final InfoEndpoint endpoint;    @Autowired    public VersionAccessor(InfoEndpoint endpoint) {        this.endpoint = endpoint;    }    public String getVersion() {        // Spring Boot 2.x        return String.valueOf(getValueFromMap(endpoint.info()));        // Spring Boot 1.x        return String.valueOf(getValueFromMap(endpoint.invoke()));    }    // the info returned from the endpoint may contain nested maps    // the exact steps for retrieving the right value depends on     // the exact property name(s). Here, we assume that we are     // interested in the build.version property    private Object getValueFromMap(Map<String, Object> info) {        return ((Map<String, Object>) info.get("build")).get("version");    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5122916.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存