我为不同的数据库编写了healthindicators,这些数据库扩展了spring的abstracthealthindicator。
但是最终消费者期望以不同的格式响应,其中期望的公共密钥和数据是不同的。
实际值:
{
"status": "DOWN",
"details": {
"B": {
"status": "UP",
"details": {
"reachable": true
}
},
"A": {
"status": "DOWN",
"details": {
"reachable": false
}
}
}
}
预期:
{
"result": true,
"data": {
"modules": [
{
"name": "A",
"status": "OK"
},
{
"name": "B",
"status": "DOWN"
},
]
}
}
有没有可能写一个转换器,它可以做到这一点?
1条答案
按热度按时间dz6r00yl1#
我认为你不能改变文件的格式
/health
在不改变内部执行器代码的情况下终止。但是,您可以创建自己的端点来维护对健康端点的引用(毕竟它是一个bean,因此可以被注入),以便
@GetOperation
将调用原始的“health”端点,获取结果并将其转换为自定义格式。原始运行状况终结点在此类中实现