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;