From 68024930f7e9cf1d63ba8b10f6029a5639453c31 Mon Sep 17 00:00:00 2001 From: ibizaman Date: Sun, 2 Nov 2025 11:42:10 +0100 Subject: [PATCH] monitoring: add backup scheduling --- flake.nix | 11 +++++++++++ modules/blocks/monitoring.nix | 16 ++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index c4d3ede..83e18d2 100644 --- a/flake.nix +++ b/flake.nix @@ -74,6 +74,17 @@ (prevAttrs: { inherit (pkgs) lib; }); + prometheus-systemd-exporter = prev.prometheus-systemd-exporter.overrideAttrs { + src = pkgs.fetchFromGitHub { + owner = "ibizaman"; + repo = prev.prometheus-systemd-exporter.pname; + # rev = "v${prev.prometheus-systemd-exporter.version}"; + rev = "next_timer"; + sha256 = "sha256-jzkh/616tsJbNxFtZ0xbdBQc16TMIYr9QOkPaeQw8xA="; + }; + + vendorHash = "sha256-4hsQ1417jLNOAqGkfCkzrmEtYR4YLLW2j0CiJtPg6GI="; + }; }) ]; }; diff --git a/modules/blocks/monitoring.nix b/modules/blocks/monitoring.nix index 8ae8ca1..8909fe5 100644 --- a/modules/blocks/monitoring.nix +++ b/modules/blocks/monitoring.nix @@ -293,7 +293,6 @@ in alerting.rules.settings = let rules = builtins.fromJSON (builtins.readFile ./monitoring/rules.json); - ruleIds = map (r: r.uid) rules; in { apiVersion = 1; @@ -518,6 +517,15 @@ in } ]; } + { + job_name = "systemd"; + static_configs = [ + { + targets = [ "127.0.0.1:${toString config.services.prometheus.exporters.systemd.port}" ]; + labels = commonLabels; + } + ]; + } ] ++ (lib.lists.optional config.services.nginx.enable { job_name = "nginx"; @@ -593,7 +601,6 @@ in "drm" "ethtool" "logind" - "systemd" "wifi" ]; port = 9112; @@ -625,6 +632,11 @@ in port = 9211; listenAddress = "127.0.0.1"; }; + services.prometheus.exporters.systemd = { + enable = true; + port = 9116; + listenAddress = "127.0.0.1"; + }; services.nginx.statusPage = lib.mkDefault config.services.nginx.enable; services.netdata = { enable = true;