Spring Boot 2.0.2 Actuator健康端点未返回磁盘空间等内存详情求助
问题原因及解决方案
在Spring Boot 2.x版本中,Actuator的健康端点(/actuator/health)默认只会返回简单的状态信息(比如{"status":"UP"}),这是因为**management.endpoint.health.show-details属性默认值为never**,它控制着是否展示健康检查的详细信息(比如磁盘空间、自定义检查的细节等)。
解决步骤
你只需要在application.properties中添加以下配置,就能让健康端点返回完整的详情:
# 始终展示健康检查详情,生产环境可改用when-authorized(仅授权用户可见) management.endpoint.health.show-details=always
如果需要确保健康端点被正确暴露,还可以补充以下显式配置(默认已包含,但配置后更清晰):
# 暴露health端点到Web层 management.endpoints.web.exposure.include=health
验证效果
修改配置后重启应用,再次访问http://localhost:8082/actuator/health,你就能看到包含磁盘空间在内的完整健康信息,和你预期的结果一致:
{ "status": "UP", "diskSpace": { "status": "UP", "total": 240721588224, "free": 42078715904, "threshold": 10485760 } }
另外,你的自定义HealthCheck类当前返回的errorCode是0,所以只会显示整体的UP状态;如果后续你的检查逻辑返回非0值,健康详情里会自动添加你定义的Error Code细节哦。
内容的提问来源于stack exchange,提问作者Prabhakaran
相关产品推荐
相关产品推荐

