Monitorización cron

Los monitores cron te permiten hacer un seguimiento de las tareas programadas (copias de seguridad, procesos por lotes o scripts recurrentes) y recibir avisos si no se ejecutan a tiempo. Así te aseguras de que los procesos críticos en segundo plano siempre funcionan como esperas.

Igual que con otros monitores, cuando una tarea cron falla puedes colaborar con tu equipo para resolver la incidencia y, si quieres, actualizar tu página de estado.

Así se ve tu lista de monitores cron:

Lista de monitores cron

Funciones principales

  • Comprueba que tus tareas cron se ejecutan a tiempo (mediante los pings de tus tareas).
  • Recibe alertas si una tarea se retrasa o no termina.
  • Integra Slack, correo, SMS, llamadas telefónicas y más para recibir alertas.

Al hacer clic en un monitor cron, verás más detalles:

Detalles del monitor cron

Añadir tu primer monitor cron

Para añadir un monitor, ve a tu proyecto → Monitores → Añadir monitor.

Añadir monitor

Tipo de monitor

Selecciona Cron/Heartbeat como tipo de monitor.

Tipo de monitor cron

Se generará una URL única para ti. Tu tarea cron debe enviar una petición HTTP (HEAD, GET o POST) a esa URL cada vez que se ejecute.

El monitor se considera correcto si

Un monitor cron tiene éxito cuando tu tarea hace ping a la URL generada dentro del plazo previsto. Puedes configurar:

  • Periodo: con qué frecuencia debe ejecutarse la tarea (por ejemplo, cada 15 minutos).
  • Margen: tiempo adicional que se permite antes de considerar la tarea caída.

Si se alcanza el periodo y la tarea no hace ping, el monitor se marcará como degradado.

Si se alcanza el margen y la tarea no hace ping, el monitor se marcará como caído.

Puedes configurar alertas para recibir avisos cuando una tarea falla, se degrada o se recupera.

Señalar un fallo

A veces querrás marcar una tarea como fallida de forma explícita, aunque se haya ejecutado y haya hecho ping al monitor.
Para hacerlo, envía una petición a la URL del monitor añadiendo /fail al final.

Es útil cuando tu script encuentra un error y quieres que Instatus registre la tarea como fallida de inmediato.

  • Ping de éxito: https://cron.instatus.com/your-unique-url
  • Ping de fallo: https://cron.instatus.com/your-unique-url/fail

Cuando se recibe una señal de fallo, el monitor se marca como caído y las alertas se envían de inmediato según tus ajustes de alertas.

Medir el tiempo de ejecución de una tarea

Puedes medir cuánto tarda tu tarea en ejecutarse enviando dos peticiones:

  1. Señal de inicio: envía una petición a /start cuando empiece tu tarea
  2. Señal de éxito o fallo: envía una petición a la URL base cuando tu tarea termine o falle
  • Ping de inicio: https://cron.instatus.com/your-unique-url/start
  • Ping de éxito: https://cron.instatus.com/your-unique-url
  • Ping de fallo: https://cron.instatus.com/your-unique-url/fail

El tiempo entre la señal de inicio y la de éxito se registra como el tiempo de ejecución de la tarea. Así puedes seguir el rendimiento e identificar las tareas que tardan más de lo previsto.

Si tu tarea falla después de enviar la señal de inicio, envía una señal de fallo en lugar de la de éxito para marcarla como fallida y registrar igualmente el tiempo de ejecución.

¡Enhorabuena, has añadido tu primer monitor cron!