Fix bug 964: Duplicated dashboards. Set fixed port for Grafana
[osm/devops.git] / installers / k8s / mongodb-exporter-dashboard.yaml
1 #   Copyright 2019 Minsait - Indra S.A.
2 #
3 #   Licensed under the Apache License, Version 2.0 (the "License");
4 #   you may not use this file except in compliance with the License.
5 #   You may obtain a copy of the License at
6 #
7 #       http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #   Unless required by applicable law or agreed to in writing, software
10 #   distributed under the License is distributed on an "AS IS" BASIS,
11 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #   See the License for the specific language governing permissions and
13 #   limitations under the License.
14 #   Author: Jose Manuel Palacios (jmpalacios@minsait.com)
15 #   Author: Jose Antonio Martinez (jamartinezv@minsait.com)
16
17 apiVersion: v1
18 kind: ConfigMap
19 metadata:
20   labels:
21     app: prometheus-mongodb-exporter-grafana
22     grafana_dashboard: "1"
23     heritage: Tiller
24   name: osm-monitoring-prometheus-mongodb-exporter-grafana
25   annotations:
26     k8s-sidecar-target-directory: "/tmp/dashboards/Open Source MANO"
27 data:
28   mongodb-exporter-dashboard.json: |-
29     {
30       "annotations": {
31         "list": [
32           {
33             "builtIn": 1,
34             "datasource": "-- Grafana --",
35             "enable": true,
36             "hide": true,
37             "iconColor": "rgba(0, 211, 255, 1)",
38             "name": "Annotations & Alerts",
39             "type": "dashboard"
40           }
41         ]
42       },
43       "description": "MongoDB Prometheus Exporter Dashboard.",
44       "editable": true,
45       "gnetId": 2583,
46       "graphTooltip": 1,
47       "id": 9,
48       "iteration": 1577555358996,
49       "links": [],
50       "panels": [
51         {
52           "collapsed": false,
53           "gridPos": {
54             "h": 1,
55             "w": 24,
56             "x": 0,
57             "y": 0
58           },
59           "id": 22,
60           "panels": [],
61           "repeat": "env",
62           "title": "Health",
63           "type": "row"
64         },
65         {
66           "cacheTimeout": null,
67           "colorBackground": false,
68           "colorValue": true,
69           "colors": [
70             "rgba(245, 54, 54, 0.9)",
71             "rgba(237, 129, 40, 0.89)",
72             "rgba(50, 172, 45, 0.97)"
73           ],
74           "datasource": "Prometheus",
75           "decimals": null,
76           "format": "s",
77           "gauge": {
78             "maxValue": 100,
79             "minValue": 0,
80             "show": false,
81             "thresholdLabels": false,
82             "thresholdMarkers": true
83           },
84           "gridPos": {
85             "h": 4,
86             "w": 12,
87             "x": 0,
88             "y": 1
89           },
90           "id": 10,
91           "interval": null,
92           "links": [],
93           "mappingType": 1,
94           "mappingTypes": [
95             {
96               "name": "value to text",
97               "value": 1
98             },
99             {
100               "name": "range to text",
101               "value": 2
102             }
103           ],
104           "maxDataPoints": 100,
105           "nullPointMode": "connected",
106           "nullText": null,
107           "options": {},
108           "postfix": "",
109           "postfixFontSize": "50%",
110           "prefix": "",
111           "prefixFontSize": "50%",
112           "rangeMaps": [
113             {
114               "from": "null",
115               "text": "N/A",
116               "to": "null"
117             }
118           ],
119           "sparkline": {
120             "fillColor": "rgba(31, 118, 189, 0.18)",
121             "full": false,
122             "lineColor": "rgb(31, 120, 193)",
123             "show": false
124           },
125           "tableColumn": "",
126           "targets": [
127             {
128               "expr": "mongodb_instance_uptime_seconds{instance=~\"$instance\"}",
129               "format": "time_series",
130               "intervalFactor": 2,
131               "legendFormat": "",
132               "refId": "A",
133               "step": 1800
134             }
135           ],
136           "thresholds": "0,360",
137           "title": "Uptime",
138           "type": "singlestat",
139           "valueFontSize": "80%",
140           "valueMaps": [
141             {
142               "op": "=",
143               "text": "N/A",
144               "value": "null"
145             }
146           ],
147           "valueName": "current"
148         },
149         {
150           "cacheTimeout": null,
151           "colorBackground": false,
152           "colorValue": false,
153           "colors": [
154             "rgba(245, 54, 54, 0.9)",
155             "rgba(237, 129, 40, 0.89)",
156             "rgba(50, 172, 45, 0.97)"
157           ],
158           "datasource": "Prometheus",
159           "format": "none",
160           "gauge": {
161             "maxValue": 100,
162             "minValue": 0,
163             "show": false,
164             "thresholdLabels": false,
165             "thresholdMarkers": true
166           },
167           "gridPos": {
168             "h": 4,
169             "w": 12,
170             "x": 12,
171             "y": 1
172           },
173           "id": 1,
174           "interval": null,
175           "links": [],
176           "mappingType": 1,
177           "mappingTypes": [
178             {
179               "name": "value to text",
180               "value": 1
181             },
182             {
183               "name": "range to text",
184               "value": 2
185             }
186           ],
187           "maxDataPoints": 100,
188           "nullPointMode": "connected",
189           "nullText": null,
190           "options": {},
191           "postfix": "",
192           "postfixFontSize": "50%",
193           "prefix": "",
194           "prefixFontSize": "50%",
195           "rangeMaps": [
196             {
197               "from": "null",
198               "text": "N/A",
199               "to": "null"
200             }
201           ],
202           "sparkline": {
203             "fillColor": "rgba(31, 118, 189, 0.18)",
204             "full": true,
205             "lineColor": "rgb(31, 120, 193)",
206             "show": true
207           },
208           "tableColumn": "",
209           "targets": [
210             {
211               "expr": "mongodb_connections{instance=~\"$instance\",state=\"current\"}",
212               "format": "time_series",
213               "intervalFactor": 2,
214               "legendFormat": "",
215               "metric": "mongodb_connections",
216               "refId": "A",
217               "step": 1800
218             }
219           ],
220           "thresholds": "",
221           "title": "Open Connections",
222           "type": "singlestat",
223           "valueFontSize": "80%",
224           "valueMaps": [
225             {
226               "op": "=",
227               "text": "N/A",
228               "value": "null"
229             }
230           ],
231           "valueName": "avg"
232         },
233         {
234           "collapsed": false,
235           "gridPos": {
236             "h": 1,
237             "w": 24,
238             "x": 0,
239             "y": 5
240           },
241           "id": 20,
242           "panels": [],
243           "repeat": "env",
244           "title": "Operations",
245           "type": "row"
246         },
247         {
248           "aliasColors": {},
249           "bars": false,
250           "dashLength": 10,
251           "dashes": false,
252           "datasource": "Prometheus",
253           "fill": 1,
254           "fillGradient": 0,
255           "gridPos": {
256             "h": 6,
257             "w": 10,
258             "x": 0,
259             "y": 6
260           },
261           "id": 7,
262           "legend": {
263             "avg": false,
264             "current": false,
265             "max": false,
266             "min": false,
267             "show": true,
268             "total": false,
269             "values": false
270           },
271           "lines": true,
272           "linewidth": 1,
273           "links": [],
274           "nullPointMode": "null",
275           "options": {
276             "dataLinks": []
277           },
278           "percentage": false,
279           "pointradius": 5,
280           "points": false,
281           "renderer": "flot",
282           "seriesOverrides": [],
283           "spaceLength": 10,
284           "stack": false,
285           "steppedLine": false,
286           "targets": [
287             {
288               "expr": "rate(mongodb_op_counters_total{instance=~\"$instance\"}[$interval])",
289               "format": "time_series",
290               "interval": "",
291               "intervalFactor": 2,
292               "legendFormat": "{{type}}",
293               "refId": "A",
294               "step": 240
295             }
296           ],
297           "thresholds": [],
298           "timeFrom": null,
299           "timeRegions": [],
300           "timeShift": null,
301           "title": "Query Operations",
302           "tooltip": {
303             "shared": true,
304             "sort": 0,
305             "value_type": "individual"
306           },
307           "type": "graph",
308           "xaxis": {
309             "buckets": null,
310             "mode": "time",
311             "name": null,
312             "show": true,
313             "values": []
314           },
315           "yaxes": [
316             {
317               "format": "ops",
318               "label": null,
319               "logBase": 1,
320               "max": null,
321               "min": null,
322               "show": true
323             },
324             {
325               "format": "short",
326               "label": null,
327               "logBase": 1,
328               "max": null,
329               "min": null,
330               "show": true
331             }
332           ],
333           "yaxis": {
334             "align": false,
335             "alignLevel": null
336           }
337         },
338         {
339           "aliasColors": {},
340           "bars": false,
341           "dashLength": 10,
342           "dashes": false,
343           "datasource": "Prometheus",
344           "fill": 1,
345           "fillGradient": 0,
346           "gridPos": {
347             "h": 6,
348             "w": 8,
349             "x": 10,
350             "y": 6
351           },
352           "id": 9,
353           "legend": {
354             "avg": false,
355             "current": false,
356             "max": false,
357             "min": false,
358             "show": true,
359             "total": false,
360             "values": false
361           },
362           "lines": true,
363           "linewidth": 1,
364           "links": [],
365           "nullPointMode": "null",
366           "options": {
367             "dataLinks": []
368           },
369           "percentage": false,
370           "pointradius": 5,
371           "points": false,
372           "renderer": "flot",
373           "seriesOverrides": [
374             {
375               "alias": "returned",
376               "yaxis": 1
377             }
378           ],
379           "spaceLength": 10,
380           "stack": false,
381           "steppedLine": false,
382           "targets": [
383             {
384               "expr": "rate(mongodb_mongod_metrics_document_total{instance=~\"$instance\"}[$interval])",
385               "format": "time_series",
386               "interval": "",
387               "intervalFactor": 2,
388               "legendFormat": "{{state}}",
389               "refId": "A",
390               "step": 240
391             }
392           ],
393           "thresholds": [],
394           "timeFrom": null,
395           "timeRegions": [],
396           "timeShift": null,
397           "title": "Document Operations",
398           "tooltip": {
399             "shared": true,
400             "sort": 0,
401             "value_type": "individual"
402           },
403           "type": "graph",
404           "xaxis": {
405             "buckets": null,
406             "mode": "time",
407             "name": null,
408             "show": true,
409             "values": []
410           },
411           "yaxes": [
412             {
413               "format": "short",
414               "label": null,
415               "logBase": 1,
416               "max": null,
417               "min": null,
418               "show": true
419             },
420             {
421               "format": "short",
422               "label": null,
423               "logBase": 1,
424               "max": null,
425               "min": null,
426               "show": true
427             }
428           ],
429           "yaxis": {
430             "align": false,
431             "alignLevel": null
432           }
433         },
434         {
435           "aliasColors": {},
436           "bars": false,
437           "dashLength": 10,
438           "dashes": false,
439           "datasource": "Prometheus",
440           "fill": 1,
441           "fillGradient": 0,
442           "gridPos": {
443             "h": 6,
444             "w": 6,
445             "x": 18,
446             "y": 6
447           },
448           "id": 8,
449           "legend": {
450             "avg": false,
451             "current": false,
452             "max": false,
453             "min": false,
454             "show": true,
455             "total": false,
456             "values": false
457           },
458           "lines": true,
459           "linewidth": 1,
460           "links": [],
461           "nullPointMode": "null",
462           "options": {
463             "dataLinks": []
464           },
465           "percentage": false,
466           "pointradius": 5,
467           "points": false,
468           "renderer": "flot",
469           "seriesOverrides": [],
470           "spaceLength": 10,
471           "stack": false,
472           "steppedLine": false,
473           "targets": [
474             {
475               "expr": "rate(mongodb_mongod_metrics_query_executor_total{instance=~\"$instance\"}[$interval])",
476               "format": "time_series",
477               "interval": "",
478               "intervalFactor": 2,
479               "legendFormat": "{{state}}",
480               "refId": "A",
481               "step": 600
482             }
483           ],
484           "thresholds": [],
485           "timeFrom": null,
486           "timeRegions": [],
487           "timeShift": null,
488           "title": "Document Query Executor",
489           "tooltip": {
490             "shared": true,
491             "sort": 0,
492             "value_type": "individual"
493           },
494           "type": "graph",
495           "xaxis": {
496             "buckets": null,
497             "mode": "time",
498             "name": null,
499             "show": true,
500             "values": []
501           },
502           "yaxes": [
503             {
504               "format": "short",
505               "label": null,
506               "logBase": 1,
507               "max": null,
508               "min": null,
509               "show": true
510             },
511             {
512               "format": "short",
513               "label": null,
514               "logBase": 1,
515               "max": null,
516               "min": null,
517               "show": true
518             }
519           ],
520           "yaxis": {
521             "align": false,
522             "alignLevel": null
523           }
524         },
525         {
526           "collapsed": false,
527           "gridPos": {
528             "h": 1,
529             "w": 24,
530             "x": 0,
531             "y": 12
532           },
533           "id": 23,
534           "panels": [],
535           "repeat": null,
536           "title": "Resources",
537           "type": "row"
538         },
539         {
540           "aliasColors": {},
541           "bars": false,
542           "dashLength": 10,
543           "dashes": false,
544           "datasource": "Prometheus",
545           "fill": 1,
546           "fillGradient": 0,
547           "gridPos": {
548             "h": 6,
549             "w": 12,
550             "x": 0,
551             "y": 13
552           },
553           "id": 4,
554           "legend": {
555             "alignAsTable": false,
556             "avg": false,
557             "current": true,
558             "hideEmpty": false,
559             "hideZero": false,
560             "max": false,
561             "min": false,
562             "rightSide": false,
563             "show": true,
564             "total": false,
565             "values": true
566           },
567           "lines": true,
568           "linewidth": 1,
569           "links": [],
570           "nullPointMode": "null",
571           "options": {
572             "dataLinks": []
573           },
574           "percentage": false,
575           "pointradius": 5,
576           "points": false,
577           "renderer": "flot",
578           "seriesOverrides": [],
579           "spaceLength": 10,
580           "stack": false,
581           "steppedLine": false,
582           "targets": [
583             {
584               "expr": "mongodb_memory{instance=~\"$instance\",type=~\"resident|virtual\"}",
585               "format": "time_series",
586               "interval": "",
587               "intervalFactor": 2,
588               "legendFormat": "{{type}}",
589               "refId": "A",
590               "step": 240
591             }
592           ],
593           "thresholds": [],
594           "timeFrom": null,
595           "timeRegions": [],
596           "timeShift": null,
597           "title": "Memory",
598           "tooltip": {
599             "shared": false,
600             "sort": 0,
601             "value_type": "individual"
602           },
603           "type": "graph",
604           "xaxis": {
605             "buckets": null,
606             "mode": "time",
607             "name": null,
608             "show": true,
609             "values": [
610               "total"
611             ]
612           },
613           "yaxes": [
614             {
615               "format": "decmbytes",
616               "label": "MB",
617               "logBase": 1,
618               "max": null,
619               "min": null,
620               "show": true
621             },
622             {
623               "format": "short",
624               "label": null,
625               "logBase": 1,
626               "max": null,
627               "min": null,
628               "show": true
629             }
630           ],
631           "yaxis": {
632             "align": false,
633             "alignLevel": null
634           }
635         },
636         {
637           "aliasColors": {},
638           "bars": false,
639           "dashLength": 10,
640           "dashes": false,
641           "datasource": "Prometheus",
642           "fill": 1,
643           "fillGradient": 0,
644           "gridPos": {
645             "h": 6,
646             "w": 12,
647             "x": 12,
648             "y": 13
649           },
650           "id": 5,
651           "legend": {
652             "avg": false,
653             "current": false,
654             "max": false,
655             "min": false,
656             "show": true,
657             "total": false,
658             "values": false
659           },
660           "lines": true,
661           "linewidth": 1,
662           "links": [],
663           "nullPointMode": "null",
664           "options": {
665             "dataLinks": []
666           },
667           "percentage": false,
668           "pointradius": 5,
669           "points": false,
670           "renderer": "flot",
671           "seriesOverrides": [],
672           "spaceLength": 10,
673           "stack": false,
674           "steppedLine": false,
675           "targets": [
676             {
677               "expr": "rate(mongodb_network_bytes_total{instance=~\"$instance\"}[$interval])",
678               "format": "time_series",
679               "interval": "",
680               "intervalFactor": 2,
681               "legendFormat": "{{state}}",
682               "metric": "mongodb_metrics_operation_total",
683               "refId": "A",
684               "step": 240
685             }
686           ],
687           "thresholds": [],
688           "timeFrom": null,
689           "timeRegions": [],
690           "timeShift": null,
691           "title": "Network I/O",
692           "tooltip": {
693             "shared": true,
694             "sort": 0,
695             "value_type": "individual"
696           },
697           "type": "graph",
698           "xaxis": {
699             "buckets": null,
700             "mode": "time",
701             "name": null,
702             "show": true,
703             "values": []
704           },
705           "yaxes": [
706             {
707               "format": "decbytes",
708               "label": null,
709               "logBase": 1,
710               "max": null,
711               "min": null,
712               "show": true
713             },
714             {
715               "format": "short",
716               "label": null,
717               "logBase": 1,
718               "max": null,
719               "min": null,
720               "show": true
721             }
722           ],
723           "yaxis": {
724             "align": false,
725             "alignLevel": null
726           }
727         }
728       ],
729       "refresh": "5s",
730       "schemaVersion": 19,
731       "style": "dark",
732       "tags": [],
733       "templating": {
734         "list": [
735           {
736             "allValue": null,
737             "current": {
738               "text": "All",
739               "value": "$__all"
740             },
741             "datasource": "Prometheus",
742             "definition": "",
743             "hide": 0,
744             "includeAll": true,
745             "label": "instance",
746             "multi": true,
747             "name": "instance",
748             "options": [],
749             "query": "label_values(mongodb_connections, instance)",
750             "refresh": 1,
751             "regex": "",
752             "skipUrlSync": false,
753             "sort": 1,
754             "tagValuesQuery": "/.*-(.*?)-.*/",
755             "tags": [],
756             "tagsQuery": "label_values(mongodb_connections, instance)",
757             "type": "query",
758             "useTags": false
759           },
760           {
761             "auto": true,
762             "auto_count": 30,
763             "auto_min": "10s",
764             "current": {
765               "text": "auto",
766               "value": "$__auto_interval_interval"
767             },
768             "hide": 0,
769             "label": null,
770             "name": "interval",
771             "options": [
772               {
773                 "selected": true,
774                 "text": "auto",
775                 "value": "$__auto_interval_interval"
776               },
777               {
778                 "selected": false,
779                 "text": "1m",
780                 "value": "1m"
781               },
782               {
783                 "selected": false,
784                 "text": "10m",
785                 "value": "10m"
786               },
787               {
788                 "selected": false,
789                 "text": "30m",
790                 "value": "30m"
791               },
792               {
793                 "selected": false,
794                 "text": "1h",
795                 "value": "1h"
796               },
797               {
798                 "selected": false,
799                 "text": "6h",
800                 "value": "6h"
801               },
802               {
803                 "selected": false,
804                 "text": "12h",
805                 "value": "12h"
806               },
807               {
808                 "selected": false,
809                 "text": "1d",
810                 "value": "1d"
811               },
812               {
813                 "selected": false,
814                 "text": "7d",
815                 "value": "7d"
816               },
817               {
818                 "selected": false,
819                 "text": "14d",
820                 "value": "14d"
821               },
822               {
823                 "selected": false,
824                 "text": "30d",
825                 "value": "30d"
826               }
827             ],
828             "query": "1m,10m,30m,1h,6h,12h,1d,7d,14d,30d",
829             "refresh": 2,
830             "skipUrlSync": false,
831             "type": "interval"
832           }
833         ]
834       },
835       "time": {
836         "from": "now/d",
837         "to": "now"
838       },
839       "timepicker": {
840         "refresh_intervals": [
841           "5s",
842           "10s",
843           "30s",
844           "1m",
845           "5m",
846           "15m",
847           "30m",
848           "1h",
849           "2h",
850           "1d"
851         ],
852         "time_options": [
853           "5m",
854           "15m",
855           "1h",
856           "6h",
857           "12h",
858           "24h",
859           "2d",
860           "7d",
861           "30d"
862         ]
863       },
864       "timezone": "browser",
865       "title": "MongoDB",
866       "uid": "HEK4NbtZk",
867       "version": 2
868     }