status/routes/index.go
2025-02-16 11:52:55 +01:00

29 lines
650 B
Go

package routes
import (
"fmt"
"net/http"
"git.1e99.eu/1e99/status/services"
)
func Index(serviceList []*services.Service) http.HandlerFunc {
return func(res http.ResponseWriter, req *http.Request) {
fmt.Fprintf(res, "Services:\n")
for _, service := range serviceList {
status, lastCheck := service.Status()
statusName := ""
switch status {
case services.StatusDown:
statusName = "Down"
case services.StatusUp:
statusName = "Up"
case services.StatusUnknown:
statusName = "Unknwon"
}
fmt.Fprintf(res, " %s: %s (Last checked: %s)\n", service.Name, statusName, lastCheck.Format("15:04:05 MST"))
}
}
}