fix(monitoring): node exporter collectors

This commit is contained in:
arcnmx 2024-06-22 17:51:02 -07:00
parent ab9e4b52d4
commit c31fcdcdbd
2 changed files with 56 additions and 22 deletions

View file

@ -8,6 +8,7 @@ let
}: let }: let
inherit (lib.options) mkOption mkEnableOption; inherit (lib.options) mkOption mkEnableOption;
inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault; inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault;
inherit (lib.lists) elem;
inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapOptionDefaults unmerged domain; inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapOptionDefaults unmerged domain;
inherit (nixosConfig.gensokyo-zone) access; inherit (nixosConfig.gensokyo-zone) access;
in { in {
@ -61,14 +62,17 @@ let
in { in {
enable = mkDefault true; enable = mkDefault true;
port = mkDefault 9091; port = mkDefault 9091;
extraFlags = [ "--collector.disable-defaults" ];
enabledCollectors = mkIf cfg.defaultCollectors (mkMerge [ enabledCollectors = mkIf cfg.defaultCollectors (mkMerge [
[ [
"systemd" "systemd"
"logind"
"arp" "arp"
"cpu" "cpu"
"entropy" "entropy"
"filesystem" "filesystem"
"netdev" "netdev"
"ethtool"
"sysctl" "sysctl"
"loadavg" "loadavg"
"meminfo" "meminfo"
@ -78,6 +82,12 @@ let
"uname" "uname"
"vmstat" "vmstat"
] ]
(mkIf nixosConfig.boot.supportedFilesystems.btrfs or false [
"btrfs"
])
(mkIf nixosConfig.boot.supportedFilesystems.xfs or false [
"xfs"
])
(mkIf nixosConfig.boot.supportedFilesystems.zfs or false [ (mkIf nixosConfig.boot.supportedFilesystems.zfs or false [
"zfs" "zfs"
]) ])
@ -91,6 +101,17 @@ let
"nvme" "nvme"
"hwmon" "hwmon"
]) ])
(mkIf (nixosConfig.services.xserver.enable && elem "amdgpu" nixosConfig.services.xserver.videoDrivers) [
"drm"
])
(mkIf (nixosConfig.networking.wireless.enable || nixosConfig.networking.wireless.iwd.enable || nixosConfig.networking.networkmanager.enable) [
"wifi"
])
(mkIf nixosConfig.powerManagement.enable [
"thermal_zone"
"powersupplyclass"
"rapl"
])
]); ]);
}; };
promtail = let promtail = let

View file

@ -5,7 +5,7 @@
}: let }: let
inherit (lib.modules) mkIf mkMerge; inherit (lib.modules) mkIf mkMerge;
inherit (lib.attrsets) attrValues; inherit (lib.attrsets) attrValues;
inherit (lib.lists) concatMap toList; inherit (lib.lists) concatMap toList elem;
allExporters = let allExporters = let
exporters = removeAttrs config.services.prometheus.exporters ["unifi-poller"]; exporters = removeAttrs config.services.prometheus.exporters ["unifi-poller"];
in in
@ -13,27 +13,38 @@
in { in {
config = { config = {
services.prometheus.exporters = { services.prometheus.exporters = {
node = mkMerge [ node = {
{
#enable = true;
port = 9091; port = 9091;
enabledCollectors = [ extraFlags = [ "--collector.disable-defaults" ];
enabledCollectors = mkMerge [
(mkIf config.boot.supportedFilesystems.xfs or false [
"xfs"
])
(mkIf config.boot.supportedFilesystems.zfs or false [
"zfs"
])
(mkIf config.boot.supportedFilesystems.nfs or config.boot.supportedFilesystems.nfs4 or false [
"nfs" "nfs"
]; ])
} (mkIf config.services.nfs.server.enable [
(mkIf config.services.nfs.server.enable {
enabledCollectors = [
"nfsd" "nfsd"
]; ])
}) (mkIf (!config.boot.isContainer) [
(mkIf (!config.boot.isContainer) {
enabledCollectors = [
"nvme" "nvme"
"hwmon" "hwmon"
]; "thermal_zone"
}) ])
{ (mkIf config.powerManagement.enable [
enabledCollectors = [ "powersupplyclass"
"rapl"
])
(mkIf (config.services.xserver.enable && elem "amdgpu" config.services.xserver.videoDrivers) [
"drm"
])
(mkIf (config.networking.wireless.enable || config.networking.wireless.iwd.enable || config.networking.networkmanager.enable) [
"wifi"
])
[
"arp" "arp"
"cpu" "cpu"
"cpufreq" "cpufreq"
@ -44,6 +55,9 @@ in {
"netdev" "netdev"
"sysctl" "sysctl"
"systemd" "systemd"
"ethtool"
"logind"
"cgroups"
"loadavg" "loadavg"
"meminfo" "meminfo"
"netstat" "netstat"
@ -52,11 +66,10 @@ in {
"time" "time"
"uname" "uname"
"vmstat" "vmstat"
"zfs" ]
];
}
]; ];
}; };
};
networking.firewall.interfaces.lan.allowedTCPPorts = networking.firewall.interfaces.lan.allowedTCPPorts =
map ( map (
exporter: exporter: