From a65ca9e8725bc3f93152732e3fcb07900de4b034 Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Wed, 19 Feb 2025 12:22:51 +0000
Subject: [PATCH] Include xvda devices in disk matching regex

These are associated with xfs filesystems.
---
 .../templates/grafana/dashboards/host.json           | 12 ++++++------
 .../templates/rules/rules_disk.conf.yml              |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/roles/float-infra-prometheus/templates/grafana/dashboards/host.json b/roles/float-infra-prometheus/templates/grafana/dashboards/host.json
index e73a59cc..d3d4778b 100644
--- a/roles/float-infra-prometheus/templates/grafana/dashboards/host.json
+++ b/roles/float-infra-prometheus/templates/grafana/dashboards/host.json
@@ -1068,7 +1068,7 @@
             "type": "prometheus",
             "uid": "P49960DE5880E8C68"
           },
-          "expr": "irate(node_disk_reads_completed_total{host=~\"$server.*\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
+          "expr": "irate(node_disk_reads_completed_total{host=~\"$server.*\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
           "format": "time_series",
           "hide": true,
           "intervalFactor": 4,
@@ -1082,7 +1082,7 @@
             "type": "prometheus",
             "uid": "P49960DE5880E8C68"
           },
-          "expr": "irate(node_disk_writes_completed_total{host=~\"$server.*\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
+          "expr": "irate(node_disk_writes_completed_total{host=~\"$server.*\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
           "format": "time_series",
           "hide": true,
           "intervalFactor": 4,
@@ -1096,7 +1096,7 @@
             "type": "prometheus",
             "uid": "P49960DE5880E8C68"
           },
-          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
+          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
           "format": "time_series",
           "hide": true,
           "intervalFactor": 4,
@@ -1110,7 +1110,7 @@
             "type": "prometheus",
             "uid": "P49960DE5880E8C68"
           },
-          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
+          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
           "format": "time_series",
           "intervalFactor": 2,
           "legendFormat": "{{device}}",
@@ -1218,7 +1218,7 @@
             "type": "prometheus",
             "uid": "P49960DE5880E8C68"
           },
-          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"([vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
+          "expr": "irate(node_disk_io_time_seconds_total{host=~\"$server\",device=~\"(x?[vs]d[a-z]+|nvme.+)\"}[$__rate_interval])",
           "format": "time_series",
           "hide": true,
           "intervalFactor": 4,
@@ -2229,4 +2229,4 @@
   "uid": "W8eE_Qgik",
   "version": 13,
   "weekStart": ""
-}
\ No newline at end of file
+}
diff --git a/roles/float-infra-prometheus/templates/rules/rules_disk.conf.yml b/roles/float-infra-prometheus/templates/rules/rules_disk.conf.yml
index d78ffed5..e70472b5 100644
--- a/roles/float-infra-prometheus/templates/rules/rules_disk.conf.yml
+++ b/roles/float-infra-prometheus/templates/rules/rules_disk.conf.yml
@@ -2,9 +2,9 @@ groups:
 - name: roles/float-infra-prometheus/templates/rules/rules_disk.conf
   rules:
   - record: instance:node_disk_writes_completed_total:irate1m
-    expr: sum(irate(node_disk_writes_completed_total{device=~"([vs]d|nvme).*"}[1m])) WITHOUT (device)
+    expr: sum(irate(node_disk_writes_completed_total{device=~"(x?[vs]d|nvme).*"}[1m])) WITHOUT (device)
   - record: instance:node_disk_reads_completed_total:irate1m
-    expr: sum(irate(node_disk_reads_completed_total{device=~"([vs]d|nvme).*"}[1m])) WITHOUT (device)
+    expr: sum(irate(node_disk_reads_completed_total{device=~"(x?[vs]d|nvme).*"}[1m])) WITHOUT (device)
   - record: volume:used_space:ratio
     expr: 1 - (node_filesystem_avail_bytes / node_filesystem_size_bytes)
 
-- 
GitLab