diff --git a/etcdmain/grpc_proxy.go b/etcdmain/grpc_proxy.go index b0a59c0f2da..41f71c70e38 100644 --- a/etcdmain/grpc_proxy.go +++ b/etcdmain/grpc_proxy.go @@ -318,6 +318,10 @@ func newGRPCProxyServer(client *clientv3.Client) *grpc.Server { pb.RegisterAuthServer(server, authp) v3electionpb.RegisterElectionServer(server, electionp) v3lockpb.RegisterLockServer(server, lockp) + + // set zero values for metrics registered for this grpc server + grpc_prometheus.Register(server) + return server } diff --git a/etcdserver/api/v3rpc/grpc.go b/etcdserver/api/v3rpc/grpc.go index 452a9a3967c..3fd8e864a0f 100644 --- a/etcdserver/api/v3rpc/grpc.go +++ b/etcdserver/api/v3rpc/grpc.go @@ -22,6 +22,7 @@ import ( "github.com/coreos/etcd/etcdserver" pb "github.com/coreos/etcd/etcdserver/etcdserverpb" + "github.com/grpc-ecosystem/go-grpc-prometheus" "google.golang.org/grpc" "google.golang.org/grpc/credentials" "google.golang.org/grpc/grpclog" @@ -66,5 +67,8 @@ func Server(s *etcdserver.EtcdServer, tls *tls.Config, gopts ...grpc.ServerOptio hsrv.SetServingStatus("", healthpb.HealthCheckResponse_SERVING) healthpb.RegisterHealthServer(grpcServer, hsrv) + // set zero values for metrics registered for this grpc server + grpc_prometheus.Register(grpcServer) + return grpcServer }