Задача (Job)
Задача/Job - монитор предназначен для отслеживания выполнения периодических задач: backup скриптов, cron задач и других операций по расписанию.
Принцип работы
- Вы создаёте Job монитор и задаёте расписание выполнения
- При запуске задачи отправляется сигнал
start - При успешном завершении отправляется сигнал
finish - При ошибке отправляется сигнал
fail - Система отслеживает своевременность запуска и время выполнения
┌─────────────┐ start ┌─────────────┐ finish ┌─────────────┐
│ Ваш скрипт │ ──────────▶ │ Tuna │ ◀────────── │ Ваш скрипт │
│ (start) │ │ Monitor │ │ (finish) │
└─────────────┘ └─────────────┘ └─────────────┘
Параметры
Описание
| Параметр | Описание | Обязательный |
|---|---|---|
| Название | Уникальное имя монитора | Да |
| Описание | Примечание о назначении задачи | Нет |
Детали
Указываем ожидаемый интервал между задачами и опционально максимальное время выполнения.
Интервал
Поддерживается два типа расписания:
- Интервал
- Cron выражение
Ожидаемый интервал между сигналами:
| Значение | Описание |
|---|---|
| 1 минута | Сигнал ожидается каждую минуту |
| 5 минут | Сигнал ожидается каждые 5 минут |
| 15 минут | Сигнал ожидается каждые 15 минут |
| 30 минут | Сигнал ожидается каждые 30 минут |
| 60 минут | Сигнал ожидается каждый час |
Для нерегулярных расписаний используйте Cron-выражение:
┌───────────── минута (0 - 59)
│ ┌───────────── час (0 - 23)
│ │ ┌───────────── день месяца (1 - 31)
│ │ │ ┌───────────── месяц (1 - 12)
│ │ │ │ ┌───────────── день недели (0 - 6)
│ │ │ │ │
* * * * *
Примеры:
| Выражение | Описание |
|---|---|
*/5 * * * * | Каждые 5 минут |
0 * * * * | Каждый час |
0 9-18 * * 1-5 | Каждый час с 9 до 18 по будням |
Время выполнения
Максимальная длительность задачи Running Time - если задача выполняется дольше указанного времени, отправляется уведомление.
Уведомления
Задача монитор отправляет уведомления в следующих случаях:
| Причина | Описание |
|---|---|
| Fail | Задача завершилась с ошибкой (сигнал fail или exit code != 0) |
| Not Running | Задача не запустилась в течение Grace Period |
| Long Running | Задача выполняется дольше Running Time |
| Recovery | Задача восстановилась после ошибки |
Здесь можно указать группы контактов для уведомлений, если не указывать, то используется Email пользователя.
Также задаётся период ожидания - Grace Period. Добавляется к ожидаемому времени следующего сигнала. Например, если интервал 5 минут и Grace Period 2 минуты, то алерт будет отправлен через 7 минут после последнего сигнала. Повтор уведомлений напоминает о проблеме, можно задать интервал этих напоминаний и их количество.
