From 3862e4d88857738f593e06f6c8bddc64853a9a9f Mon Sep 17 00:00:00 2001
From: Tom Prince <tom.prince@private.storage>
Date: Fri, 7 Jan 2022 11:29:36 -0700
Subject: [PATCH] Use the qualified `.monitoringvpn` domains for collecting
 metrics.

Also strip that domain component from the labels collected.
---
 morph/lib/monitoring.nix                       | 2 +-
 nixos/modules/monitoring/server/prometheus.nix | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/morph/lib/monitoring.nix b/morph/lib/monitoring.nix
index 0cedcf64..64f26c92 100644
--- a/morph/lib/monitoring.nix
+++ b/morph/lib/monitoring.nix
@@ -24,7 +24,7 @@ let
   vpnClientIPs = lib.remove monitoringvpnIPv4 (map (node: node.vpnIPv4) monitoringHosts);
   # A list of VPN clients (IP addresses or hostnames) as strings indicating
   # which nodes to scrape "nodeExporter" metrics from.
-  nodeExporterTargets = map (node: node.name) monitoringHosts;
+  nodeExporterTargets = map (node: node.vpnHostName) monitoringHosts;
 in {
   imports = [
     ../../nixos/modules/monitoring/vpn/server.nix
diff --git a/nixos/modules/monitoring/server/prometheus.nix b/nixos/modules/monitoring/server/prometheus.nix
index 3bb00a5b..2a78dd3e 100644
--- a/nixos/modules/monitoring/server/prometheus.nix
+++ b/nixos/modules/monitoring/server/prometheus.nix
@@ -10,7 +10,7 @@ let
   cfg = config.services.private-storage.monitoring.prometheus;
   dropPortNumber = {
     source_labels = [ "__address__" ];
-    regex = "^(.*):\\d+$";
+    regex = "^(.*)(?:\\.monitoringvpn):\\d+$";
     target_label = "instance";
   };
 
-- 
GitLab