From 0ecb4538c1d1e548c75acb56c1fa8fb66ee3e27f Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Wed, 5 Feb 2020 09:52:43 -0600 Subject: [PATCH] agent: differentiate wan vs lan loggers in memberlist and serf (#7205) This should be a helpful change until memberlist and serf can be properly switched to native hclog. --- agent/consul/client_serf.go | 2 ++ agent/consul/server_serf.go | 9 +++++++++ logging/names.go | 2 ++ 3 files changed, 13 insertions(+) diff --git a/agent/consul/client_serf.go b/agent/consul/client_serf.go index 52f18ccdfd..92a3648ed5 100644 --- a/agent/consul/client_serf.go +++ b/agent/consul/client_serf.go @@ -38,9 +38,11 @@ func (c *Client) setupSerf(conf *serf.Config, ch chan serf.Event, path string) ( // can be streamed via the monitor endpoint serfLogger := c.logger. NamedIntercept(logging.Serf). + NamedIntercept(logging.LAN). StandardLoggerIntercept(&hclog.StandardLoggerOptions{InferLevels: true}) memberlistLogger := c.logger. NamedIntercept(logging.Memberlist). + NamedIntercept(logging.LAN). StandardLoggerIntercept(&hclog.StandardLoggerOptions{InferLevels: true}) conf.MemberlistConfig.Logger = memberlistLogger diff --git a/agent/consul/server_serf.go b/agent/consul/server_serf.go index a581a6fc4d..193b7c7d7a 100644 --- a/agent/consul/server_serf.go +++ b/agent/consul/server_serf.go @@ -80,14 +80,23 @@ func (s *Server) setupSerf(conf *serf.Config, ch chan serf.Event, path string, w conf.Tags["acls"] = string(structs.ACLModeDisabled) } + var subLoggerName string + if wan { + subLoggerName = logging.WAN + } else { + subLoggerName = logging.LAN + } + // Wrap hclog in a standard logger wrapper for serf and memberlist // We use the Intercept variant here to ensure that serf and memberlist logs // can be streamed via the monitor endpoint serfLogger := s.logger. NamedIntercept(logging.Serf). + NamedIntercept(subLoggerName). StandardLoggerIntercept(&hclog.StandardLoggerOptions{InferLevels: true}) memberlistLogger := s.logger. NamedIntercept(logging.Memberlist). + NamedIntercept(subLoggerName). StandardLoggerIntercept(&hclog.StandardLoggerOptions{InferLevels: true}) conf.MemberlistConfig.Logger = memberlistLogger diff --git a/logging/names.go b/logging/names.go index 5260d77570..69551f42fe 100644 --- a/logging/names.go +++ b/logging/names.go @@ -23,6 +23,7 @@ const ( Intentions string = "intentions" Internal string = "internal" KV string = "kvs" + LAN string = "lan" Leader string = "leader" Legacy string = "legacy" License string = "license" @@ -44,5 +45,6 @@ const ( Snapshot string = "snapshot" TLSUtil string = "tlsutil" Transaction string = "txn" + WAN string = "wan" Watch string = "watch" )