From 3f596db104c7683f10ff51af6ebce4caa09d460e Mon Sep 17 00:00:00 2001 From: Gyu-Ho Lee Date: Mon, 2 Oct 2017 14:40:56 -0700 Subject: [PATCH] clientv3: add more health balancer debugging logs Signed-off-by: Gyu-Ho Lee --- clientv3/balancer.go | 4 ++-- clientv3/health_balancer.go | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/clientv3/balancer.go b/clientv3/balancer.go index 56b1150e6..b0c420422 100644 --- a/clientv3/balancer.go +++ b/clientv3/balancer.go @@ -310,7 +310,7 @@ func (b *simpleBalancer) up(addr grpc.Address) (func(error), bool) { b.downc = make(chan struct{}) b.pinAddr = addr.Addr if logger.V(4) { - logger.Infof("clientv3: balancer pins endpoint to %s", addr.Addr) + logger.Infof("clientv3/balancer: pin %s", addr.Addr) } // notify client that a connection is up b.readyOnce.Do(func() { close(b.readyc) }) @@ -321,7 +321,7 @@ func (b *simpleBalancer) up(addr grpc.Address) (func(error), bool) { b.pinAddr = "" b.mu.Unlock() if logger.V(4) { - logger.Infof("clientv3: unpin %s (%v)", addr.Addr, err) + logger.Infof("clientv3/balancer: unpin %s (%v)", addr.Addr, err) } }, true } diff --git a/clientv3/health_balancer.go b/clientv3/health_balancer.go index 0cbbbd1a7..ff9cc010c 100644 --- a/clientv3/health_balancer.go +++ b/clientv3/health_balancer.go @@ -139,6 +139,9 @@ func (hb *healthBalancer) updateUnhealthy(timeout time.Duration) { for k, v := range hb.unhealthy { if time.Since(v) > timeout { delete(hb.unhealthy, k) + if logger.V(4) { + logger.Infof("clientv3/balancer: removes %s from unhealthy after %v", k, timeout) + } } } hb.mu.Unlock() @@ -181,13 +184,16 @@ func (hb *healthBalancer) mayPin(addr grpc.Address) bool { hb.mu.Lock() delete(hb.unhealthy, addr.Addr) hb.mu.Unlock() + if logger.V(4) { + logger.Infof("clientv3/balancer: %s is healthy", addr.Addr) + } return true } hb.mu.Lock() hb.unhealthy[addr.Addr] = time.Now() hb.mu.Unlock() if logger.V(4) { - logger.Infof("clientv3: %s becomes unhealthy", addr.Addr) + logger.Infof("clientv3/balancer: %s becomes unhealthy", addr.Addr) } return false }