在 Spring-Boot 2.4 中,Actuator 健康端点和就绪探测存在这个问题。当我的自定义关键组件之一关闭时,/health/readiness
端点说DOWN
和/health
端点也是,但细节readinessState
仍然/health
说UP
。
为什么会这样?也不应该readinessState
说DOWN
?
我在网上找到的许多教程似乎都没有解决这个问题。
我的假设:这readinessState
与准备情况无关,而是暴露了另一条信息。我希望我错了,因为这毫无意义,而且我对代码的理解似乎另有说明。
更多关于我的配置:
相关摘录自application.yml
management:
endpoints:
web:
base-path: /
endpoint:
health:
show-details: ALWAYS
probes:
enabled: true
group:
readiness:
include: db, myCustom, diskSpace
当我做myCustom
go时DOWN
,会出现以下结果:
GET /health
{
"status": "DOWN",
"components": {
..., // other components
"myCustom": {
"status": "DOWN"
},
"readinessState": {
"status": "UP" // here UP
}
},
"groups": [
"liveness",
"readiness"
]
}
GET /health/readiness
{
"status": "DOWN", // but here DOWN
"components": {
..., // other components
"myCustom": {
"status": "DOWN"
}
}
}