personal_infra/ansible/roles/monero/templates/healthcheck.timer.j2
counterweight f33f1a4b67
monero: check every five minutes again
The probes, the unit check and the public checks ran once a day with 26h
windows, justified as "a multi-week initial sync on a rotating disk". That
stopped being true: the node is synced, and a cold explorer page now renders
in 29s and a warm one in 0.2s - polling every 5 minutes is what keeps it warm.
A dead monerod could go unnoticed for a day.

Back to the standard 5m cadence and 11m heartbeat; the per-host
service_health override on monerod-box is gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 22:10:24 +02:00

21 lines
885 B
Django/Jinja

[Unit]
Description=Monero Node Health Check Timer
# Deliberately NO `Requires=monerod.service`. Requires on a timer stops the
# timer when the required unit stops - "if the thing I am watching goes down,
# stop watching it" - and leaves nothing to re-arm when the service returns.
# Fulcrum's timer carried it and sat active+enabled for seven months without
# firing once. bitcoin_knots' timer still carries it; do not copy that.
[Timer]
OnBootSec=2min
# Every 5 minutes (see monero_healthcheck_on_calendar). The cadence and the
# Gatus heartbeat window are ONE decision - the window MUST exceed this
# interval, and it is the standard 11m in
# infra/403_service_probe_registration.yml.
OnCalendar={{ monero_healthcheck_on_calendar }}
# Small: a delay comparable to the interval would eat the heartbeat's slack.
RandomizedDelaySec=30
Persistent=true
[Install]
WantedBy=timers.target