atlasbot: add namespace request metrics

This commit is contained in:
Brad Stein 2026-01-29 03:04:42 -03:00
parent 36a16f00b7
commit d1b1687a92
2 changed files with 14 additions and 0 deletions

View File

@ -1122,6 +1122,16 @@ def _summarize_metrics(errors: list[str]) -> dict[str, Any]:
"topk(5, sum by (namespace) (container_memory_working_set_bytes{namespace!=\"\"}))" "topk(5, sum by (namespace) (container_memory_working_set_bytes{namespace!=\"\"}))"
) )
) )
metrics["namespace_cpu_requests_top"] = _filter_namespace_vector(
_vm_vector(
"topk(5, sum by (namespace) (kube_pod_container_resource_requests_cpu_cores))"
)
)
metrics["namespace_mem_requests_top"] = _filter_namespace_vector(
_vm_vector(
"topk(5, sum by (namespace) (kube_pod_container_resource_requests_memory_bytes))"
)
)
except Exception as exc: except Exception as exc:
errors.append(f"namespace_usage: {exc}") errors.append(f"namespace_usage: {exc}")
metrics["pvc_usage_top"] = _pvc_usage(errors) metrics["pvc_usage_top"] = _pvc_usage(errors)
@ -1137,6 +1147,8 @@ def _summarize_metrics(errors: list[str]) -> dict[str, Any]:
"job_failures_24h": "count", "job_failures_24h": "count",
"namespace_cpu": "cores", "namespace_cpu": "cores",
"namespace_mem": "bytes", "namespace_mem": "bytes",
"namespace_cpu_requests": "cores",
"namespace_mem_requests": "bytes",
"pvc_used_percent": "percent", "pvc_used_percent": "percent",
"capacity_cpu": "cores", "capacity_cpu": "cores",
"allocatable_cpu": "cores", "allocatable_cpu": "cores",

View File

@ -129,6 +129,8 @@ def test_collect_cluster_state(monkeypatch) -> None:
assert "node_usage_stats" in snapshot["metrics"] assert "node_usage_stats" in snapshot["metrics"]
assert snapshot["metrics"]["namespace_cpu_top"] == [] assert snapshot["metrics"]["namespace_cpu_top"] == []
assert snapshot["metrics"]["namespace_mem_top"] == [] assert snapshot["metrics"]["namespace_mem_top"] == []
assert snapshot["metrics"]["namespace_cpu_requests_top"] == []
assert snapshot["metrics"]["namespace_mem_requests_top"] == []
assert snapshot["metrics"]["pod_cpu_top"] == [] assert snapshot["metrics"]["pod_cpu_top"] == []
assert snapshot["metrics"]["pod_mem_top"] == [] assert snapshot["metrics"]["pod_mem_top"] == []
assert snapshot["metrics"]["job_failures_24h"] == [] assert snapshot["metrics"]["job_failures_24h"] == []