From 3bf2e640c781b984f5ee4c55c0420aca6d5cc782 Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Mon, 13 Jan 2020 19:55:29 +0100 Subject: [PATCH] rpc: log method when a server/server RPC call fails (#4548) Sometimes, we have lots of errors in cross calls between DCs (several hundreds / sec) Enrich the log in order to help diagnose the root cause of issue. --- agent/consul/rpc.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index 573a4b6d093b..295d1e2adfc5 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -319,7 +319,7 @@ func (s *Server) forwardDC(method, dc string, args interface{}, reply interface{ s.logger.Printf("[WARN] consul.rpc: RPC request to DC %q is currently failing as no server can be reached", dc) return structs.ErrDCNotAvailable } - s.logger.Printf("[WARN] consul.rpc: RPC request for unknown DC %q", dc) + s.logger.Printf("[WARN] consul.rpc: RPC request for DC %q, no path found (method: %s)", dc, method) return structs.ErrNoDCPath } @@ -327,7 +327,7 @@ func (s *Server) forwardDC(method, dc string, args interface{}, reply interface{ []metrics.Label{{Name: "datacenter", Value: dc}}) if err := s.connPool.RPC(dc, server.Addr, server.Version, method, server.UseTLS, args, reply); err != nil { manager.NotifyFailedServer(server) - s.logger.Printf("[ERR] consul: RPC failed to server %s in DC %q: %v", server.Addr, dc, err) + s.logger.Printf("[ERR] consul: RPC failed to server %s in DC %q: %v (method: %s)", server.Addr, dc, err, method) return err }