From f1fefe6de76fab8c27ac09c43163705250888c80 Mon Sep 17 00:00:00 2001
From: Pierre Souchay
Date: Tue, 21 Aug 2018 09:22:27 +0200
Subject: [PATCH] Log method failing when doing server/server RPC calls to help
diagnose connectivity issues
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
}