From 58ff2a2412837b2e438e745ccf3ffc022d111458 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 12 Oct 2024 13:01:31 -0500 Subject: state changes if droplet reboots Signed-off-by: Jeff Carr --- poll.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'poll.go') diff --git a/poll.go b/poll.go index e0a8a28..f9c75ab 100644 --- a/poll.go +++ b/poll.go @@ -63,3 +63,31 @@ func findDroplet(name string) *DropletT { } return nil } + +func clusterHealthy() bool { + var good = true + for _, d := range me.droplets { + if d.State != "ON" { + continue + } + dur := time.Since(d.lastpoll) // Calculate the elapsed time + if d.CurrentState != "ON" { + log.Info("BAD STATE ", d.Hostname, "State =", d.State, "CurrentState =", d.CurrentState, shell.FormatDuration(dur)) + good = false + } else { + dur := time.Since(d.lastpoll) // Calculate the elapsed time + if dur > time.Minute { + log.Info("GOOD STATE MISSING", d.Hostname, d.hname, shell.FormatDuration(dur)) + good = false + d.CurrentState = "MISSING" + } + log.Info("GOOD STATE ON", d.Hostname, d.hname, shell.FormatDuration(dur)) + } + } + if good { + log.Info("GOOD=true") + } else { + log.Info("GOOD=false") + } + return good +} -- cgit v1.2.3