diff --git a/internal/controller/scheduler/scheduler.go b/internal/controller/scheduler/scheduler.go index cb97752..d1f9572 100644 --- a/internal/controller/scheduler/scheduler.go +++ b/internal/controller/scheduler/scheduler.go @@ -27,7 +27,7 @@ var ( }) workersStat = promauto.NewGaugeVec(prometheus.GaugeOpts{ Name: "orchard_workers", - }, []string{"status"}) + }, []string{"worker_name", "status"}) vmsStat = promauto.NewGaugeVec(prometheus.GaugeOpts{ Name: "orchard_vms", }, []string{"status"}) @@ -91,9 +91,11 @@ func (scheduler *Scheduler) Run() { func (scheduler *Scheduler) reportStats(workers []v1.Worker, vms []v1.VM) { for _, worker := range workers { if worker.Offline(scheduler.workerOfflineTimeout) { - workersStat.With(map[string]string{"status": "offline"}).Inc() + workersStat.With(map[string]string{"worker_name": worker.Name, "status": "online"}).Set(0) + workersStat.With(map[string]string{"worker_name": worker.Name, "status": "offline"}).Set(1) } else { - workersStat.With(map[string]string{"status": "online"}).Inc() + workersStat.With(map[string]string{"worker_name": worker.Name, "status": "online"}).Set(1) + workersStat.With(map[string]string{"worker_name": worker.Name, "status": "offline"}).Set(0) } } for _, vm := range vms {