Cron & Scheduling

AWS EventBridge cronПроверьте смысл времени в расписании

Вставьте готовое выражение или подготовьте черновик и сравните его с исходным текстом перед применением.

AWS EventBridge cron

Выражение

Данные обрабатываются в этом браузере и не отправляются на сервер.

Фрагмент настроек расписания

Только свойства расписания: добавьте имя, цель и разрешения в AWS. Scheduler также требует роль выполнения для цели. Этот фрагмент не создаёт ресурс.

Параметры

Конструктор полей

Эти поля — черновик. Только применение заменяет выражение сверху; проверяется именно вставленный исходный текст.

cron(0 9 ? * MON-FRI *)

Порядок: минута, час, день месяца, месяц, день недели, год. Воскресенье=1; ровно одно поле дня должно быть ?. L, 15W, FRIL или MON#1 используются отдельно в соответствующем поле.

Одно выражение, до 256 символов. Годы 1970–2199. Нет секунд, at(), LW и смещений L. Обратные диапазоны поддерживаются только для часов; реальные даты не вычисляются.

Ввод или параметры изменились. Перед экспортом обновите результаты.

AWS EventBridge cron отличается от привычного crontab: последнее поле задаёт год, воскресенье обозначается числом 1, а одно из двух полей дня должно содержать ?. Эти детали полезно проверить до поиска ошибки в правах целевого сервиса.

Расписание утреннего отчёта по будням задаётся условиями календаря, а обработка каждые пять минут — интервалом. В Scheduler часовой пояс передаётся отдельным свойством. У старых запланированных правил основой времени остаётся UTC.

Зачем проверять AWS EventBridge cron

Разделить UTC и местное время

AWS EventBridge cron не содержит часового пояса внутри выражения. Для Scheduler cron появляется отдельное свойство, для Rules оно отсутствует. Так видно, означают ли девять утра время выбранного региона или время UTC, которое нельзя изменить настройкой отображения.

От одних часов расходятся два пути: к фиксированным часам UTC и к местным часам рядом с глобусом.

Не путать календарь с длительностью

Отчёт по понедельникам утром требует календарных условий. Задача каждые пять минут требует интервала. Конструктор разделяет эти способы ввода и подставляет нужную оболочку, чтобы календарные поля не оказались внутри rate().

На календаре выделены будние дни, а ниже на временной оси стоят равноудалённые отметки.

Три детали перед переносом настроек

01

Сначала выбрать сервис

По умолчанию выбран Scheduler. Переход к Rules фиксирует действующий пояс UTC; при возврате сохраняется ранее введённый пояс Scheduler. Изменение активных настроек сразу блокирует экспорт старого результата.

  • Часовой пояс компьютера не подставляется автоматически.
02

Редактировать черновик отдельно от исходника

Шаблоны заполняют только поля конструктора. Предпросмотр показывает старое и новое выражения с числом символов. Применение заменяет текст, отмена восстанавливает также настройки и предыдущий результат.

  • Изменение черновика не переписывает вставленное выражение.
03

Проверить актуальность результата

Автопроверка ждёт 350 мс после последнего изменения. Отключите её, чтобы запускать проверку кнопкой или Ctrl/Cmd + Enter. Выражение можно скопировать отдельно, а свойства расписания — скачать как JSON.

  • Проверка синтаксиса не подтверждает успешный вызов цели.

Поля, условия и свойства расписания

Отдельная проверка шести полей AWS

У минут, часов и года разные границы. Дни недели обозначаются 1–7; названия JAN–DEC и SUN–SAT сохраняются. Списки, диапазоны и положительные шаги проверяются с учётом конкретного поля. Ошибка указывает поле и начальный столбец.

Последний день и нужное вхождение дня недели

Поддерживаются L и nW в дне месяца, а также L, деньL и одно условие день#номер в дне недели. Ровно одно поле дня должно быть ?. Несколько # или неподдерживаемые сочетания Quartz не проходят без проверки.

Свойства для выбранного сервиса

Scheduler cron получает ScheduleExpressionTimezone и явно заданное FlexibleTimeWindow со значением OFF. Rules получает только ScheduleExpression. Для Scheduler rate пояс не выводится: длительность не описывает ежедневное событие по местным часам.

Одинаковая проверка для вставки и генератора

Шесть полей без оболочки преобразуются в cron(...) только в результате. Регистр и пробелы нормализуются без перезаписи исходника. Генератор rate выбирает единственное или множественное число единицы по значению; вставленный текст проверяется тем же способом.

Поддерживаемая грамматика и границы

Явно ограниченная грамматика
День месяца принимает L или nW; день недели — L, weekdayL или weekday#1–5. Не поддерживаются LW, смещения L, C, H, списки специальных условий и шаги дня недели. Обратные диапазоны разрешены только для часов; остальные следует разбить на списки.
Существование запуска не вычисляется
31 февраля, отсутствующий пятый день недели в месяце или прошедший год могут пройти проверку полей. Инструмент не вычисляет следующие запуски и существование календарных дат. Доставка в точно заданную секунду тоже не гарантируется.
Канонические единицы rate
Значение должно быть положительным целым, безопасно представимым в JavaScript. Инструмент требует записи rate(1 minute) и rate(5 minutes). Это единая местная конвенция, а не утверждение о всех вариантах, которые может принимать API Scheduler.
Фрагмент не является полным описанием ресурса
Имя, ARN цели, роль выполнения и разрешения задаются отдельно. Обращения к AWS и проверка IAM не выполняются. Даты начала и завершения, повторы, DLQ и редактирование гибкого окна не входят в форму; OFF явно выбран в результате.
Только повторяющиеся расписания AWS
Полное выражение ограничено 256 символами, годы — диапазоном 1970–2199. Unix с пятью полями, Quartz с семью, at(), импорт файлов и другие облачные диалекты не обрабатываются. Распознавание IANA зависит от данных браузера.

Вопросы об AWS EventBridge cron

Почему cron-выражение считается недопустимым?

Сначала проверьте шесть полей от минуты до года и убедитесь, что ровно одно поле дня содержит ?. Воскресенье обозначается 1, а не Unix-значением 0. Проверка AWS EventBridge cron различает выход за границы поля и неподдерживаемую комбинацию символов.

Как использовать часовой пояс, отличный от UTC?

Выберите Scheduler и введите имя IANA, например Europe/Moscow. В выражении остаются местные часы, пояс задаётся отдельным свойством. Обычное запланированное правило использует UTC независимо от того, в каком поясе показан результат.

Как учитывается переход на летнее время?

Scheduler cron пропускает локальное время, исчезнувшее при переводе часов вперёд, и один раз выполняет повторившееся время при переводе назад. Rate с единицей day измеряет 24 часа. Для постоянного местного утреннего времени используйте cron.

Чем отличаются запланированные Rules и Scheduler?

Rules — прежний механизм расписаний на основе UTC. Scheduler поддерживает именованные пояса и отдельные параметры вызова. Здесь можно сравнить свойства времени; перенос целей, настройку ролей и проверку разрешений нужно выполнить отдельно.

Как использовать выражение в Terraform?

Календарные поля помещаются в cron(...), значение и единица интервала — в rate(...). Укажите schedule_expression у подходящего ресурса, а для Scheduler cron добавьте schedule_expression_timezone. Скачанный JSON служит справочным фрагментом, а не готовым ресурсом HCL.

Неожиданная дата запуска?

Проверьте настройки перед использованием

Проверьте AWS EventBridge cron, скопируйте свойства выбранного сервиса, а затем подтвердите права цели и реальные вызовы в AWS.

Эта страница не создаёт и не активирует расписания.