StatusApp/server/data.go

34 lines
687 B
Go

package server
import (
"time"
"status/db"
)
func getStatus() map[string]db.PingEntry {
entries := db.GetFromDB("", time.Now().Add(time.Duration(-2)*time.Minute), time.Now())
result := make(map[string]db.PingEntry)
for _, v := range entries {
if v.Time.Before(result[v.ServiceName].Time) {
continue
}
result[v.ServiceName] = v
}
return result
}
func getHistoryDay(serviceName string, dayCount int) []stat {
currentDay := today()
result := make([]stat, 0)
for i := 0; i >= -dayCount+1; i-- {
dayData := getDay(serviceName, currentDay.AddDate(0, 0, i))
if dayData.SampleCount > 0 {
result = append(result, dayData)
} else {
break
}
}
return result
}