# Monitorizarea cron

Source: https://instatus.com/help/ro/monitoring/cron

Monitoarele cron oferă fiecărui job programat (un backup, un proces batch sau un script recurent) un URL unic pe care să îl apeleze și te anunță când un ping întârzie sau lipsește. Jobul este marcat ca degradat când își ratează perioada și ca nefuncțional când depășește și timpul de toleranță.

La fel ca la [celelalte monitoare](https://instatus.com/help/ro/monitoring), când o sarcină cron eșuează, poți colabora cu echipa ta ca să [rezolvați incidentul](https://instatus.com/help/ro/incident-response) și, opțional, să îți actualizezi [pagina de stare](https://instatus.com/help/ro/status-page).

| At a glance | Details |
| :-- | :-- |
| [Cum funcționează](https://instatus.com/help/ro/monitoring/cron#tip-de-monitor) | Jobul apelează un URL unic la fiecare rulare |
| [Perioada](https://instatus.com/help/ro/monitoring/cron#monitorul-are-succes-dacă) | Cât de des ar trebui să ruleze jobul |
| [Toleranța](https://instatus.com/help/ro/monitoring/cron#monitorul-are-succes-dacă) | Timp în plus înainte ca un job întârziat să cadă |
| [Ping întârziat](https://instatus.com/help/ro/monitoring/cron#monitorul-are-succes-dacă) | Degradat după perioadă, nefuncțional după toleranță |
| [Semnal de eșec](https://instatus.com/help/ro/monitoring/cron#semnalarea-unui-eșec) | Apelează URL-ul cu /fail adăugat la final |
| [Timp de execuție](https://instatus.com/help/ro/monitoring/cron#măsurarea-duratei-de-execuție-a-sarcinii) | Ping la /start când începe jobul, la URL când se termină |

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

![Listă de monitoare cron](https://instatus.com/help/monitors/cron-list.png)

## Ce face un monitor cron?

- 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](https://instatus.com/help/monitors/cron-item.png)

## Cum adaug un monitor cron?

Mergi la proiectul tău → Monitoare → Adaugă un monitor, alege **Cron/Heartbeat**, apoi îndreaptă-ți jobul către URL-ul generat și setează-i perioada și timpul de toleranță.

![Adaugă un monitor](https://instatus.com/help/monitors/cron-add.png)

### Tip de monitor

Selectează **Cron/Heartbeat** ca tip de monitor.

![Tipul de monitor cron](https://instatus.com/help/monitors/type-cron.png)

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](https://instatus.com/help/ro/monitoring/alerts) ca să fii anunțat când o sarcină cade, se degradează sau își revine.

## Semnalarea unui eșec

Trimite o cerere către URL-ul monitorului cu `/fail` adăugat la final ca să marchezi jobul ca eșuat, chiar dacă a rulat și a apelat monitorul.

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ă](https://instatus.com/help/ro/monitoring/alerts).

## Măsurarea duratei de execuție a sarcinii

Trimite două cereri, `/start` când începe jobul și ping-ul de succes sau de eșec când se termină, iar Instatus înregistrează timpul dintre ele ca timp de execuție al jobului:

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!

- [Monitoare ping](https://instatus.com/help/ro/monitoring/ping): Află cum să îți monitorizezi endpointurile ping pentru disponibilitate și performanță
