atlas pods: use prom share() for plurality table

This commit is contained in:
Brad Stein 2025-12-13 11:53:27 -03:00
parent 001f0f95a6
commit 9d1163f580
3 changed files with 6 additions and 8 deletions

View File

@ -522,6 +522,7 @@ def table_panel(
instant=False,
):
"""Return a Grafana table panel definition."""
# Optional PromQL subquery helpers in expr: share(), etc.
panel = {
"id": panel_id,
"type": "table",
@ -1176,12 +1177,9 @@ def build_pods_dashboard():
table_panel(
10,
"Namespace Plurality by Node",
'sum by (namespace,node) (kube_pod_info{pod!=""}) '
'/ sum by (namespace) (kube_pod_info{pod!=""}) '
'== bool on(namespace) group_left(node) '
'max by (namespace) ('
' sum by (namespace,node) (kube_pod_info{pod!=""}) '
' / sum by (namespace) (kube_pod_info{pod!=""})'
'('
' share(sum by (namespace,node) (kube_pod_info{pod!=""}) '
' / ignoring(node) sum by (namespace) (kube_pod_info{pod!=""}))'
')',
{"h": 8, "w": 24, "x": 0, "y": 42},
unit="percent",

View File

@ -508,7 +508,7 @@
},
"targets": [
{
"expr": "sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / sum by (namespace) (kube_pod_info{pod!=\"\"}) == bool on(namespace) group_left(node) max by (namespace) ( sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / sum by (namespace) (kube_pod_info{pod!=\"\"}))",
"expr": "( share(sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / ignoring(node) sum by (namespace) (kube_pod_info{pod!=\"\"})))",
"refId": "A",
"instant": true
}

View File

@ -517,7 +517,7 @@ data:
},
"targets": [
{
"expr": "sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / sum by (namespace) (kube_pod_info{pod!=\"\"}) == bool on(namespace) group_left(node) max by (namespace) ( sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / sum by (namespace) (kube_pod_info{pod!=\"\"}))",
"expr": "( share(sum by (namespace,node) (kube_pod_info{pod!=\"\"}) / ignoring(node) sum by (namespace) (kube_pod_info{pod!=\"\"})))",
"refId": "A",
"instant": true
}