如何基于其状态覆盖执行器的默认/健康状况响应状态代码:DOWN,UP,UNKNOWN等等?例如,如果运行状况为“UP”,则响应代码应为200.如果DOWN:400,未知300.是否有任何解决方法可以实现此目的?
注意:我不想要自己的健康端点。相反,现有的需要重写。
答案 0 :(得分:3)
从春季启动文档中,这可以通过一些属性更改轻松实现,
[
{
"id": 1,
"name": "Test",
"relation2":
[
{
"id": 3,
"col2_id": 1,
"col3_id": 1,
"col4": "1",
"pivot": {
"col1_id": 1,
"col2_id": 2,
"is_column1": "1"
}
}
]
}
]
endpoints.health.mapping.DOWN=400
endpoints.health.mapping.UP=200
答案 1 :(得分:1)
似乎the documentation已更新。运行状况检查状态映射的当前属性是:
management.health.status.http-mapping.DOWN=400
management.health.status.http-mapping.UP=200
答案 2 :(得分:0)
状态代码通过application properties进行配置。这些是默认设置:
management.health.status.http-mapping:
UP: 200
DOWN: 503
OUT_OF_SERVICE: 503
UNKNOWN: 200
对于Spring Boot 1.x,该属性为endpoints.health.mapping
。
使用您建议的代码是一个坏主意,因为它们已经意味着其他事情。如果您希望上游系统将其与UNKNOWN: 500
区别对待,则可以进行合理的更改是设置UP
。
答案 3 :(得分:0)
默认情况下,OUT_OF_SERVICE
和 DOWN
映射到 503。任何未映射的健康状态,包括 UP
,映射到 200。
如其他答案中所述,这些值可以被覆盖。