Python cron heartbeat (dead-man switch)
Ваш cron стал молча не запускаться. Нужен алерт, если скрипт пропустил окно выполнения.
Рецепт
python
import os, sys, requests
# После каждой успешной итерации cron — пинг heartbeat
HEARTBEAT = os.environ["HEARTBEAT_URL"] # https://enterno.io/hb/<token>
def main() -> None:
# ... ваша работа ...
try:
requests.post(HEARTBEAT, timeout=5)
except requests.RequestException:
pass # не ломаем основной job из-за telemetry
if __name__ == "__main__":
sys.exit(main())
То же самое в Enterno.io
Heartbeat-мониторы Enterno присылают алерт, если ping не пришёл в ожидаемое окно (например ±2 мин к ежечасной задаче). Никаких внешних контейнеров.