[FEAT] Support proper Health Checking
kkopanidis opened this issue · comments
Is your feature request related to a problem? Please describe.
Currently health checking is being done by this simple process:
Conduit/packages/config/src/index.ts
Lines 474 to 502 in 7f4bcf9
It works well enough, but it's not common practice and it simply checks if the grpc server is online. We're getting no proper health statuses and we're using an http client to check a grpc server which isn't really that great.
Describe the solution you'd like
The modules should implement (through the grpc-sdk) the Health Checking protocol of grpc as defined here:
https://github.com/grpc/grpc/blob/master/doc/health-checking.md
The config module should then be able to use the Watch rpc stream to get health status updates or at the very list make individual requests (as it's happening now but through grpc) to get better sense of the actual service status.
It'll also be more in line with common practices around grpc