diff options
| author | Horus3 | 2015-02-19 16:55:23 +0100 |
|---|---|---|
| committer | Horus3 | 2015-02-19 16:55:23 +0100 |
| commit | 9fd1b6a54c77f78df1031a620fe3fb3887eda56d (patch) | |
| tree | a22686f2eac23c7a47e9ccd9aa3962aa80a5bf64 /app/fetch.go | |
| parent | 5da13e75c013688f4fda1e57a5b3968332caa760 (diff) | |
| download | statuspage-9fd1b6a54c77f78df1031a620fe3fb3887eda56d.tar.gz | |
Add health check.
Diffstat (limited to 'app/fetch.go')
| -rw-r--r-- | app/fetch.go | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/app/fetch.go b/app/fetch.go index cd8206b..a03504e 100644 --- a/app/fetch.go +++ b/app/fetch.go @@ -2,16 +2,32 @@ package main import ( "fmt" - "github.com/robfig/cron" - "time" + // "time" ) func run() { - c := cron.New() - c.AddFunc("@every 1m", printStatus) + c := c + c.AddFunc("@every 30s", healthCheck) c.Start() + jobs := c.Entries() + + for _, i := range jobs { + fmt.Printf("Job: %v, Schedule: %v; Next %v; Prev %v \n", i.Job, i.Schedule, i.Next, i.Prev) + } } -func printStatus() { - fmt.Println(time.Now()) +func healthCheck() { + h := []Host{} + db := Db + db.Find(&h) + + for _, v := range h { + fmt.Printf("Id: %v, Url: %v \n", v.Id, v.Url) + + if resp, _, err := HttpGet(v.Url); err != nil { + fmt.Printf("Error! %v \n", err) + } else { + fmt.Println("Health check: Okay! ", resp.Status) + } + } } |
