diff --git a/pkg/services/cron_service.go b/pkg/services/cron_service.go index 16ec560..627bd46 100644 --- a/pkg/services/cron_service.go +++ b/pkg/services/cron_service.go @@ -251,14 +251,23 @@ func VerificarSaludServidores() { // 2. Recursos (CPU / RAM / Disco) al lĂ­mite if srv.MetricasJson != "" { var m struct { - CPU struct{ Porcentaje float64 `json:"porcentaje"` } `json:"cpu"` - RAM struct{ Porcentaje float64 `json:"porcentaje"` } `json:"ram"` - Disco struct{ Porcentaje float64 `json:"porcentaje"` } `json:"disco"` + CPU struct{ Porcentaje float64 `json:"porcentaje"` } `json:"cpu"` + RAM struct{ Porcentaje float64 `json:"porcentaje"` } `json:"ram"` + Discos []struct { + Porcentaje float64 `json:"porcentaje"` + Ruta string `json:"ruta"` + } `json:"discos"` } if jsonErr := json.Unmarshal([]byte(srv.MetricasJson), &m); jsonErr == nil { checkRecurso(srv.Nombre, "CPU", m.CPU.Porcentaje, cfg.UmbralCPU) checkRecurso(srv.Nombre, "RAM", m.RAM.Porcentaje, cfg.UmbralRAM) - checkRecurso(srv.Nombre, "Disco", m.Disco.Porcentaje, cfg.UmbralDisco) + for _, d := range m.Discos { + label := "Disco" + if d.Ruta != "" && d.Ruta != "/" { + label = "Disco " + d.Ruta + } + checkRecurso(srv.Nombre, label, d.Porcentaje, cfg.UmbralDisco) + } } }