blob: 2c15dd6d072326061c01e694c322dc6d99aafb7a (
plain) (
tree)
|
|
{ lib, hostFQDN, emailCheck, ... }:
let
defaultPassiveInfo = {
filter = lib.attrsets.filterAttrs
(k: v: builtins.elem k ["service_description"] || builtins.substring 0 1 k == "_");
use = "external-passive-service";
freshness_threshold = "450";
retry_interval = "1";
servicegroups = "webstatus-resources";
host_name = hostFQDN;
};
in
{
service = [
{
passiveInfo = defaultPassiveInfo // { servicegroups = "webstatus-databases"; };
service_description = "Postgresql replication for backup-2 is up to date";
use = "local-service";
check_command = ["check_postgresql_replication" "backup-2" "/run/postgresql" "5432"];
}
{
passiveInfo = defaultPassiveInfo // { servicegroups = "webstatus-resources"; };
service_description = "No ZFS pool is degraded";
use = "local-service";
check_command = ["check_zfs"];
}
{
passiveInfo = defaultPassiveInfo // { servicegroups = "webstatus-email"; };
service_description = "mailq is empty";
use = "local-service";
check_command = ["check_mailq"];
}
(emailCheck "eldiron" hostFQDN // {
passiveInfo = defaultPassiveInfo // { servicegroups = "webstatus-email"; freshness_threshold = "1350"; };
})
];
}
|