log hiccups, downtime, and unrecoverable downtime

This commit is contained in:
AJ ONeal 2019-06-20 17:16:17 -06:00
parent 1a37cf2aed
commit 2ffb2dce48
2 changed files with 18 additions and 0 deletions

8
build.go Normal file
View File

@ -0,0 +1,8 @@
//go:generate go build -o watchdog cmd/watchdog/watchdog.go
package watchdog
// This is takes the place of a makefile.
// Usage:
// go generate -mod=vendor build.go

View File

@ -52,6 +52,15 @@ func (d *Dog) watch() {
return
}
time.Sleep(time.Duration(2) * time.Second)
err2 := d.check()
if nil != err {
d.Logger <- fmt.Sprintf("Down: '%s': %s", d.Name, err2)
} else {
d.Logger <- fmt.Sprintf("Hiccup: '%s': %s", d.Name, err)
return
}
failure := false
t := 10
for {
@ -61,6 +70,7 @@ func (d *Dog) watch() {
t *= 2
err := d.check()
if nil != err {
d.Logger <- fmt.Sprintf("Unrecoverable: '%s': %s", d.Name, err)
failure = true
} else {
failure = false