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,
.addPanels([
RbdDetailsPanel(
'IOPS',
+ info_rbd_stats,
'iops',
'rate(ceph_rbd_write_ops{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval])' % $.matchers()
,
),
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(),
),
RbdDetailsPanel(
'Average Latency',
+ info_rbd_stats,
'ns',
|||
rate(ceph_rbd_write_latency_sum{%(matchers)s, pool="$pool", image="$image"}[$__rate_interval]) /
]),
'rbd-overview.json':
local RbdOverviewPanel(title,
+ description,
formatY1,
expr1,
expr2,
h) =
$.graphPanelSchema({},
title,
- '',
+ description,
'null as zero',
false,
formatY1,
.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(),
),
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(),
),
RbdOverviewPanel(
'Average Latency',
+ info_rbd_stats,
'ns',
|||
round(
),
$.addTableSchema(
'$datasource',
- '',
+ info_rbd_stats,
{ col: 3, desc: true },
[
$.overviewStyle('Pool', 'pool', 'string', 'short'),
) + { gridPos: { x: 0, y: 7, w: 8, h: 7 } },
$.addTableSchema(
'$datasource',
- '',
+ info_rbd_stats,
{ col: 3, desc: true },
[
$.overviewStyle('Pool', 'pool', 'string', 'short'),
) + { gridPos: { x: 8, y: 7, w: 8, h: 7 } },
$.addTableSchema(
'$datasource',
- '',
+ info_rbd_stats,
{ col: 3, desc: true },
[
$.overviewStyle('Pool', 'pool', 'string', 'short'),
"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": {
"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,