Monitorizarea cron

Monitoarele cron îți permit să urmărești sarcinile programate (cum ar fi backupuri, procesări în loturi sau scripturi recurente) și să fii anunțat dacă nu rulează la timp. Așa te asiguri că procesele critice din fundal funcționează mereu cum trebuie.

La fel ca la celelalte monitoare, când o sarcină cron eșuează, poți colabora cu echipa ta ca să rezolvați incidentul și, opțional, să îți actualizezi pagina de stare.

Iată un exemplu de cum arată lista ta de monitoare cron:

Listă de monitoare cron

Funcții principale

  • Verificarea faptului că sarcinile tale cron rulează la timp (prin pinguri trimise de sarcini).
  • Alerte dacă o sarcină întârzie sau nu se termină.
  • Alerte prin Slack, e-mail, SMS, apeluri telefonice și altele.

Când dai clic pe un monitor cron, poți vedea mai multe detalii:

Detaliile monitorului cron

Adăugarea primului tău monitor cron

Ca să adaugi un monitor, mergi la proiectul tău → Monitoare → Adaugă un monitor.

Adaugă un monitor

Tip de monitor

Selectează Cron/Heartbeat ca tip de monitor.

Tipul de monitor cron

Se va genera un URL unic pentru tine. Sarcina ta cron ar trebui să trimită o cerere HTTP (HEAD, GET sau POST) către acest URL de fiecare dată când rulează.

Monitorul are succes dacă

Un monitor cron reușește atunci când sarcina ta face ping la URL-ul generat conform programului. Poți configura:

  • Perioadă: Cât de des ar trebui să ruleze sarcina (de exemplu, la fiecare 15 minute).
  • Toleranță: Timpul suplimentar permis înainte ca sarcina să fie considerată nefuncțională.

Dacă perioada se scurge și sarcina nu face ping, monitorul va fi marcat ca degradat.

Dacă se scurge și toleranța, iar sarcina tot nu face ping, monitorul va fi marcat ca nefuncțional.

Poți configura alerte ca să fii anunțat când o sarcină cade, se degradează sau își revine.

Semnalarea unui eșec

Uneori vrei să marchezi explicit o sarcină drept eșuată, chiar dacă a rulat și a făcut ping la monitor.
Poți face asta trimițând o cerere către URL-ul monitorului cu /fail adăugat la final.

Este util dacă scriptul tău întâmpină o eroare și vrei ca Instatus să înregistreze imediat sarcina ca eșuată.

  • Ping de succes: https://cron.instatus.com/your-unique-url
  • Ping de eșec: https://cron.instatus.com/your-unique-url/fail

Când se primește un semnal de eșec, monitorul va fi marcat ca nefuncțional, iar alertele vor fi trimise imediat conform setărilor tale de alertă.

Măsurarea duratei de execuție a sarcinii

Poți măsura cât durează execuția sarcinii tale trimițând două cereri:

  1. Semnal de start: Trimite o cerere către /start când începe sarcina
  2. Semnal de succes/eșec: Trimite o cerere către URL-ul de bază când sarcina se încheie sau eșuează
  • Ping de start: https://cron.instatus.com/your-unique-url/start
  • Ping de succes: https://cron.instatus.com/your-unique-url
  • Ping de eșec: https://cron.instatus.com/your-unique-url/fail

Timpul dintre semnalul de start și cel de succes va fi înregistrat ca durată de execuție a sarcinii. Asta te ajută să urmărești performanța și să identifici sarcinile care durează mai mult decât ar trebui.

Dacă sarcina ta eșuează după ce a trimis semnalul de start, trimite un semnal de eșec în loc de cel de succes, ca să fie marcată ca eșuată și, în același timp, să se înregistreze durata de execuție.

Felicitări, ai adăugat primul tău monitor cron!