atlasbot: surface namespace net/io usage
This commit is contained in:
parent
79ab798aae
commit
52574599fb
@ -705,6 +705,32 @@ def _append_namespace_requests(lines: list[str], summary: dict[str, Any]) -> Non
|
|||||||
lines.append("namespace_mem_requests_top: " + "; ".join(parts))
|
lines.append("namespace_mem_requests_top: " + "; ".join(parts))
|
||||||
|
|
||||||
|
|
||||||
|
def _append_namespace_io_net(lines: list[str], summary: dict[str, Any]) -> None:
|
||||||
|
metrics = summary.get("metrics") if isinstance(summary.get("metrics"), dict) else {}
|
||||||
|
net_top = metrics.get("namespace_net_top") if isinstance(metrics.get("namespace_net_top"), list) else []
|
||||||
|
io_top = metrics.get("namespace_io_top") if isinstance(metrics.get("namespace_io_top"), list) else []
|
||||||
|
if net_top:
|
||||||
|
parts = []
|
||||||
|
for entry in net_top:
|
||||||
|
metric = entry.get("metric") if isinstance(entry, dict) else {}
|
||||||
|
namespace = metric.get("namespace")
|
||||||
|
value = entry.get("value")
|
||||||
|
if namespace:
|
||||||
|
parts.append(f"{namespace}={_format_rate_bytes(value)}")
|
||||||
|
if parts:
|
||||||
|
lines.append("namespace_net_top: " + "; ".join(parts))
|
||||||
|
if io_top:
|
||||||
|
parts = []
|
||||||
|
for entry in io_top:
|
||||||
|
metric = entry.get("metric") if isinstance(entry, dict) else {}
|
||||||
|
namespace = metric.get("namespace")
|
||||||
|
value = entry.get("value")
|
||||||
|
if namespace:
|
||||||
|
parts.append(f"{namespace}={_format_rate_bytes(value)}")
|
||||||
|
if parts:
|
||||||
|
lines.append("namespace_io_top: " + "; ".join(parts))
|
||||||
|
|
||||||
|
|
||||||
def _append_pod_usage(lines: list[str], summary: dict[str, Any]) -> None:
|
def _append_pod_usage(lines: list[str], summary: dict[str, Any]) -> None:
|
||||||
metrics = summary.get("metrics") if isinstance(summary.get("metrics"), dict) else {}
|
metrics = summary.get("metrics") if isinstance(summary.get("metrics"), dict) else {}
|
||||||
cpu_top = metrics.get("pod_cpu_top") if isinstance(metrics.get("pod_cpu_top"), list) else []
|
cpu_top = metrics.get("pod_cpu_top") if isinstance(metrics.get("pod_cpu_top"), list) else []
|
||||||
@ -873,6 +899,7 @@ def summary_text(snapshot: dict[str, Any] | None) -> str:
|
|||||||
_append_node_usage_stats(lines, summary)
|
_append_node_usage_stats(lines, summary)
|
||||||
_append_namespace_usage(lines, summary)
|
_append_namespace_usage(lines, summary)
|
||||||
_append_namespace_requests(lines, summary)
|
_append_namespace_requests(lines, summary)
|
||||||
|
_append_namespace_io_net(lines, summary)
|
||||||
_append_pod_usage(lines, summary)
|
_append_pod_usage(lines, summary)
|
||||||
_append_restarts(lines, summary)
|
_append_restarts(lines, summary)
|
||||||
_append_job_failures(lines, summary)
|
_append_job_failures(lines, summary)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user