Update fortress gatus configuration

This commit is contained in:
Lauren Lagarde 2025-08-04 21:49:03 -05:00
parent 72d51d403a
commit f2c160acc8
3 changed files with 56 additions and 28 deletions

View file

@ -1,20 +1,41 @@
{ ... }: {
{ ... } @ args: {
sops.secrets."dotspace/gatus.env".mode = "0664";
# TODO: https://github.com/NixOS/nixpkgs/issues/415877
disabledModules = [ "services/monitoring/gatus.nix" ];
imports = [ "${args.inputs.nixpkgs-unstable}/nixos/modules/services/monitoring/gatus.nix" ];
services.gatus = {
enable = true;
environmentFile = "/run/secrets/dotspace/gatus.env";
settings = {
web.port = 18255;
alerting.discord.webhook-url = "\${GATUS_DISCORD_WEBHOOK}";
maintenance = {
start = "04:50";
duration = "30m";
timezone = "America/Chicago";
alerting = {
discord = {
webhook-url = "\${GATUS_DISCORD_WEBHOOK}";
default-alert = {
send-on-resolved = true;
description = "\${LAUREN_DISCORD_USERNAME}";
};
};
matrix = {
server-url = "https://matrix.mlaga97.space";
access-token = "\${GATUS_MATRIX_TOKEN}";
internal-room-id = "!hMdNLWZttBQomJhQOC:matrix.mlaga97.space";
default-alert = {
send-on-resolved = true;
description = "@mlaga97:matrix.mlaga97.space";
};
};
};
#maintenance = {
# start = "04:50";
# duration = "30m";
# timezone = "America/Chicago";
#};
endpoints = [
{
name = "Synapse";
@ -22,15 +43,12 @@
url = "https://matrix.mlaga97.space/_synapse/admin/v1/server_version";
interval = "30s";
conditions = [
"[CONNECTED] == true"
"[STATUS] == 200"
"has([BODY].server_version) == true"
"[CERTIFICATE_EXPIRATION] > 48h"
];
alerts = [{
type = "discord";
send-on-resolved = true;
description = "\${LAUREN_DISCORD_USERNAME}";
}];
alerts = [{ type = "discord"; }];
}
{
name = "Home Assistant";
@ -38,14 +56,11 @@
url = "https://homeassistant.mlaga97.space/api/webhook/-k9lg4u3J3_QLO6avhXNG4KZa";
interval = "30s";
conditions = [
"[CONNECTED] == true"
"[STATUS] == 200"
"[CERTIFICATE_EXPIRATION] > 48h"
];
alerts = [{
type = "discord";
send-on-resolved = true;
description = "\${LAUREN_DISCORD_USERNAME}";
}];
alerts = [{ type = "matrix"; }];
}
{
name = "Git";
@ -53,15 +68,28 @@
url = "https://git.mlaga97.space/api/healthz";
interval = "30s";
conditions = [
"[CONNECTED] == true"
"[STATUS] == 200"
"[BODY].status == pass"
"[CERTIFICATE_EXPIRATION] > 48h"
];
alerts = [{
type = "discord";
send-on-resolved = true;
description = "\${LAUREN_DISCORD_USERNAME}";
}];
alerts = [{ type = "matrix"; }];
}
{
name = "bastion.tinc.mlaga97.space";
group = "Hosts";
url = "icmp://10.86.84.105";
interval = "30s";
conditions = [ "[CONNECTED] == true" ];
alerts = [{ type = "matrix"; }];
}
{
name = "blockhouse.tinc.mlaga97.space";
group = "Hosts";
url = "icmp://10.86.84.104";
interval = "30s";
conditions = [ "[CONNECTED] == true" ];
alerts = [{ type = "matrix"; }];
}
];
};