]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/monitoring/to_objects.nix
Add monitoring for dilion and quatresaisons
[perso/Immae/Config/Nix.git] / modules / private / monitoring / to_objects.nix
index 5ad76e042b1074c553e0cbe29d0ae1d3a3013525..12721d2ff6015a5bc08e51c687c494f9befcb530 100644 (file)
@@ -17,7 +17,7 @@ let
     define service {
     ${builtins.concatStringsSep "\n" (mapAttrsToList (k: v:
       "  ${pad 30 k}   ${toStr k v}"
-    ) service)}
+    ) (filterAttrs (k: v: ! builtins.elem k ["passiveInfo" "filter"]) service))}
     }
     '';
   toServices = services: builtins.concatStringsSep "\n" (map toService services);
@@ -38,7 +38,15 @@ let
     ) v)}
     }
     '';
+  toOtherNoName = keyname: v: ''
+    define ${keyname} {
+    ${builtins.concatStringsSep "\n" (mapAttrsToList (kk: vv:
+      "  ${pad 30 kk}   ${vv}"
+    ) v)}
+    }
+    '';
   toOthers = keyname: a: builtins.concatStringsSep "\n" (mapAttrsToList (toOther keyname) a);
+  toOthersArray = keyname: a: builtins.concatStringsSep "\n" (map (toOtherNoName keyname) a);
 
   toTemplate = keyname: k: v: ''
     define ${keyname} {
@@ -59,8 +67,10 @@ let
       then toCommands v
     else if keyname == "templates"
       then toTemplates v
-    else if builtins.elem keyname ["host" "contactgroup" "contact" "timeperiod"]
+    else if builtins.elem keyname ["hostgroup" "host" "contactgroup" "contact" "timeperiod" "servicegroup"]
       then toOthers keyname v
+    else if builtins.elem keyname ["servicedependency"]
+      then toOthersArray keyname v
     else "";
   toObjects = v: builtins.concatStringsSep "\n" (mapAttrsToList toObjects' v);
 in