Merge pull request #8637 from gyuho/health-log

clientv3: add more health balancer debugging logs
This commit is contained in:
Gyu-Ho Lee 2017-10-02 15:53:45 -07:00 committed by GitHub
commit 8b7fc3e28f
2 changed files with 9 additions and 3 deletions

View File

@ -310,7 +310,7 @@ func (b *simpleBalancer) up(addr grpc.Address) (func(error), bool) {
b.downc = make(chan struct{}) b.downc = make(chan struct{})
b.pinAddr = addr.Addr b.pinAddr = addr.Addr
if logger.V(4) { 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 // notify client that a connection is up
b.readyOnce.Do(func() { close(b.readyc) }) b.readyOnce.Do(func() { close(b.readyc) })
@ -321,7 +321,7 @@ func (b *simpleBalancer) up(addr grpc.Address) (func(error), bool) {
b.pinAddr = "" b.pinAddr = ""
b.mu.Unlock() b.mu.Unlock()
if logger.V(4) { if logger.V(4) {
logger.Infof("clientv3: unpin %s (%v)", addr.Addr, err) logger.Infof("clientv3/balancer: unpin %s (%v)", addr.Addr, err)
} }
}, true }, true
} }

View File

@ -139,6 +139,9 @@ func (hb *healthBalancer) updateUnhealthy(timeout time.Duration) {
for k, v := range hb.unhealthy { for k, v := range hb.unhealthy {
if time.Since(v) > timeout { if time.Since(v) > timeout {
delete(hb.unhealthy, k) delete(hb.unhealthy, k)
if logger.V(4) {
logger.Infof("clientv3/balancer: removes %s from unhealthy after %v", k, timeout)
}
} }
} }
hb.mu.Unlock() hb.mu.Unlock()
@ -181,13 +184,16 @@ func (hb *healthBalancer) mayPin(addr grpc.Address) bool {
hb.mu.Lock() hb.mu.Lock()
delete(hb.unhealthy, addr.Addr) delete(hb.unhealthy, addr.Addr)
hb.mu.Unlock() hb.mu.Unlock()
if logger.V(4) {
logger.Infof("clientv3/balancer: %s is healthy", addr.Addr)
}
return true return true
} }
hb.mu.Lock() hb.mu.Lock()
hb.unhealthy[addr.Addr] = time.Now() hb.unhealthy[addr.Addr] = time.Now()
hb.mu.Unlock() hb.mu.Unlock()
if logger.V(4) { if logger.V(4) {
logger.Infof("clientv3: %s becomes unhealthy", addr.Addr) logger.Infof("clientv3/balancer: %s becomes unhealthy", addr.Addr)
} }
return false return false
} }