Migrer depuis Cronitor

Migrez vos moniteurs Cronitor vers les checks heartbeat SteadyCron — listez les moniteurs via l'API, recréez-les en YAML et remplacez les URL de télémétrie dans vos crontabs.

Les moniteurs Cronitor et les checks heartbeat SteadyCron suivent le même modèle : votre job pingue une URL de télémétrie, et un ping manquant ou en échec devient une alerte. La migration est donc un simple exercice de correspondance — recréer chaque moniteur, remplacer l’URL de ping, faire tourner les deux brièvement, terminé. SteadyCron exécute en plus des tâches HTTP planifiées (réessais, timeouts) dans le même produit, et gère tout en YAML ou Terraform, hébergé en UE.

1. Listez vos moniteurs Cronitor

L’API Cronitor renvoie chaque moniteur avec son planning et ses réglages de grâce :

curl -s https://cronitor.io/api/monitors -u "$CRONITOR_API_KEY:" \
  | jq '.monitors[] | {name: .name, schedule: .schedule, grace: .grace_seconds, tz: .timezone}'

2. Recréez chaque moniteur en check heartbeat

Les moniteurs cron deviennent schedule + timezone ; les moniteurs à intervalle (« toutes les X minutes ») deviennent interval en secondes :

jobs:
  - id: nightly-db-backup
    name: Nightly DB backup
    kind: heartbeat
    schedule: "0 2 * * *"
    timezone: Europe/Paris
    grace: 1800

  - id: sync-worker
    name: Sync worker
    kind: heartbeat
    interval: 600
    grace: 120

Ou interactivement, un par un :

steadycron manifest add job --kind heartbeat --name nightly-db-backup --schedule "0 2 * * *"

Puis steadycron apply steadycron.yaml. Chaque check reçoit une URL de ping unique sous ping.steadycron.com.

3. Remplacez les URL de télémétrie

Remplacez le ping cronitor.link dans chaque ligne de crontab ou script wrapper :

# avant
0 2 * * * cronitor exec db-backup /usr/local/bin/backup.sh

# après
0 2 * * * /usr/local/bin/backup.sh && curl -fsS https://ping.steadycron.com/<votre-token>

Si vous utilisiez cronitor exec : le motif curl ci-dessus ne pingue qu’en cas de succès — exactement ce qu’attend un dead-man’s switch. Pinguez les deux services en parallèle quelques jours avant de supprimer les moniteurs Cronitor.

Ce qui change

CronitorSteadyCron
Monitoring cronOuiOui
Exécution de tâches HTTP planifiéesChecks basiquesJobs complets — réessais, timeouts, request builder, journal
Config as codeAPI, Terraform (communautaire), YAML via CLIManifeste YAML + provider Terraform officiel
Canaux d’alerteNombreux (selon le plan)E-mail, Slack, Discord, Telegram, webhook — tous les plans
HébergementUSAUE (RGPD natif, DPA signé)

Étapes suivantes