]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Adding RGW Bucket Notification Dashboard for Grafana
authorAnushruti Sharma <anushruti10116@gmail.com>
Mon, 2 Jun 2025 12:25:08 +0000 (17:55 +0530)
committerAashish Sharma <Aashish.Sharma1@ibm.com>
Thu, 4 Sep 2025 08:02:09 +0000 (13:32 +0530)
This commit add the panel for bucket notification dashboard.

Signed-off-by: Anushruti Sharma <anushruti10116@gmail.com>
(cherry picked from commit 42b307b9edccdf16047421cdced71a608f3a502a)

monitoring/ceph-mixin/dashboards/rgw.libsonnet
monitoring/ceph-mixin/dashboards_out/radosgw-overview.json

index 25b3a7a4529936238da144a1468bd336cdc4c31b..0b6c10e988cd24a4187868150d8a73b2c6a830f8 100644 (file)
@@ -310,6 +310,18 @@ local g = import 'grafonnet/grafana.libsonnet';
         ''
       )
     )
+    .addTemplate(
+      $.addTemplateSchema(
+        'topic',
+        '$datasource',
+        'label_values(ceph_rgw_topic_persistent_topic_len,topic)',
+        1,
+        true,
+        1,
+        'Topic',
+        ''
+      )
+    )
     .addPanels([
       $.addRowSchema(false,
                      true,
@@ -701,6 +713,44 @@ local g = import 'grafonnet/grafana.libsonnet';
           transform: 'negative-Y',
         },
       ]),
+      $.addRowSchema(false,
+                     true,
+                     'RGW Overview - Bucket Notification') +
+      {
+        gridPos: { x: 0, y: 27, w: 24, h: 1 },
+      },
+       RgwOverviewPanel(
+        'Persistent Topic Length',
+        '',
+        '',
+        'short',
+        |||
+          (
+           ceph_rgw_topic_persistent_topic_len{topic=~"$topic"}
+          )
+        |||,
+        '{{topic}}',
+        0,
+        28,
+        24,
+        7
+      ),
+       RgwOverviewPanel(
+        'Persistent Topic Size',
+        '',
+        'bytes',
+        'short',
+        |||
+          (
+           ceph_rgw_topic_persistent_topic_size{topic=~"$topic"}
+          )
+        |||,
+        '{{topic}}',
+        0,
+        35,
+        24,
+        7
+      ),
     ]),
   'radosgw-detail.json':
     local RgwDetailsPanel(aliasColors,
index 8f357d7f4f846d8c3f7818f8b1f0a733f49dcaf6..768d7b42225be00c7854a6beacae1dc0f18aa746 100644 (file)
                "show": true
             }
          ]
