feat(observability): add maintenance policy metrics

Prometheus: runs, duration, rows_deleted, config_changes; инкремент при CRUD и Execute.
Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Denozordec
2026-06-12 13:28:20 +07:00
co-authored by Cursor
parent cbf345b25f
commit aaef47c7a7
3 changed files with 125 additions and 4 deletions
+4
View File
@@ -6,6 +6,7 @@ import (
"strings"
"evobgp/internal/jobs"
"evobgp/internal/observability"
"evobgp/internal/store"
)
@@ -107,6 +108,7 @@ func (s *Server) handleCreateMaintenancePolicy(w http.ResponseWriter, r *http.Re
return
}
_ = s.store.AppendMaintenancePolicyConfigAudit(actorPrefix(a), p.ID, "create", nil, maintenancePolicyJSON(p))
observability.IncMaintenanceConfigChange("create")
s.reloadMaintenanceConfig(r)
writeJSON(w, http.StatusCreated, maintenancePolicyJSON(p))
}
@@ -133,6 +135,7 @@ func (s *Server) handlePatchMaintenancePolicy(w http.ResponseWriter, r *http.Req
return
}
_ = s.store.AppendMaintenancePolicyConfigAudit(actorPrefix(a), id, "update", maintenancePolicyJSON(before), maintenancePolicyJSON(updated))
observability.IncMaintenanceConfigChange("update")
s.reloadMaintenanceConfig(r)
writeJSON(w, http.StatusOK, maintenancePolicyJSON(updated))
}
@@ -153,6 +156,7 @@ func (s *Server) handleDeleteMaintenancePolicy(w http.ResponseWriter, r *http.Re
return
}
_ = s.store.AppendMaintenancePolicyConfigAudit(actorPrefix(a), id, "delete", maintenancePolicyJSON(before), nil)
observability.IncMaintenanceConfigChange("delete")
s.reloadMaintenanceConfig(r)
w.WriteHeader(http.StatusNoContent)
}