当我/health从Spring Boot应用程序(1.2.4.RELEASE)访问端点时,它返回的状态为DOWN:
{
status: "DOWN"
}
Run Code Online (Sandbox Code Playgroud)
是否有任何已知的初始项目或库会覆盖状态?还有其他原因(除了写一个自定义的原因)为什么它会返回DOWN?
Pau*_*l F 28
在Spring属性中,设置endpoints.health.sensitive = false.然后,/health端点将返回各种运行状况指示器的列表,您可以从那里进行调试.
对于生产环境,您应该在/health端点周围启用安全性.
编辑
正如Vincent在下面指出的那样,management.security.enabled = false如果健康端点是安全的,那么你也需要它,这似乎是更新版Spring Boot的默认设置.
我在Spring Boot中看到的一个常见问题是它自动配置Solr,没有额外的配置,/health端点表明Solr是DOWN.解决此问题的一种简单方法是使用此批注禁用Application.java中的Solr自动配置:
@SpringBootApplication(exclude={SolrAutoConfiguration.class})
Vin*_*t F 16
在我的情况下,我需要这两个属性来获取更多细节:
endpoints.health.sensitive: false
management.security.enabled: false
Run Code Online (Sandbox Code Playgroud)
否则,我得到的只是一个DOWN状态.
我遇到了RabbitMQ连接的问题:我的应用程序还没有使用它,但我们已经开始连接一些与之相关的代码.该应用程序工作正常,但我们得到DOWN健康状态,这是非常令人费解的:Spring Boot在日志中出乎意料地保持沉默,因为在启动时没有显示错误(我可能需要更改我的配置以使其更加冗长)
Aru*_*dan 14
如果运行状况URL显示"DOWN"或HTTP 503 - Service Unavailable错误,请尝试在application.properties中添加以下属性
URL - http:// localhost:8080/actuator/health
management.endpoint.health.show-details=always
Run Code Online (Sandbox Code Playgroud)
现在网址应该显示的不仅仅是DOWN.如果无法访问Solr主机,则使用以下排除项忽略Solr检查 -
@SpringBootApplication(exclude = { SolrAutoConfiguration.class })
Run Code Online (Sandbox Code Playgroud)
现在健康应该出现了.运行状况检查基本上在内部验证预定义的运行状况检查(示例 - DataSourceHealthIndicator, DiskSpaceHealthIndicator, CassandraHealthIndicator等).
如果其中一个运行状况指示器已关闭,则运行状况将关闭,您可以在将上述属性添加到application.properties后将错误视为响应.
我在Springboot 2.1.0中遇到了同样的问题,{
status: "DOWN"
}
即使应用程序启动了,/ actuator / health也返回
了。添加
management.health.defaults.enabled=false
到属性文件解决了该问题。
| 归档时间: |
|
| 查看次数: |
27262 次 |
| 最近记录: |