31 lines
713 B
Protocol Buffer
31 lines
713 B
Protocol Buffer
syntax = "proto3";
|
|
|
|
package health;
|
|
|
|
// Custom detailed health check, distinct from grpc.health.v1.Health: a single
|
|
// call returns our own status plus the status of every subservice we depend
|
|
// on (e.g. torad), instead of requiring one Check call per service name.
|
|
service Health {
|
|
rpc Check(CheckRequest) returns (CheckResponse);
|
|
}
|
|
|
|
message CheckRequest {}
|
|
|
|
enum ServingStatus {
|
|
UNKNOWN = 0;
|
|
SERVING = 1;
|
|
NOT_SERVING = 2;
|
|
}
|
|
|
|
message SubserviceStatus {
|
|
string name = 1;
|
|
ServingStatus status = 2;
|
|
// Populated when status is NOT_SERVING, e.g. a connection or timeout error.
|
|
string message = 3;
|
|
}
|
|
|
|
message CheckResponse {
|
|
ServingStatus status = 1;
|
|
repeated SubserviceStatus subservices = 2;
|
|
}
|