Моніторинг Cron

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

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

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

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

Що робить cron-монітор?

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

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

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

Як додати cron-монітор?

Перейдіть до свого проєкту → Монітори → Додати монітор, виберіть Cron/Heartbeat, налаштуйте завдання на згенерований URL і задайте його період та запас часу.

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

Тип монітора

Виберіть 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

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

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

Надішліть два запити: /start на початку завдання та пінг про успіх чи збій у кінці — Instatus запише час між ними як час виконання завдання:

  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-монітор!