dashboard: show current collector failures with history (#2606)

Signed-off-by: Jan-Otto Kröpke <mail@jkroepke.de>
This commit is contained in:
Jan-Otto Kröpke
2026-10-09 12:00:27 +02:00
committed by GitHub
parent 46354144fb
commit e84780bbdc
2 changed files with 28 additions and 16 deletions
+14 -6
View File
@@ -109,12 +109,13 @@ b.tab(
}), }),
b.panel.new(93, 'Failed collectors', 'stat') b.panel.new(93, 'Failed collectors', 'stat')
+ b.panel.withDescription('Collectors that failed at least once in the selected time range.') + b.panel.withDescription('Number of collectors that failed on the latest scrape, including timeouts. The graph shows the count over the selected time range.')
+ b.panel.withQueries([ + b.panel.withQueries([
b.query.new('count(min_over_time(windows_exporter_collector_success{job=~"$job", instance="$instance"}[$__range]) == 0) or vector(0)', 'A') b.query.new('count(windows_exporter_collector_success{job=~"$job", instance="$instance"} == 0) or vector(0)', 'A'),
+ b.query.withInstant(),
]) ])
+ b.panel.withDefaults({ + b.panel.withDefaults({
decimals: 0,
min: 0,
thresholds: { thresholds: {
steps: [ steps: [
{ {
@@ -127,15 +128,19 @@ b.tab(
}, },
], ],
}, },
})
+ b.panel.withOptions({
graphMode: 'area',
}), }),
b.panel.new(94, 'Timed-out collectors', 'stat') b.panel.new(94, 'Timed-out collectors', 'stat')
+ b.panel.withDescription('Collectors that hit the collector timeout at least once in the selected time range.') + b.panel.withDescription('Number of collectors that timed out on the latest scrape. The graph shows the count over the selected time range.')
+ b.panel.withQueries([ + b.panel.withQueries([
b.query.new('count(max_over_time(windows_exporter_collector_timeout{job=~"$job", instance="$instance"}[$__range]) == 1) or vector(0)', 'A') b.query.new('count(windows_exporter_collector_timeout{job=~"$job", instance="$instance"} == 1) or vector(0)', 'A'),
+ b.query.withInstant(),
]) ])
+ b.panel.withDefaults({ + b.panel.withDefaults({
decimals: 0,
min: 0,
thresholds: { thresholds: {
steps: [ steps: [
{ {
@@ -148,6 +153,9 @@ b.tab(
}, },
], ],
}, },
})
+ b.panel.withOptions({
graphMode: 'area',
}), }),
b.panel.new(95, 'Samples per scrape', 'stat') b.panel.new(95, 'Samples per scrape', 'stat')
+14 -10
View File
@@ -12300,10 +12300,10 @@
"kind": "DataQuery", "kind": "DataQuery",
"spec": { "spec": {
"editorMode": "code", "editorMode": "code",
"expr": "count(min_over_time(windows_exporter_collector_success{job=~\"$job\", instance=\"$instance\"}[$__range]) == 0) or vector(0)", "expr": "count(windows_exporter_collector_success{job=~\"$job\", instance=\"$instance\"} == 0) or vector(0)",
"instant": true, "instant": false,
"legendFormat": "__auto", "legendFormat": "__auto",
"range": false "range": true
}, },
"version": "v0" "version": "v0"
}, },
@@ -12315,7 +12315,7 @@
"transformations": [] "transformations": []
} }
}, },
"description": "Collectors that failed at least once in the selected time range.", "description": "Number of collectors that failed on the latest scrape, including timeouts. The graph shows the count over the selected time range.",
"id": 93, "id": 93,
"links": [], "links": [],
"title": "Failed collectors", "title": "Failed collectors",
@@ -12328,6 +12328,8 @@
"color": { "color": {
"mode": "thresholds" "mode": "thresholds"
}, },
"decimals": 0,
"min": 0,
"thresholds": { "thresholds": {
"mode": "absolute", "mode": "absolute",
"steps": [ "steps": [
@@ -12347,7 +12349,7 @@
}, },
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "none", "graphMode": "area",
"justifyMode": "auto", "justifyMode": "auto",
"orientation": "auto", "orientation": "auto",
"percentChangeColorMode": "standard", "percentChangeColorMode": "standard",
@@ -12386,10 +12388,10 @@
"kind": "DataQuery", "kind": "DataQuery",
"spec": { "spec": {
"editorMode": "code", "editorMode": "code",
"expr": "count(max_over_time(windows_exporter_collector_timeout{job=~\"$job\", instance=\"$instance\"}[$__range]) == 1) or vector(0)", "expr": "count(windows_exporter_collector_timeout{job=~\"$job\", instance=\"$instance\"} == 1) or vector(0)",
"instant": true, "instant": false,
"legendFormat": "__auto", "legendFormat": "__auto",
"range": false "range": true
}, },
"version": "v0" "version": "v0"
}, },
@@ -12401,7 +12403,7 @@
"transformations": [] "transformations": []
} }
}, },
"description": "Collectors that hit the collector timeout at least once in the selected time range.", "description": "Number of collectors that timed out on the latest scrape. The graph shows the count over the selected time range.",
"id": 94, "id": 94,
"links": [], "links": [],
"title": "Timed-out collectors", "title": "Timed-out collectors",
@@ -12414,6 +12416,8 @@
"color": { "color": {
"mode": "thresholds" "mode": "thresholds"
}, },
"decimals": 0,
"min": 0,
"thresholds": { "thresholds": {
"mode": "absolute", "mode": "absolute",
"steps": [ "steps": [
@@ -12433,7 +12437,7 @@
}, },
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "none", "graphMode": "area",
"justifyMode": "auto", "justifyMode": "auto",
"orientation": "auto", "orientation": "auto",
"percentChangeColorMode": "standard", "percentChangeColorMode": "standard",