]
Jeff Mesnil commented on WFWIP-306:
-----------------------------------
To be more clear, there is no change in overall status which is the most important thing
to consider
In both cases, the /health, /live and /ready endpoints all returns UP as expected.
The only change is the inclusion of an additional readiness procedure that determines the
overall /health and /ready statuses.
If you want to use the previous payload, you have to set the
mp.health.disable-default-procedures config property.
Health check response contains default readiness data
-----------------------------------------------------
Key: WFWIP-306
URL:
https://issues.redhat.com/browse/WFWIP-306
Project: WildFly WIP
Issue Type: Bug
Components: MP Health
Reporter: Fabio Burzigotti
Assignee: Jeff Mesnil
Priority: Critical
Starting from Wildfly 19 Beta 2 and with current feature branch for MP Health upgrade to
2.2 [1], some tests started to fail, reporting unexpected content in JSON response.
When no _readiness_ health check procedures are defined for a given deployment - the
returned JSON payload contains a "default" health check readiness object,
conventionally named as "ready-deployment." + <archive-name>
The same _does not_ happen when there's just one registered readiness procedure -
i.e. when no annotated _liveness_ procedures exist.
This change is not documented in the Analysis document:
https://github.com/wildfly/wildfly-proposals/pull/284
The following example uses an Arquillian deployment with a single HealthCheck
implementation with _liveness_ health check procedure.
1. feature branch [1]
{code}
//health
{
"status": "UP",
"checks": [
{
"name": "live",
"status": "UP",
"data": {
"key": "value"
}
},
{
"name": "ready-deployment.HealthTest.war",
"status": "UP"
}
]
}
//live
{
"status": "UP",
"checks": [
{
"name": "live",
"status": "UP",
"data": {
"key": "value"
}
}
]
}
//ready
{
"status": "UP",
"checks": [
{
"name": "ready-deployment.HealthTest.war",
"status": "UP"
}
]
}
{code}
2. here are the results for the same calls against Wildfly 19 Beta 1:
{code}
//health
{
"status": "UP",
"checks": [
{
"name": "live",
"status": "UP",
"data": {
"key": "value"
}
}
]
}
//live
{
"status": "UP",
"checks": [
{
"name": "live",
"status": "UP",
"data": {
"key": "value"
}
}
]
}
//ready
{
"status": "UP",
"checks": []
}
{code}
[1]
https://github.com/jmesnil/wildfly