default.nix (809B) - Raw
1 { 2 config, 3 lib, 4 myData, 5 ... 6 }: 7 let 8 cfg = config.mj.services.node_exporter; 9 in 10 { 11 options.mj.services.node_exporter = with lib.types; { 12 enable = lib.mkEnableOption "Enable node_exporter"; 13 extraSubnets = lib.mkOption { 14 type = listOf str; 15 default = [ ]; 16 }; 17 }; 18 19 config = lib.mkIf cfg.enable { 20 services.prometheus.exporters.node = { 21 enable = true; 22 enabledCollectors = [ 23 "systemd" 24 "processes" 25 ]; 26 port = myData.ports.exporters.node; 27 user = "node_exporter"; 28 group = "node_exporter"; 29 }; 30 31 users.users.node_exporter = { 32 isSystemUser = true; 33 group = "node_exporter"; 34 uid = myData.uidgid.node_exporter; 35 }; 36 37 users.groups.node_exporter = { 38 gid = myData.uidgid.node_exporter; 39 }; 40 41 }; 42 }