Better status response

This commit is contained in:
Sebastiaan de Schaetzen 2025-03-30 12:16:21 +02:00
parent 93fe9ebed3
commit 6a384732e7

14
main.go
View File

@ -44,6 +44,12 @@ type ResourceUsage struct {
ActiveUsers int `json:"active_users"`
}
type StatusResponse struct {
Usage ResourceUsage `json:"usage"`
Blockers []string `json:"blockers"`
Timestamp time.Time `json:"timestamp"`
}
var (
statusMutex sync.RWMutex
blockers []string
@ -160,8 +166,14 @@ func handleStatus(w http.ResponseWriter, _ *http.Request) {
statusMutex.RLock()
defer statusMutex.RUnlock()
response := StatusResponse{
Usage: currentStatus,
Blockers: blockers,
Timestamp: time.Now(),
}
w.Header().Set("Content-Type", "application/json")
err := json.NewEncoder(w).Encode(currentStatus)
err := json.NewEncoder(w).Encode(response)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}