# Copyright 2021 Canonical Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # # For those usages not covered by the Apache License, Version 2.0 please # contact: legal@canonical.com # # To get in touch with the maintainers, please contact: # osm-charmers@lists.launchpad.net ## --- annotations: list: - builtIn: 1 datasource: '-- Grafana --' enable: true hide: true iconColor: 'rgba(0, 211, 255, 1)' name: Annotations & Alerts type: dashboard description: Kafka resource usage and throughput editable: true gnetId: 7589 graphTooltip: 0 id: 10 iteration: 1578848023483 links: [] panels: - aliasColors: {} bars: false dashLength: 10 dashes: false datasource: Prometheus fill: 0 fillGradient: 0 gridPos: h: 10 w: 10 x: 0 'y': 0 id: 14 legend: alignAsTable: true avg: false current: true max: true min: false rightSide: false show: true sideWidth: 480 sort: max sortDesc: true total: false values: true lines: true linewidth: 1 links: [] nullPointMode: connected options: dataLinks: [] percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] spaceLength: 10 stack: false steppedLine: false targets: - expr: >- sum(kafka_topic_partition_current_offset - kafka_topic_partition_oldest_offset{instance="$instance", topic=~"$topic"}) by (topic) format: time_series intervalFactor: 1 legendFormat: '{{topic}}' refId: B thresholds: [] timeFrom: null timeRegions: [] timeShift: null title: Messages stored per topic tooltip: shared: true sort: 0 value_type: individual type: graph xaxis: buckets: null mode: time name: null show: true values: [] yaxes: - format: short label: null logBase: 1 max: null min: '0' show: true - format: short label: null logBase: 1 max: null min: null show: true yaxis: align: false alignLevel: null - aliasColors: {} bars: false dashLength: 10 dashes: false datasource: Prometheus fill: 0 fillGradient: 0 gridPos: h: 10 w: 10 x: 10 'y': 0 id: 12 legend: alignAsTable: true avg: false current: true max: true min: false rightSide: false show: true sideWidth: 480 sort: max sortDesc: true total: false values: true lines: true linewidth: 1 links: [] nullPointMode: connected options: dataLinks: [] percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] spaceLength: 10 stack: false steppedLine: false targets: - expr: >- sum(kafka_consumergroup_lag{instance="$instance",topic=~"$topic"}) by (consumergroup, topic) format: time_series instant: false interval: '' intervalFactor: 1 legendFormat: ' {{topic}} ({{consumergroup}})' refId: A thresholds: [] timeFrom: null timeRegions: [] timeShift: null title: Lag by Consumer Group tooltip: shared: true sort: 2 value_type: individual type: graph xaxis: buckets: null mode: time name: null show: true values: [] yaxes: - format: short label: '' logBase: 1 max: null min: '0' show: true - format: short label: null logBase: 1 max: null min: null show: true yaxis: align: false alignLevel: null - aliasColors: {} bars: false dashLength: 10 dashes: false datasource: Prometheus fill: 0 fillGradient: 0 gridPos: h: 10 w: 10 x: 0 'y': 10 id: 16 legend: alignAsTable: true avg: false current: true max: true min: false rightSide: false show: true sideWidth: 480 total: false values: true lines: true linewidth: 1 links: [] nullPointMode: connected options: dataLinks: [] percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] spaceLength: 10 stack: false steppedLine: false targets: - expr: >- sum(delta(kafka_topic_partition_current_offset{instance=~'$instance', topic=~"$topic"}[5m])/5) by (topic) format: time_series intervalFactor: 1 legendFormat: '{{topic}}' refId: A thresholds: [] timeFrom: null timeRegions: [] timeShift: null title: Messages produced per minute tooltip: shared: true sort: 0 value_type: individual type: graph xaxis: buckets: null mode: time name: null show: true values: [] yaxes: - format: short label: null logBase: 1 max: null min: null show: true - format: short label: null logBase: 1 max: null min: null show: true yaxis: align: false alignLevel: null - aliasColors: {} bars: false dashLength: 10 dashes: false datasource: Prometheus fill: 0 fillGradient: 0 gridPos: h: 10 w: 10 x: 10 'y': 10 id: 18 legend: alignAsTable: true avg: false current: true max: true min: false rightSide: false show: true sideWidth: 480 sort: current sortDesc: true total: false values: true lines: true linewidth: 1 links: [] nullPointMode: connected options: dataLinks: [] percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] spaceLength: 10 stack: false steppedLine: false targets: - expr: >- sum(delta(kafka_consumergroup_current_offset{instance=~'$instance',topic=~"$topic"}[5m])/5) by (consumergroup, topic) format: time_series intervalFactor: 1 legendFormat: ' {{topic}} ({{consumergroup}})' refId: A thresholds: [] timeFrom: null timeRegions: [] timeShift: null title: Messages consumed per minute tooltip: shared: true sort: 0 value_type: individual type: graph xaxis: buckets: null mode: time name: null show: true values: [] yaxes: - format: short label: null logBase: 1 max: null min: null show: true - format: short label: null logBase: 1 max: null min: null show: true yaxis: align: false alignLevel: null - aliasColors: {} bars: true dashLength: 10 dashes: false datasource: Prometheus fill: 1 fillGradient: 0 gridPos: h: 7 w: 20 x: 0 'y': 20 id: 8 legend: alignAsTable: true avg: false current: true max: false min: false rightSide: true show: true sideWidth: 420 total: false values: true lines: false linewidth: 1 links: [] nullPointMode: 'null' options: dataLinks: [] percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] spaceLength: 10 stack: false steppedLine: false targets: - expr: >- sum by(topic) (kafka_topic_partitions{instance="$instance",topic=~"$topic"}) format: time_series intervalFactor: 1 legendFormat: '{{topic}}' refId: A thresholds: [] timeFrom: null timeRegions: [] timeShift: null title: Partitions per Topic tooltip: shared: false sort: 0 value_type: individual type: graph xaxis: buckets: null mode: series name: null show: false values: - current yaxes: - format: short label: null logBase: 1 max: null min: null show: true - format: short label: null logBase: 1 max: null min: null show: true yaxis: align: false alignLevel: null refresh: 5s schemaVersion: 19 style: dark tags: [] templating: list: - allValue: null current: text: osm-kafka-exporter-service value: osm-kafka-exporter-service datasource: Prometheus definition: '' hide: 0 includeAll: false label: Job multi: false name: job options: [] query: 'label_values(kafka_consumergroup_current_offset, job)' refresh: 1 regex: '' skipUrlSync: false sort: 0 tagValuesQuery: '' tags: [] tagsQuery: '' type: query useTags: false - allValue: null datasource: Prometheus definition: '' hide: 0 includeAll: false label: Instance multi: false name: instance options: [] query: >- 'label_values(kafka_consumergroup_current_offset{job=~"$job"},' 'instance)' refresh: 1 regex: '' skipUrlSync: false sort: 0 tagValuesQuery: '' tags: [] tagsQuery: '' type: query useTags: false - allValue: null current: tags: [] text: All value: - $__all datasource: Prometheus definition: '' hide: 0 includeAll: true label: Topic multi: true name: topic options: [] query: >- label_values(kafka_topic_partition_current_offset{instance='$instance',topic!='__consumer_offsets',topic!='--kafka'}, topic) refresh: 1 regex: '' skipUrlSync: false sort: 1 tagValuesQuery: '' tags: [] tagsQuery: topic type: query useTags: false time: from: now-1h to: now timepicker: refresh_intervals: - 5s - 10s - 30s - 1m - 5m - 15m - 30m - 1h - 2h - 1d time_options: - 5m - 15m - 1h - 6h - 12h - 24h - 2d - 7d - 30d timezone: browser title: Kafka uid: jwPKIsniz version: 2