我正在为项目使用Spring boot Actuator API,并具有运行状况检查端点,并通过以下方式启用了它:
management.endpoints.web.base-path=/ management.endpoints.web.path-mapping.health=healthcheck
在这里提到
现在,当上述状态/healthcheck失败时,我想在我的应用程序日志文件中启用日志,并从此端点打印整个响应。
/healthcheck
实现此目的的正确方法是什么?
最好的方法是使用扩展执行器端点@EndpointWebExtension。您可以执行以下操作;
@EndpointWebExtension
@Component @EndpointWebExtension(endpoint = HealthEndpoint.class) public class HealthEndpointWebExtension { private HealthEndpoint healthEndpoint; private HealthStatusHttpMapper statusHttpMapper; // Constructor @ReadOperation public WebEndpointResponse<Health> health() { Health health = this.healthEndpoint.health(); Integer status = this.statusHttpMapper.mapStatus(health.getStatus()); // log here depending on health status. return new WebEndpointResponse<>(health, status); } }
更多关于执行器终点延伸这里,在 4.8。 扩展现有端点