personal_infra/ansible/roles/xmrblocks/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

20 lines
914 B
Django/Jinja

[Unit]
Description=Onion Monero Blockchain Explorer Health Check Timer
# Deliberately NO `Requires=xmrblocks.service`. Requires on a timer stops the
# timer when the watched unit stops - "if the thing I am watching goes down,
# stop watching it" - leaving nothing to re-arm when it returns. Fulcrum's
# timer carried it and sat active+enabled for seven months without firing.
[Timer]
OnBootSec=2min
# Every 5 minutes (see xmrblocks_healthcheck_on_calendar). The check renders a
# full page out of the LMDB: 29s cold, 0.2s warm on NVMe - frequent polling is
# what keeps it warm. The Gatus heartbeat window is the standard 11m, set in
# infra/403_service_probe_registration.yml, and MUST stay above this interval.
OnCalendar={{ xmrblocks_healthcheck_on_calendar }}
# Small: a delay comparable to the interval would eat the heartbeat's slack.
RandomizedDelaySec=30
Persistent=true
[Install]
WantedBy=timers.target