+      },
+      {
+         "collapse": false,
+         "collapsed": false,
+         "gridPos": {
+            "h": 1,
+            "w": 24,
+            "x": 0,
+            "y": 27
+         },
+         "id": 14,
+         "panels": [ ],
+         "repeat": null,
+         "repeatIteration": null,
+         "repeatRowId": null,
+         "showTitle": true,
+         "title": "RGW Overview - Bucket Notification",
+         "titleSize": "h6",
+         "type": "row"
+      },
+      {
+         "aliasColors": { },
+         "bars": false,
+         "dashLength": 10,
+         "dashes": false,
+         "datasource": "$datasource",
+         "description": "",
+         "fieldConfig": {
+            "defaults": {
+               "custom": {
+                  "fillOpacity": 8,
+                  "showPoints": "never"
+               },
+               "unit": ""
+            }
+         },
+         "fill": 1,
+         "fillGradient": 0,
+         "gridPos": {
+            "h": 7,
+            "w": 24,
+            "x": 0,
+            "y": 28
+         },
+         "id": 15,
+         "legend": {
+            "alignAsTable": false,
+            "avg": false,
+            "current": false,
+            "max": false,
+            "min": false,
+            "rightSide": false,
+            "show": true,
+            "sideWidth": null,
+            "total": false,
+            "values": false
+         },
+         "lines": true,
+         "linewidth": 1,
+         "links": [ ],
+         "nullPointMode": "null as zero",
+         "percentage": false,
+         "pointradius": 5,
+         "points": false,
+         "renderer": "flot",
+         "repeat": null,
+         "seriesOverrides": [ ],
+         "spaceLength": 10,
+         "stack": false,
+         "steppedLine": false,
+         "targets": [
+            {
+               "expr": "(\n ceph_rgw_topic_persistent_topic_len{topic=~\"$topic\"}\n)\n",
+               "format": "time_series",
+               "intervalFactor": 1,
+               "legendFormat": "{{topic}}",
+               "refId": "A"
+            }
+         ],
+         "thresholds": [ ],
+         "timeFrom": null,
+         "timeShift": null,
+         "title": "Persistent Topic Length",
+         "tooltip": {
+            "shared": true,
+            "sort": 0,
+            "value_type": "individual"
+         },
+         "type": "timeseries",
+         "xaxis": {
+            "buckets": null,
+            "mode": "time",
+            "name": null,
+            "show": true,
+            "values": [ ]
+         },
+         "yaxes": [
+            {
+               "format": "",
+               "label": null,
+               "logBase": 1,
+               "max": null,
+               "min": 0,
+               "show": true
+            },
+            {
+               "format": "short",
+               "label": null,
+               "logBase": 1,
+               "max": null,
+               "min": 0,
+               "show": true
+            }
+         ]
+      },
+      {
+         "aliasColors": { },
+         "bars": false,
+         "dashLength": 10,
+         "dashes": false,
+         "datasource": "$datasource",
+         "description": "",
+         "fieldConfig": {
+            "defaults": {
+               "custom": {
+                  "fillOpacity": 8,
+                  "showPoints": "never"
+               },
+               "unit": "bytes"
+            }
+         },
+         "fill": 1,
+         "fillGradient": 0,
+         "gridPos": {
+            "h": 7,
+            "w": 24,
+            "x": 0,
+            "y": 35
+         },
+         "id": 16,
+         "legend": {
+            "alignAsTable": false,
+            "avg": false,
+            "current": false,
+            "max": false,
+            "min": false,
+            "rightSide": false,
+            "show": true,
+            "sideWidth": null,
+            "total": false,
+            "values": false
+         },
+         "lines": true,
+         "linewidth": 1,
+         "links": [ ],
+         "nullPointMode": "null as zero",
+         "percentage": false,
+         "pointradius": 5,
+         "points": false,
+         "renderer": "flot",
+         "repeat": null,
+         "seriesOverrides": [ ],
+         "spaceLength": 10,
+         "stack": false,
+         "steppedLine": false,
+         "targets": [
+            {
+               "expr": "(\n ceph_rgw_topic_persistent_topic_size{topic=~\"$topic\"}\n)\n",
+               "format": "time_series",
+               "intervalFactor": 1,
+               "legendFormat": "{{topic}}",
+               "refId": "A"
+            }
+         ],
+         "thresholds": [ ],
+         "timeFrom": null,
+         "timeShift": null,
+         "title": "Persistent Topic Size",
+         "tooltip": {
+            "shared": true,
+            "sort": 0,
+            "value_type": "individual"
+         },
+         "type": "timeseries",
+         "xaxis": {
+            "buckets": null,
+            "mode": "time",
+            "name": null,
+            "show": true,
+            "values": [ ]
+         },
+         "yaxes": [
+            {
+               "format": "bytes",
+               "label": null,
+               "logBase": 1,
+               "max": null,
+               "min": 0,
+               "show": true
+            },
+            {
+               "format": "short",
+               "label": null,
+               "logBase": 1,
+               "max": null,
+               "min": 0,
+               "show": true
+            }
+         ]
       }
    ],
    "refresh": "30s",
             "tagsQuery": "",
             "type": "query",
             "useTags": false
+         },
+         {
+            "allValue": null,
+            "current": { },
+            "datasource": "$datasource",
+            "hide": 0,
+            "includeAll": true,
+            "label": "Topic",
+            "multi": false,
+            "name": "topic",
+            "options": [ ],
+            "query": "label_values(ceph_rgw_topic_persistent_topic_len,topic)",
+            "refresh": 1,
+            "regex": "",
+            "sort": 1,
+            "tagValuesQuery": "",
+            "tags": [ ],
+            "tagsQuery": "",
+            "type": "query",
+            "useTags": false
          }
       ]
    },