From 3ff93e9aa1d075faa0440ca87804073f2bb4e8e7 Mon Sep 17 00:00:00 2001 From: Jake Taylor <jake@elixxir.io> Date: Thu, 17 Jun 2021 13:30:04 -0500 Subject: [PATCH] added manager print on timer --- connect/comms.go | 11 +++++++++++ connect/manager.go | 11 +++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/connect/comms.go b/connect/comms.go index 352426f..06ec019 100644 --- a/connect/comms.go +++ b/connect/comms.go @@ -170,6 +170,17 @@ listen: grpc.KeepaliveEnforcementPolicy(KaEnforcement)) } + // Intermittantly print manager connection information + go func() { + ticker := time.NewTicker(60 * time.Second) + for { + select { + case _ = <-ticker.C: + jww.INFO.Printf(pc.Manager.String()) + } + } + }() + return pc, lis, nil } diff --git a/connect/manager.go b/connect/manager.go index 6e2deda..0de9c72 100644 --- a/connect/manager.go +++ b/connect/manager.go @@ -106,9 +106,16 @@ func (m *Manager) DisconnectAll() { // Implements Stringer for debug printing func (m *Manager) String() string { var result bytes.Buffer + i := uint32(0) + result.WriteString(fmt.Sprintf("Host Manager Connections\n")) for k, host := range m.connections { - result.WriteString(fmt.Sprintf("[%s]: %+v", - (&k).String(), host)) + isConnected, _ := host.Connected() + if isConnected { + i++ + } + result.WriteString(fmt.Sprintf("[%s] IsConnected: %t\n", + (&k).String(), isConnected)) } + result.WriteString(fmt.Sprintf("%d/%d Hosts connected", i, len(m.connections))) return result.String() } -- GitLab