From 656a8305cd380f0fa54f5508850108249a03eaf4 Mon Sep 17 00:00:00 2001 From: disksing Date: Fri, 12 Apr 2019 11:14:37 +0800 Subject: [PATCH] server: add tso handle time metrics (#1502) Signed-off-by: disksing --- server/grpc_service.go | 2 ++ server/metrics.go | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/server/grpc_service.go b/server/grpc_service.go index 328b772617e..cb39ef91159 100644 --- a/server/grpc_service.go +++ b/server/grpc_service.go @@ -73,6 +73,7 @@ func (s *Server) Tso(stream pdpb.PD_TsoServer) error { if err != nil { return errors.WithStack(err) } + start := time.Now() if err = s.validateRequest(request.GetHeader()); err != nil { return err } @@ -89,6 +90,7 @@ func (s *Server) Tso(stream pdpb.PD_TsoServer) error { if err := stream.Send(response); err != nil { return errors.WithStack(err) } + tsoHandleDuration.Observe(time.Since(start).Seconds()) } } diff --git a/server/metrics.go b/server/metrics.go index dc0916b31d6..2354371d9ea 100644 --- a/server/metrics.go +++ b/server/metrics.go @@ -162,6 +162,15 @@ var ( Name: "status", Help: "Status of the scheduling configurations.", }, []string{"type", "namespace"}) + + tsoHandleDuration = prometheus.NewHistogram( + prometheus.HistogramOpts{ + Namespace: "pd", + Subsystem: "server", + Name: "handle_tso_duration_seconds", + Help: "Bucketed histogram of processing time (s) of handled tso requests.", + Buckets: prometheus.ExponentialBuckets(0.0005, 2, 13), + }) ) func init() { @@ -182,4 +191,5 @@ func init() { prometheus.MustRegister(patrolCheckRegionsHistogram) prometheus.MustRegister(placementStatusGauge) prometheus.MustRegister(configStatusGauge) + prometheus.MustRegister(tsoHandleDuration) }