]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: info on why RBD graphs are empty 54355/head
authorNobuto Murata <nobuto.murata@canonical.com>
Thu, 2 Nov 2023 04:33:07 +0000 (13:33 +0900)
committerNobuto Murata <nobuto.murata@canonical.com>
Mon, 6 Nov 2023 06:50:50 +0000 (15:50 +0900)
Those RBD IO statistics graphs are empty out of the box and it's on
purpose. Instead of giving an impression that those graphs are broken,
point users to a documentation explaining about optional steps to enable
those statistics.
https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics

Signed-off-by: Nobuto Murata <nobuto.murata@canonical.com>
monitoring/ceph-mixin/dashboards/rbd.libsonnet
monitoring/ceph-mixin/dashboards_out/rbd-details.json
monitoring/ceph-mixin/dashboards_out/rbd-overview.json

index 709d4e04f7e9e34524cf85eed325389fdfc812ae..8ae9d272e50d618061c4e3939d309156f12af004 100644 (file)
@@ -1,12 +1,22 @@
 local g = import 'grafonnet/grafana.libsonnet';
 local u = import 'utils.libsonnet';
 
+local info_rbd_stats = std.join(
+  '',
+  [
+    'RBD per-image IO statistics are disabled by default.\n\n',
+    'Please refer to ',
+    'https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics ',
+    'for information about how to enable those optionally.',
+  ]
+);
+
 (import 'utils.libsonnet') {
   'rbd-details.json':
-    local RbdDetailsPanel(title, formatY1, expr1, expr2, x, y, w, h) =
+    local RbdDetailsPanel(title, description, formatY1, expr1, expr2, x, y, w, h) =
       $.graphPanelSchema({},
                          title,
-                         '',
+                         description,
                          'null as zero',
                          false,
                          formatY1,
@@ -83,6 +93,7 @@ local u = import 'utils.libsonnet';
     .addPanels([
       RbdDetailsPanel(
         'IOPS',
+        info_rbd_stats,
         'iops',
         'rate(ceph_rbd_write_ops{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval])' % $.matchers()
         ,
@@ -94,6 +105,7 @@ local u = import 'utils.libsonnet';
       ),
       RbdDetailsPanel(
         'Throughput',
+        info_rbd_stats,
         'Bps',
         'rate(ceph_rbd_write_bytes{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval])' % $.matchers(),
         'rate(ceph_rbd_read_bytes{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval])' % $.matchers(),
@@ -104,6 +116,7 @@ local u = import 'utils.libsonnet';
       ),
       RbdDetailsPanel(
         'Average Latency',
+        info_rbd_stats,
         'ns',
         |||
           rate(ceph_rbd_write_latency_sum{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval]) /
@@ -121,6 +134,7 @@ local u = import 'utils.libsonnet';
     ]),
   'rbd-overview.json':
     local RbdOverviewPanel(title,
+                           description,
                            formatY1,
                            expr1,
                            expr2,
@@ -132,7 +146,7 @@ local u = import 'utils.libsonnet';
                            h) =
       $.graphPanelSchema({},
                          title,
-                         '',
+                         description,
                          'null as zero',
                          false,
                          formatY1,
@@ -196,6 +210,7 @@ local u = import 'utils.libsonnet';
     .addPanels([
       RbdOverviewPanel(
         'IOPS',
+        info_rbd_stats,
         'short',
         'round(sum(rate(ceph_rbd_write_ops{%(matchers)s}[$__rate_interval])))' % $.matchers(),
         'round(sum(rate(ceph_rbd_read_ops{%(matchers)s}[$__rate_interval])))' % $.matchers(),
@@ -208,6 +223,7 @@ local u = import 'utils.libsonnet';
       ),
       RbdOverviewPanel(
         'Throughput',
+        info_rbd_stats,
         'Bps',
         'round(sum(rate(ceph_rbd_write_bytes{%(matchers)s}[$__rate_interval])))' % $.matchers(),
         'round(sum(rate(ceph_rbd_read_bytes{%(matchers)s}[$__rate_interval])))' % $.matchers(),
@@ -220,6 +236,7 @@ local u = import 'utils.libsonnet';
       ),
       RbdOverviewPanel(
         'Average Latency',
+        info_rbd_stats,
         'ns',
         |||
           round(
@@ -242,7 +259,7 @@ local u = import 'utils.libsonnet';
       ),
       $.addTableSchema(
         '$datasource',
-        '',
+        info_rbd_stats,
         { col: 3, desc: true },
         [
           $.overviewStyle('Pool', 'pool', 'string', 'short'),
@@ -273,7 +290,7 @@ local u = import 'utils.libsonnet';
       ) + { gridPos: { x: 0, y: 7, w: 8, h: 7 } },
       $.addTableSchema(
         '$datasource',
-        '',
+        info_rbd_stats,
         { col: 3, desc: true },
         [
           $.overviewStyle('Pool', 'pool', 'string', 'short'),
@@ -304,7 +321,7 @@ local u = import 'utils.libsonnet';
       ) + { gridPos: { x: 8, y: 7, w: 8, h: 7 } },
       $.addTableSchema(
         '$datasource',
-        '',
+        info_rbd_stats,
         { col: 3, desc: true },
         [
           $.overviewStyle('Pool', 'pool', 'string', 'short'),
index f64de312af52872229ac49cde74fee84a0737a84..2d5d4ecac4a527083aa4c4996dafe5a01dcd2ed1 100644 (file)
@@ -43,7 +43,7 @@
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
index 86b354a6089c25fb6cd7f29430f15db6bf6b55c3..c367bd16fa38113d4baabaf85cdbb9605bf735e3 100644 (file)
@@ -55,7 +55,7 @@
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
          "dashLength": 10,
          "dashes": false,
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "fill": 1,
          "fillGradient": 0,
          "gridPos": {
       {
          "columns": [ ],
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "gridPos": {
             "h": 7,
             "w": 8,
       {
          "columns": [ ],
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "gridPos": {
             "h": 7,
             "w": 8,
       {
          "columns": [ ],
          "datasource": "$datasource",
-         "description": "",
+         "description": "RBD per-image IO statistics are disabled by default.\n\nPlease refer to https://docs.ceph.com/en/latest/mgr/prometheus/#rbd-io-statistics for information about how to enable those optionally.",
          "gridPos": {
             "h": 7,
             "w": 8,