Monitoring de Cron Jobs et Tâches Planifiées

Ne laissez plus jamais un cron échouer silencieusement sans être alerté.

Les tâches planifiées (crons) sont les travailleurs invisibles de votre infrastructure. Sauvegardes nocturnes, synchronisations de données, envoi d'emails programmés, nettoyage de fichiers temporaires : sans eux, votre application ne fonctionne pas correctement. Mais cette invisibilité est aussi leur faiblesse : quand un cron échoue silencieusement, personne ne le remarque.

Le problème des crons est qu'ils ne génèrent pas d'erreur visible quand ils cessent de fonctionner. Pas de page d'erreur, pas de notification utilisateur, juste un silence inquiétant. Vous ne découvrez le problème que quand il est trop tard : données obsolètes, sauvegardes manquantes, clients mécontents.

MoniTao utilise le monitoring heartbeat pour résoudre ce problème. Au lieu d'attendre une erreur, vous attendez un signal de vie. Votre cron envoie un ping à chaque exécution réussie. Si le ping n'arrive pas dans les temps, vous êtes alerté immédiatement. Simple, efficace, infaillible.

Le Problème des Crons Silencieux

Les tâches planifiées peuvent échouer de nombreuses façons sans générer d'alerte :

  • Arrêt silencieux : le cron cesse de s'exécuter suite à un redémarrage serveur, une migration, ou un changement de configuration. Aucune erreur n'est générée car le cron ne démarre tout simplement plus.
  • Échec sans notification : le script s'exécute mais échoue silencieusement (erreur PHP catchée, connexion base de données perdue). Le retour code peut même être 0 malgré l'échec.
  • Dérive temporelle : le cron prend de plus en plus de temps jusqu'à dépasser son intervalle. Deux instances peuvent se chevaucher, causant des corruptions de données.
  • Découverte tardive : vous ne découvrez le problème que quand un utilisateur signale des données obsolètes, ou pire, quand vous avez besoin d'une sauvegarde qui n'existe pas.

Types de Crons à Surveiller

MoniTao peut surveiller tous types de tâches planifiées :

  • Sauvegardes : backups de base de données, fichiers, configurations. Probablement le cron le plus critique : vous ne saurez qu'il est cassé qu'au moment de restaurer.
  • Imports/Exports : synchronisation de données avec des partenaires, flux produits e-commerce, imports CRM. Des données obsolètes impactent directement le business.
  • Emails programmés : newsletters, rapports quotidiens, notifications. L'absence d'email n'alerte personne car c'est justement l'absence qui est le symptôme.
  • Nettoyage : purge de logs, fichiers temporaires, sessions expirées. Le problème n'apparaît que quand le disque est plein ou les performances dégradées.

Guides Détaillés

Explorez nos guides sur la surveillance des crons :

Intégration Heartbeat dans vos Crons

Voici comment ajouter le monitoring heartbeat à vos crons existants :

# Crontab Linux - Backup avec heartbeat
0 2 * * * /path/to/backup.sh && curl -fsS https://monitao.com/ping/YOUR_TOKEN

# Script PHP avec heartbeat
getMessage());
}

# Configuration MoniTao
- Nom: Backup quotidien
- Intervalle attendu: 24 heures
- Période de grâce: 1 heure
- Alerte: Email + Slack

Le principe est simple : votre cron envoie un ping à MoniTao uniquement en cas de succès. Si le ping n'arrive pas dans l'intervalle attendu (+ période de grâce), vous êtes alerté. La période de grâce évite les fausses alertes quand le cron prend plus de temps que prévu.

Fonctionnalités de Monitoring Cron

MoniTao offre une surveillance complète de vos tâches planifiées :

  • Détection d'absence : alerte si le ping n'arrive pas dans l'intervalle attendu. Détecte les crons qui ne s'exécutent plus.
  • Période de grâce : temps supplémentaire accordé avant l'alerte. Évite les fausses alertes pour les crons à durée variable.
  • Mesure de durée : enregistre la durée d'exécution de chaque cron. Détectez les dérives avant qu'elles ne causent des problèmes.
  • Historique complet : consultez l'historique des exécutions, durées et incidents. Utile pour l'audit et le diagnostic.

Checklist Surveillance Crons

  • Lister tous les crons critiques (backups, imports, emails)
  • Créer un job heartbeat pour chaque cron
  • Définir l'intervalle attendu + période de grâce
  • Ajouter le curl ping à la fin de chaque cron
  • Tester en simulant un échec (pas de ping)
  • Configurer les alertes (email, Slack, SMS)

Questions Fréquentes - Monitoring Crons

Quelle différence entre heartbeat et monitoring HTTP ?

Le monitoring HTTP vérifie qu'une URL répond. Le heartbeat attend un ping de votre cron. C'est votre cron qui signale qu'il a bien fonctionné, pas MoniTao qui vérifie de l'extérieur.

Puis-je surveiller un cron qui tourne plusieurs fois par jour ?

Oui, configurez l'intervalle attendu pour correspondre à la fréquence de votre cron. Un cron toutes les heures = intervalle de 1 heure dans MoniTao.

Comment gérer les crons qui prennent parfois plus de temps ?

Utilisez la période de grâce. Si votre cron prend entre 5 et 20 minutes, configurez une période de grâce de 30 minutes pour éviter les fausses alertes.

MoniTao peut-il relancer un cron échoué ?

Non, MoniTao détecte et alerte uniquement. La logique de relance doit être gérée par votre système (supervisord, systemd, ou votre propre script).

Que se passe-t-il si mon serveur est temporairement inaccessible ?

Si le ping ne peut pas être envoyé (serveur down, réseau coupé), vous serez alerté après l'intervalle + période de grâce. C'est le comportement souhaité : si le cron n'a pas pu signaler son succès, vous devez le savoir.

Puis-je distinguer un cron qui n'a pas démarré d'un cron qui a échoué ?

Avec le ping simple, non. Mais vous pouvez utiliser deux endpoints : un ping /start au début et un ping /success à la fin. MoniTao saura alors si le cron a démarré sans finir.

Dormez Tranquille, vos Crons sont Surveillés

Les crons sont les héros méconnus de votre infrastructure. Quand ils fonctionnent, personne ne les remarque. Quand ils échouent, les conséquences peuvent être désastreuses. Le monitoring heartbeat transforme ces tâches invisibles en process surveillés et alertés.

Commencez par surveiller vos crons les plus critiques : sauvegardes, imports de données, envois d'emails. En quelques minutes de configuration, vous passez d'un système fragile à une infrastructure robuste où chaque échec silencieux déclenche une alerte.

Prêt à dormir sur vos deux oreilles ?

Commencez gratuitement, sans carte bancaire.