summaryrefslogtreecommitdiff
path: root/app/fetch.go
diff options
context:
space:
mode:
authorHorus32015-02-19 16:55:23 +0100
committerHorus32015-02-19 16:55:23 +0100
commit9fd1b6a54c77f78df1031a620fe3fb3887eda56d (patch)
treea22686f2eac23c7a47e9ccd9aa3962aa80a5bf64 /app/fetch.go
parent5da13e75c013688f4fda1e57a5b3968332caa760 (diff)
downloadstatuspage-9fd1b6a54c77f78df1031a620fe3fb3887eda56d.tar.gz
Add health check.
Diffstat (limited to 'app/fetch.go')
-rw-r--r--app/fetch.go28
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)
+ }
+ }
}