Watch
0
0
Fork
You've already forked hyperhive
0

agent: export swarm-queue connected gauge and skipped-publish counter, with dashboard panels

This commit is contained in:
atlas 2026-11-07 01:31:47 +01:00 • committed by mara
commit e9025823d9

View file

@ -3698,6 +3698,182 @@
}
}
}
},
"panel-83": {
"kind": "Panel",
"spec": {
"id": 83,
"title": "Swarm queue connection by agent",
"description": "Whether each agent is connected to the swarm queue. Grey: no data, agent on an older build.",
"links": [],
"data": {
"kind": "QueryGroup",
"spec": {
"queries": [
{
"kind": "PanelQuery",
"spec": {
"query": {
"kind": "DataQuery",
"group": "prometheus",
"version": "v0",
"datasource": {
"name": "@datasourceUid@"
},
"spec": {
"expr": "max by (agent) (last_over_time({__name__=\"hyperhive.agent.swarm_queue.connected\", hive=~\"$hive\", agent=~\"$agent\"}[5m])) or (max by (agent) (last_over_time({__name__=\"hyperhive.container.cpu.percent\", hive=~\"$hive\", agent=~\"$agent\"}[5m])) * 0 - 1)",
"legendFormat": "{{agent}}"
}
},
"refId": "A",
"hidden": false
}
}
],
"transformations": [],
"queryOptions": {}
}
},
"vizConfig": {
"kind": "VizConfig",
"group": "state-timeline",
"version": "",
"spec": {
"options": {
"alignValue": "left",
"legend": {
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"mergeValues": true,
"rowHeight": 0.9,
"showValue": "auto",
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"custom": {
"fillOpacity": 80,
"lineWidth": 0
},
"mappings": [
{
"type": "value",
"options": {
"1": {
"text": "connected",
"color": "green",
"index": 0
},
"0": {
"text": "disconnected",
"color": "red",
"index": 1
},
"-1": {
"text": "no data",
"color": "text",
"index": 2
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"value": null,
"color": "text"
}
]
}
},
"overrides": []
}
}
}
}
},
"panel-84": {
"kind": "Panel",
"spec": {
"id": 84,
"title": "Skipped queue publishes per hour by agent",
"description": "Publishes an agent dropped because it was not connected to the swarm queue, per hour.",
"links": [],
"data": {
"kind": "QueryGroup",
"spec": {
"queries": [
{
"kind": "PanelQuery",
"spec": {
"query": {
"kind": "DataQuery",
"group": "prometheus",
"version": "v0",
"datasource": {
"name": "@datasourceUid@"
},
"spec": {
"expr": "sum by (agent) (rate({__name__=\"hyperhive.agent.swarm_queue.publish_skipped\", hive=~\"$hive\", agent=~\"$agent\"}[$__rate_interval])) * 3600",
"legendFormat": "{{agent}}"
}
},
"refId": "A",
"hidden": false
}
}
],
"transformations": [],
"queryOptions": {}
}
},
"vizConfig": {
"kind": "VizConfig",
"group": "timeseries",
"version": "",
"spec": {
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "multi",
"sort": "desc"
}
},
"fieldConfig": {
"defaults": {
"unit": "short",
"decimals": 1,
"color": {
"mode": "palette-classic"
},
"custom": {
"axisSoftMin": 0,
"drawStyle": "line",
"fillOpacity": 0,
"lineWidth": 1,
"showPoints": "never",
"spanNulls": false
}
},
"overrides": []
}
}
}
}
}
},
"layout": {
@ -4270,6 +4446,32 @@
"name": "panel-68"
}
}
},
{
"kind": "GridLayoutItem",
"spec": {
"x": 0,
"y": 39,
"width": 24,
"height": 7,
"element": {
"kind": "ElementReference",
"name": "panel-83"
}
}
},
{
"kind": "GridLayoutItem",
"spec": {
"x": 0,
"y": 46,
"width": 24,
"height": 8,
"element": {
"kind": "ElementReference",
"name": "panel-84"
}
}
}
]
}