blob: d152d9a08adc87e06d985ffa08f069bf3b841a36 [file] [log] [blame]
Zack Williams52209662019-02-07 10:15:31 -07001syntax = "proto3";
2
khenaidoo4c6543e2021-10-19 17:25:58 -04003option go_package = "github.com/opencord/voltha-protos/v5/go/health";
4option java_package = "org.opencord.voltha.health";
Zack Williams52209662019-02-07 10:15:31 -07005
khenaidoo4c6543e2021-10-19 17:25:58 -04006package health;
Zack Williams52209662019-02-07 10:15:31 -07007
8import "google/api/annotations.proto";
9import "google/protobuf/empty.proto";
Zack Williams52209662019-02-07 10:15:31 -070010
11// Encode health status of a Voltha instance
12message HealthStatus {
13
14 // Health states
15 enum HealthState {
16 HEALTHY = 0; // The instance is healthy
17 OVERLOADED = 1; // The instance is overloaded, decrease query rate
18 DYING = 2; // The instance is in a critical condition, do not use it
19 }
20
21 // Current state of health of this Voltha instance
khenaidoo4c6543e2021-10-19 17:25:58 -040022 HealthState state = 1 ;
Zack Williams52209662019-02-07 10:15:31 -070023}
24
25// Health related services
26service HealthService {
27
28 // Return current health status of a Voltha instance
29 rpc GetHealthStatus(google.protobuf.Empty) returns (HealthStatus) {
30 option (google.api.http) = {
31 get: "/health"
32 };
33 }
34
35}
36