Skip to content

Commit 281edcd

Browse files
committed
Add ReconciliationTimeout panel
Add `ReconciliationTimeout` panel to the controller details dashboard. The uses the newly introduced `controller_runtime_reconcile_timeouts_total metric` metric (see kubernetes-sigs/controller-runtime#3382).
1 parent e390006 commit 281edcd

File tree

1 file changed

+161
-12
lines changed

1 file changed

+161
-12
lines changed

pkg/component/observability/plutono/dashboards/common/controller-details.json

Lines changed: 161 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -407,14 +407,163 @@
407407
"title": "Reconciliation time (P50, P90, P99)",
408408
"type": "timeseries"
409409
},
410+
{
411+
"aliasColors": {},
412+
"bars": false,
413+
"dashLength": 10,
414+
"dashes": false,
415+
"datasource": "${datasource}",
416+
"description": "Shows the reconciliation timeouts for a controller by pod.",
417+
"fieldConfig": {
418+
"defaults": {
419+
"color": {
420+
"mode": "palette-classic"
421+
},
422+
"custom": {
423+
"axisLabel": "",
424+
"axisPlacement": "auto",
425+
"barAlignment": 0,
426+
"drawStyle": "line",
427+
"fillOpacity": 30,
428+
"gradientMode": "opacity",
429+
"hideFrom": {
430+
"graph": false,
431+
"legend": false,
432+
"tooltip": false
433+
},
434+
"lineInterpolation": "linear",
435+
"lineStyle": {
436+
"fill": "solid"
437+
},
438+
"lineWidth": 1,
439+
"pointSize": 5,
440+
"scaleDistribution": {
441+
"type": "linear"
442+
},
443+
"showPoints": "auto",
444+
"spanNulls": false
445+
},
446+
"mappings": [],
447+
"thresholds": {
448+
"mode": "absolute",
449+
"steps": [
450+
{
451+
"color": "green",
452+
"value": null
453+
},
454+
{
455+
"color": "red",
456+
"value": 80
457+
}
458+
]
459+
},
460+
"unit": "ops"
461+
},
462+
"overrides": []
463+
},
464+
"fill": 1,
465+
"fillGradient": 0,
466+
"gridPos": {
467+
"h": 8,
468+
"w": 12,
469+
"x": 0,
470+
"y": 19
471+
},
472+
"hiddenSeries": false,
473+
"id": 25,
474+
"legend": {
475+
"avg": false,
476+
"current": false,
477+
"max": false,
478+
"min": false,
479+
"show": true,
480+
"total": false,
481+
"values": false
482+
},
483+
"lines": true,
484+
"linewidth": 1,
485+
"nullPointMode": "null",
486+
"options": {
487+
"alertThreshold": true,
488+
"legend": {
489+
"calcs": [],
490+
"displayMode": "list",
491+
"placement": "bottom"
492+
},
493+
"tooltipOptions": {
494+
"mode": "single"
495+
}
496+
},
497+
"percentage": false,
498+
"pluginVersion": "7.5.45",
499+
"pointradius": 2,
500+
"points": false,
501+
"renderer": "flot",
502+
"seriesOverrides": [],
503+
"spaceLength": 10,
504+
"stack": false,
505+
"steppedLine": false,
506+
"targets": [
507+
{
508+
"exemplar": true,
509+
"expr": "sum(rate(controller_runtime_reconcile_timeouts_total{job=\"$job\",pod=~\"$pod\",controller=\"$controller\"}[$__rate_interval])) by (pod)",
510+
"hide": false,
511+
"interval": "",
512+
"legendFormat": "{{pod}}",
513+
"refId": "B"
514+
}
515+
],
516+
"thresholds": [],
517+
"timeFrom": null,
518+
"timeRegions": [],
519+
"timeShift": null,
520+
"title": "Reconciliation Timeout by pod",
521+
"tooltip": {
522+
"shared": true,
523+
"sort": 0,
524+
"value_type": "individual"
525+
},
526+
"type": "timeseries",
527+
"xaxis": {
528+
"buckets": null,
529+
"mode": "time",
530+
"name": null,
531+
"show": true,
532+
"values": []
533+
},
534+
"yaxes": [
535+
{
536+
"$$hashKey": "object:191",
537+
"format": "ops",
538+
"label": null,
539+
"logBase": 1,
540+
"max": null,
541+
"min": null,
542+
"show": true
543+
},
544+
{
545+
"$$hashKey": "object:192",
546+
"format": "short",
547+
"label": null,
548+
"logBase": 1,
549+
"max": null,
550+
"min": null,
551+
"show": true
552+
}
553+
],
554+
"yaxis": {
555+
"align": false,
556+
"alignLevel": null
557+
}
558+
},
410559
{
411560
"collapsed": false,
412561
"datasource": null,
413562
"gridPos": {
414563
"h": 1,
415564
"w": 24,
416565
"x": 0,
417-
"y": 19
566+
"y": 27
418567
},
419568
"id": 9,
420569
"panels": [],
@@ -498,7 +647,7 @@
498647
"h": 8,
499648
"w": 12,
500649
"x": 0,
501-
"y": 20
650+
"y": 28
502651
},
503652
"id": 11,
504653
"options": {
@@ -592,7 +741,7 @@
592741
"h": 8,
593742
"w": 12,
594743
"x": 12,
595-
"y": 20
744+
"y": 28
596745
},
597746
"id": 12,
598747
"options": {
@@ -678,7 +827,7 @@
678827
"h": 8,
679828
"w": 12,
680829
"x": 0,
681-
"y": 28
830+
"y": 36
682831
},
683832
"id": 13,
684833
"options": {
@@ -753,7 +902,7 @@
753902
"h": 8,
754903
"w": 12,
755904
"x": 12,
756-
"y": 28
905+
"y": 36
757906
},
758907
"id": 14,
759908
"options": {
@@ -787,7 +936,7 @@
787936
"h": 1,
788937
"w": 24,
789938
"x": 0,
790-
"y": 36
939+
"y": 44
791940
},
792941
"id": 16,
793942
"panels": [],
@@ -842,7 +991,7 @@
842991
"h": 8,
843992
"w": 12,
844993
"x": 0,
845-
"y": 37
994+
"y": 45
846995
},
847996
"id": 19,
848997
"options": {
@@ -917,7 +1066,7 @@
9171066
"h": 8,
9181067
"w": 12,
9191068
"x": 12,
920-
"y": 37
1069+
"y": 45
9211070
},
9221071
"id": 20,
9231072
"options": {
@@ -994,7 +1143,7 @@
9941143
"h": 8,
9951144
"w": 12,
9961145
"x": 0,
997-
"y": 45
1146+
"y": 53
9981147
},
9991148
"id": 21,
10001149
"options": {
@@ -1087,7 +1236,7 @@
10871236
"h": 8,
10881237
"w": 12,
10891238
"x": 12,
1090-
"y": 45
1239+
"y": 53
10911240
},
10921241
"id": 22,
10931242
"options": {
@@ -1149,7 +1298,7 @@
11491298
"h": 8,
11501299
"w": 12,
11511300
"x": 0,
1152-
"y": 53
1301+
"y": 61
11531302
},
11541303
"hiddenSeries": false,
11551304
"id": 23,
@@ -1369,4 +1518,4 @@
13691518
"title": "Controller Runtime / Controller Details",
13701519
"uid": "controller-details",
13711520
"version": 1
1372-
}
1521+
}

0 commit comments

Comments
 (0)