Моніторинг Cron

Cron-монітори дають змогу стежити за запланованими завданнями (як-от резервні копії, пакетна обробка чи регулярні скрипти) та отримувати сповіщення, якщо вони не виконалися вчасно. Так ви переконаєтеся, що критичні фонові процеси завжди працюють як слід.

Як і з іншими моніторами, коли cron-завдання падає, ви можете разом із командою вирішити інцидент і за бажанням оновити свою сторінку статусу.

Ось приклад того, як виглядає список ваших cron-моніторів:

Список cron-моніторів

Ключові можливості

  • Перевірка того, що ваші cron-завдання виконуються вчасно (за пінгами від самих завдань).
  • Сповіщення, якщо завдання запізнюється або не завершується.
  • Сповіщення через Slack, email, SMS, телефонні дзвінки та інші канали.

Коли ви натискаєте на cron-монітор, ви бачите докладнішу інформацію:

Деталі cron-монітора

Додавання першого cron-монітора

Щоб додати монітор, перейдіть до свого проєкту → Монітори → Додати монітор.

Додати монітор

Тип монітора

Виберіть Cron/Heartbeat як тип монітора.

Тип монітора Cron

Для вас буде згенеровано унікальний URL. Ваше cron-завдання має надсилати HTTP-запит (HEAD, GET або POST) на цей URL щоразу, коли виконується.

Монітор успішний, якщо

Cron-монітор вважається успішним, коли ваше завдання пінгує згенерований URL за розкладом. Ви можете налаштувати:

  • Період: як часто має виконуватися завдання (наприклад, кожні 15 хвилин).
  • Запас часу: додатковий час, після якого завдання вважається недоступним.

Якщо період минув, а завдання не надіслало пінг, монітор буде позначено як такий, що втратив продуктивність.

Якщо минув і запас часу, а завдання так і не надіслало пінг, монітор буде позначено як недоступний.

Ви можете налаштувати сповіщення, щоб дізнаватися, коли завдання падає, втрачає продуктивність або відновлюється.

Сигнал про збій

Інколи потрібно явно позначити завдання як невдале, навіть якщо воно виконалося й надіслало пінг монітору.
Для цього надішліть запит на URL монітора з доданим /fail.

Це зручно, якщо ваш скрипт натрапив на помилку і ви хочете, щоб Instatus одразу зафіксував завдання як невдале.

  • Пінг про успіх: https://cron.instatus.com/your-unique-url
  • Пінг про збій: https://cron.instatus.com/your-unique-url/fail

Отримавши сигнал про збій, монітор буде позначено як недоступний, а сповіщення надійдуть негайно відповідно до ваших налаштувань сповіщень.

Вимірювання часу виконання завдання

Ви можете виміряти, скільки триває виконання завдання, надіславши два запити:

  1. Сигнал про початок: надішліть запит на /start, коли завдання починається
  2. Сигнал про успіх/збій: надішліть запит на базовий URL, коли завдання завершується або падає
  • Пінг про початок: https://cron.instatus.com/your-unique-url/start
  • Пінг про успіх: https://cron.instatus.com/your-unique-url
  • Пінг про збій: https://cron.instatus.com/your-unique-url/fail

Час між сигналами про початок і про успіх буде записано як тривалість виконання завдання. Це допомагає стежити за продуктивністю й помічати завдання, які тривають довше, ніж очікувалося.

Якщо завдання падає після сигналу про початок, надішліть сигнал про збій замість сигналу про успіх — так воно буде позначене як невдале, але тривалість виконання все одно буде записано.

Вітаємо, ви додали свій перший cron-монітор!