From f62e0bead262cd71ad352e867c910229dd13db09 Mon Sep 17 00:00:00 2001 From: Florian Sesser <florian@private.storage> Date: Thu, 24 Feb 2022 10:37:18 +0000 Subject: [PATCH] Consistently "exporters" namespace in private-storage monitoring config namespace ... and fix that option the other commit introduced --- morph/grid/production/grid.nix | 2 +- morph/lib/storage.nix | 2 +- nixos/modules/monitoring/exporters/megacli2prom.nix | 4 ++-- nixos/modules/monitoring/exporters/node.nix | 7 +++++-- nixos/modules/monitoring/exporters/tahoe.nix | 6 +++--- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/morph/grid/production/grid.nix b/morph/grid/production/grid.nix index 3570dfef..4f68b5e8 100644 --- a/morph/grid/production/grid.nix +++ b/morph/grid/production/grid.nix @@ -101,7 +101,7 @@ let # Enable statistics gathering for MegaRAID cards. # TODO would be nice to enable only on machines that have such a device. - services.private-storage.monitoring.megacli2prom.enable = true; + services.private-storage.monitoring.exporters.megacli2prom.enable = true; }; }; diff --git a/morph/lib/storage.nix b/morph/lib/storage.nix index 71e3c223..9424784d 100644 --- a/morph/lib/storage.nix +++ b/morph/lib/storage.nix @@ -67,7 +67,7 @@ in { }; }; - services.private-storage.monitoring.tahoe.enable = true; + services.private-storage.monitoring.exporters.tahoe.enable = true; # Turn on the Private Storage (Tahoe-LAFS) service. services.private-storage = { diff --git a/nixos/modules/monitoring/exporters/megacli2prom.nix b/nixos/modules/monitoring/exporters/megacli2prom.nix index c1f10aef..c27219ef 100644 --- a/nixos/modules/monitoring/exporters/megacli2prom.nix +++ b/nixos/modules/monitoring/exporters/megacli2prom.nix @@ -12,10 +12,10 @@ { config, options, lib, ourpkgs, pkgs, ... }: let - cfg = config.services.private-storage.monitoring.megacli2prom; + cfg = config.services.private-storage.monitoring.exporters.megacli2prom; in { - options.services.private-storage.monitoring.megacli2prom = { + options.services.private-storage.monitoring.exporters.megacli2prom = { enable = lib.mkEnableOption "MegaCli2Prom metrics gathering service"; outFile = lib.mkOption { type = lib.types.str; diff --git a/nixos/modules/monitoring/exporters/node.nix b/nixos/modules/monitoring/exporters/node.nix index aa319397..6a84a31c 100644 --- a/nixos/modules/monitoring/exporters/node.nix +++ b/nixos/modules/monitoring/exporters/node.nix @@ -6,20 +6,23 @@ # monitoring system # See https://nixos.org/manual/nixos/stable/#module-services-prometheus-exporters -{ config, lib, pkgs, ... }: +{ config, lib, pkgs, options, ... }: with lib; let + cfg = config.services.private-storage.monitoring.exporters.node; mountsFileSystemType = fsType: {} != filterAttrs (n: v: v.fsType == fsType) config.fileSystems; in { - config.services.prometheus.exporters.node = { + options.services.private-storage.monitoring.exporters.node = { textfiles-directory = lib.mkOption { type = lib.types.str; description = "Directory used by the textfiles collector."; default = "/run/prometheus-node-exporter"; }; + }; + config.services.prometheus.exporters.node = { enable = true; openFirewall = true; firewallFilter = "-i monitoringvpn -p tcp -m tcp --dport 9100"; diff --git a/nixos/modules/monitoring/exporters/tahoe.nix b/nixos/modules/monitoring/exporters/tahoe.nix index 7d4c5dea..087e6532 100644 --- a/nixos/modules/monitoring/exporters/tahoe.nix +++ b/nixos/modules/monitoring/exporters/tahoe.nix @@ -10,11 +10,11 @@ { config, options, lib, pkgs, ... }: let - cfg = config.services.private-storage.monitoring.tahoe; - inherit (config.services.private-storage.monitoring.node) textfiles-directory; + cfg = config.services.private-storage.monitoring.exporters.tahoe; + inherit (config.services.private-storage.monitoring.exporters.node) textfiles-directory; in { - options.services.private-storage.monitoring.tahoe = { + options.services.private-storage.monitoring.exporters.tahoe = { enable = lib.mkEnableOption "Tahoe OpenMetrics collecting service"; scrapeEndpoint = lib.mkOption { type = lib.types.str; -- GitLab