-{ 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
+{ config, pkgs, nodes, hostFQDN, emailCheck, lib, ... }:
{
+ activatedPlugins = [ "dns" "ftp" "git" "http" "imap" "ovh" "tcp" ];
host = {
# Dummy host for testing
# "dummy-host" = {
# alias = "dummy.host";
+ # check_interval = "0.3";
+ # max_check_attempts = "1";
+ # flap_detection_enabled = "0";
+ # notification_interval = "0.1";
# address = "dummy.host";
# use = "linux-server";
# check_command = "check_ok";
}
# Backup services
+ # {
+ # service_description = "eriomem backup is up and not full";
+ # host_name = "eldiron.immae.eu";
+ # use = "external-service";
+ # check_command = "check_backup_eriomem";
+
+ # check_interval = "120";
+ # notification_interval = "1440";
+
+ # servicegroups = "webstatus-backup";
+ # }
{
- service_description = "Eriomem backup is up and not full";
+ service_description = "ovh backup is up and not full";
host_name = "eldiron.immae.eu";
use = "external-service";
- check_command = "check_eriomem";
+ check_command = "check_ok";
check_interval = "120";
notification_interval = "1440";
_webstatus_url = "https://cloud.immae.eu";
}
+ {
+ service_description = "nextcloud website is running on nextcloud.4c.salle-s.org";
+ host_name = "quatresaisons.immae.eu";
+ use = "external-web-service";
+ check_command = ["check_https" "nextcloud.4c.salle-s.org" "/" "a safe home for all your data"];
+
+ servicegroups = "webstatus-webapps";
+ _webstatus_name = "Nextcloud";
+ _webstatus_url = "https://nextcloud.4c.salle-s.org";
+ }
+
{
service_description = "davical website is running on dav.immae.eu";
host_name = "eldiron.immae.eu";
service_description = "gitweb website is running on git.immae.eu";
host_name = "eldiron.immae.eu";
use = "external-web-service";
- check_command = ["check_https" "git.immae.eu" "/" "git web interface"];
+ check_command = ["check_https" "git.immae.eu" "/cgit" "<title>Immae’s git"];
servicegroups = "webstatus-webapps";
_webstatus_name = "Git";
_webstatus_name = "LDAP";
_webstatus_url = "ldap.immae.eu";
}
- ] ++ map to_eriomem_age (builtins.attrNames nodes.eldiron.config.services.duplyBackup.profiles);
+
+ # Tiboqorl
+ {
+ service_description = "Origny page is running on ipv4";
+ host_name = "tiboqorl.fr";
+ use = "external-web-service";
+ contact_groups = "tiboqorl";
+ check_command = [ "check_https_4" "origny.tiboqorl.fr" "/" "<title>Home Assistant" ];
+ _webstatus_namespace = "tiboqorl";
+ }
+ {
+ service_description = "Origny page is running on ipv6";
+ host_name = "tiboqorl.fr";
+ use = "external-web-service";
+ contact_groups = "tiboqorl";
+ check_command = [ "check_https_6" "origny.tiboqorl.fr" "/" "<title>Home Assistant" ];
+ _webstatus_namespace = "tiboqorl";
+ }
+ ];
contact = {
telio-tortay = config.myEnv.monitoring.contacts.telio-tortay // {
use = "generic-contact";
contactgroups = "telio-tortay";
};
+ thibault = config.myEnv.monitoring.contacts.thibault // {
+ use = "generic-contact";
+ contactgroups = "tiboqorl";
+ };
};
contactgroup = {
telio-tortay = { alias = "Telio Tortay"; members = "immae"; };
+ tiboqorl = { alias = "Tiboqorl"; members = ""; };
};
- servicedependency = map to_eriomem_age_dependency (builtins.attrNames nodes.eldiron.config.services.duplyBackup.profiles);
}