1 # Copyright 2019 Minsait - Indra S.A.
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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)
21 app: prometheus-kafka-exporter-grafana
22 grafana_dashboard: "1"
23 name: osm-monitoring-prometheus-kafka-exporter-grafana
25 k8s-sidecar-target-directory: "/tmp/dashboards/Open Source MANO"
27 kafka-exporter-dashboard.json: |-
33 "datasource": "-- Grafana --",
36 "iconColor": "rgba(0, 211, 255, 1)",
37 "name": "Annotations & Alerts",
42 "description": "Kafka resource usage and throughput",
47 "iteration": 1578848023483,
55 "datasource": "Prometheus",
82 "nullPointMode": "connected",
90 "seriesOverrides": [],
96 "expr": "sum(kafka_topic_partition_current_offset - kafka_topic_partition_oldest_offset{instance=\"$instance\", topic=~\"$topic\"}) by (topic)",
97 "format": "time_series",
99 "legendFormat": "{{topic}}",
107 "title": "Messages stored per topic",
111 "value_type": "individual"
149 "datasource": "Prometheus",
160 "alignAsTable": true,
176 "nullPointMode": "connected",
184 "seriesOverrides": [],
187 "steppedLine": false,
190 "expr": "sum(kafka_consumergroup_lag{instance=\"$instance\",topic=~\"$topic\"}) by (consumergroup, topic) ",
191 "format": "time_series",
195 "legendFormat": " {{topic}} ({{consumergroup}})",
203 "title": "Lag by Consumer Group",
207 "value_type": "individual"
245 "datasource": "Prometheus",
256 "alignAsTable": true,
270 "nullPointMode": "connected",
278 "seriesOverrides": [],
281 "steppedLine": false,
284 "expr": "sum(delta(kafka_topic_partition_current_offset{instance=~'$instance', topic=~\"$topic\"}[5m])/5) by (topic)",
285 "format": "time_series",
287 "legendFormat": "{{topic}}",
295 "title": "Messages produced per minute",
299 "value_type": "individual"
337 "datasource": "Prometheus",
348 "alignAsTable": true,
364 "nullPointMode": "connected",
372 "seriesOverrides": [],
375 "steppedLine": false,
378 "expr": "sum(delta(kafka_consumergroup_current_offset{instance=~'$instance',topic=~\"$topic\"}[5m])/5) by (consumergroup, topic)",
379 "format": "time_series",
381 "legendFormat": " {{topic}} ({{consumergroup}})",
389 "title": "Messages consumed per minute",
393 "value_type": "individual"
431 "datasource": "Prometheus",
442 "alignAsTable": true,
456 "nullPointMode": "null",
464 "seriesOverrides": [],
467 "steppedLine": false,
470 "expr": "sum by(topic) (kafka_topic_partitions{instance=\"$instance\",topic=~\"$topic\"})",
471 "format": "time_series",
473 "legendFormat": "{{topic}}",
481 "title": "Partitions per Topic",
485 "value_type": "individual"
530 "text": "osm-kafka-exporter-service",
531 "value": "osm-kafka-exporter-service"
533 "datasource": "Prometheus",
541 "query": "label_values(kafka_consumergroup_current_offset, job)",
544 "skipUrlSync": false,
546 "tagValuesQuery": "",
554 "datasource": "Prometheus",
562 "query": "label_values(kafka_consumergroup_current_offset{job=~\"$job\"}, instance)",
565 "skipUrlSync": false,
567 "tagValuesQuery": "",
582 "datasource": "Prometheus",
590 "query": "label_values(kafka_topic_partition_current_offset{instance='$instance',topic!='__consumer_offsets',topic!='--kafka'}, topic)",
593 "skipUrlSync": false,
595 "tagValuesQuery": "",
597 "tagsQuery": "topic",
608 "refresh_intervals": [
632 "timezone": "browser",