do checkin after mq is connected, publish metrics only when node is connected

This commit is contained in:
Abhishek Kondur
2022-10-05 21:21:34 +05:30
parent 77c901e4d9
commit fe5fd7fce9
2 changed files with 11 additions and 2 deletions

View File

@@ -68,12 +68,14 @@ func Daemon() error {
cancel()
logger.Log(0, "shutting down netclient daemon")
wg.Wait()
mqclient.Disconnect(250)
logger.Log(0, "shutdown complete")
return nil
case <-reset:
logger.Log(0, "received reset")
cancel()
wg.Wait()
mqclient.Disconnect(250)
logger.Log(0, "restarting daemon")
cancel = startGoRoutines(&wg)
}
@@ -109,7 +111,14 @@ func startGoRoutines(wg *sync.WaitGroup) context.CancelFunc {
}
}
wg.Add(1)
go Checkin(ctx, wg)
for {
if mqclient != nil && mqclient.IsConnected() {
go Checkin(ctx, wg)
break
}
time.Sleep(time.Second)
}
return cancel
}