X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fmonitoring%2Fobjects_monitoring-1.nix;h=2cba58e03179748048be801cc49865c3873f1943;hb=46a61a1b237b5b676cf0821bf65932d86cfe67b5;hp=3200d5c3f9fa61153100be4591b5b9d07cacbdfa;hpb=ef0a9217fba817d7fb71ccd4cca65919dd89ebec;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/monitoring/objects_monitoring-1.nix b/modules/private/monitoring/objects_monitoring-1.nix index 3200d5c..2cba58e 100644 --- a/modules/private/monitoring/objects_monitoring-1.nix +++ b/modules/private/monitoring/objects_monitoring-1.nix @@ -1,4 +1,23 @@ -{ config, pkgs, hostFQDN, emailCheck, ... }: +{ config, pkgs, nodes, hostFQDN, emailCheck, ... }: +let + to_eriomem_age_dependency = name: { + dependent_host_name = "eldiron.immae.eu"; + host_name = "eldiron.immae.eu"; + dependent_service_description = "Eriomem backup for ${name} is not too old"; + service_description = "Eriomem backup is up and not full"; + execution_failure_criteria = "u"; + notification_failure_criteria = "u"; + }; + to_eriomem_age = name: { + service_description = "Eriomem backup for ${name} is not too old"; + host_name = "eldiron.immae.eu"; + use = "external-service"; + check_command = ["check_eriomem_age" name]; + + check_interval = "120"; + notification_interval = "1440"; + }; +in { host = { # Dummy host for testing @@ -79,6 +98,17 @@ _webstatus_url = "imap.immae.eu"; } + # Third party services + { + service_description = "OVH account has enough sms"; + host_name = "eldiron.immae.eu"; + use = "external-service"; + check_command = "check_ovh_sms"; + + check_interval = "120"; + notification_interval = "1440"; + } + # Backup services { service_description = "Eriomem backup is up and not full"; @@ -87,7 +117,7 @@ check_command = "check_eriomem"; check_interval = "120"; - notification_interval = "120"; + notification_interval = "1440"; servicegroups = "webstatus-backup"; } @@ -407,7 +437,7 @@ service_description = "roundcube website is running on mail.immae.eu"; host_name = "eldiron.immae.eu"; use = "external-web-service"; - check_command = ["check_https_code" "mail.immae.eu" "/roundcube/" "401" "Roundcube"]; + check_command = ["check_https" "mail.immae.eu" "/roundcube/" "<title>Roundcube"]; servicegroups = "webstatus-webapps,webstatus-email"; _webstatus_name = "Roundcube"; @@ -540,7 +570,7 @@ service_description = "Telio website is running on realistesmedia.fr"; host_name = "eldiron.immae.eu"; use = "external-web-service"; - check_command = ["check_https" "realistesmedia.fr" "/" "<title>Réal'istes"]; + check_command = ["check_https" "realistesmedia.fr" "/" "doctype html"]; contact_groups = "telio-tortay"; } @@ -632,24 +662,6 @@ _webstatus_url = "https://www.sandetludo.com/"; } - { - service_description = "Maison bbc accepts add requests on http"; - host_name = "eldiron.immae.eu"; - use = "external-web-service"; - check_command = [ "check_http" "maison.bbc.bouya.org" "/add.php" "^$"]; - } - - { - service_description = "Maison bbc has up to date data"; - host_name = "eldiron.immae.eu"; - use = "generic-service"; - contact_groups = "maison-bbc"; - notification_interval = "1440"; - check_command = "check_maison_bbc"; - flap_detection_enabled = "0"; - max_check_attempts = "1"; - } - # SSL { service_description = "ldap SSL is up to date"; @@ -661,20 +673,20 @@ _webstatus_name = "LDAP"; _webstatus_url = "ldap.immae.eu"; } - ]; + ] ++ map to_eriomem_age (builtins.attrNames nodes.eldiron.config.services.duplyBackup.profiles); contact = { telio-tortay = config.myEnv.monitoring.contacts.telio-tortay // { use = "generic-contact"; contactgroups = "telio-tortay"; }; - papa = config.myEnv.monitoring.contacts.papa // { + thibault = config.myEnv.monitoring.contacts.thibault // { use = "generic-contact"; - contactgroups = "maison-bbc"; - service_notification_commands = "notify-maison-bbc-by-email"; + contactgroups = "tiboqorl"; }; }; contactgroup = { - maison-bbc = { alias = "Maison BBC"; }; telio-tortay = { alias = "Telio Tortay"; members = "immae"; }; + tiboqorl = { alias = "Tiboqorl"; members = "immae"; }; }; + servicedependency = map to_eriomem_age_dependency (builtins.attrNames nodes.eldiron.config.services.duplyBackup.profiles); }