Довідка та інструкціїHeartbeat (cron моніторинг) › Що таке heartbeat і коли використовувати

Що таке heartbeat і коли використовувати

3 хв читання · Heartbeat (cron моніторинг)

Стисло: Heartbeat-монітор сповістить вас, коли якесь завдання (зазвичай нічне резервне копіювання, щоденна синхронізація або інше cron-завдання) перестане виконуватися. Він працює у зворотний бік порівняно зі звичайним монітором доступності: ping надсилаєте ви в бік ePulz.io, а не ми на ваш сервер.

Коли heartbeat корисний

  • Нічне резервне копіювання бази даних - ви хочете знати, якщо вночі копіювання не вдасться
  • Синхронізація із зовнішнім сервісом - імпорт із CRM, бухгалтерської системи або платіжного шлюзу
  • Регулярне виставлення рахунків - генерація рахунків, надсилання нагадувань
  • Завдання очищення - видалення старих сесій, тимчасових файлів і логів
  • Звіти і статистика - щотижневі/щомісячні звіти
  • Перевірка стану фонових процесів - Celery, Sidekiq, BullMQ

Як це працює

  1. В ePulz.io створите heartbeat монітор з очікуваним інтервалом (напр. кожну годину, кожну ніч о 3:00 тощо)
  2. Отримаєте унікальну heartbeat URL - виглядає як https://epulz.io/heartbeat/abc123xyz
  3. Цю URL додасте в кінець свого cron скрипту / завдання
  4. Коли завдання успішно завершиться, "пінгне" цю URL
  5. Якщо ping не прийде в очікуваний час (інтервал плюс допуск), ePulz.io вас сповістить

Практичний приклад

Уявімо нічне резервне копіювання бази даних, яке виконується щодня о 3:00 ранку і триває близько 5 хвилин:

  1. Створюєте heartbeat-монітор з назвою "Нічне копіювання БД", інтервал 1440 хвилин (24 години), допуск 15 хвилин
  2. До скрипту копіювання додаєте: після успішного копіювання викликайте heartbeat URL
  3. Щодня після 3:05 ePulz.io очікує ping. Якщо не прийде до 3:15 (інтервал плюс допуск), надішле вам сповіщення
Ключовий принцип: Heartbeat URL викликаєте лише після успішного завершення завдання. Якщо скрипт не вдасться, ping не пройде, ePulz.io про це дізнається і сповістить вас. Жодного ping = збій.

Інтервал і допуск (grace)

  • Інтервал - як часто має приходити heartbeat (напр. кожну годину = 60 хвилин)
  • Допуск (grace) - вікно допуску: скільки ми чекаємо після очікуваного часу, перш ніж надіслати сповіщення

Практичні значення:

ЗавданняІнтервалДопуск
Щогодини60 хв10 хв
Щоденне копіювання (триває в середньому 20 хв)1440 хв60 хв
Щотижневий звіт10080 хв6 годин
Перевірка фонового процесу кожні 5 хвилин5 хв2 хв

Розпочніть

У наступному кроці ми показуємо точну процедуру створення heartbeat-монітора в панелі ePulz.io.

Наступний крок:

Створення heartbeat монітора в ePulz.io.

Створити heartbeat монітор →
Чи був цей посібник корисним?