Лесно създавайте cron изрази за планирани задачи
Използването на Генератора на Cron Изрази е много просто:
Cron изразите се използват в различни сценарии за автоматизация, включително администриране на системи, DevOps и CI/CD тръбопроводи:
При периодично изпълнение на скриптове на Linux сървъри регистрирайте cron изрази в crontab. Примери: Изпълнение на ежедневен скрипт за резервно копие в 2 сутринта (0 2 * * *), изпълнение на ротация на логове всяка неделя (0 0 * * 0) и т.н.
Тригерите за планиране на GitHub Actions и планираните тръбопроводи на GitLab CI използват cron изрази за автоматизиране на периодични компилации, тестове и внедрявания. Пример: Изпълнение на ежедневен пакет от тестове в 3 сутринта (0 3 * * *).
Ресурсите Kubernetes CronJob използват cron изрази за периодично изпълнение на контейнеризирани задачи. Пример: Изпълнение на ежедневна задача за резервно копие на база данни в 1 сутринта (0 1 * * *).
При използване на ofelia (планировщик на задачи за Docker) с Docker Compose можете да използвате cron изрази за периодично изпълнение на контейнерни задачи.
Cron изразите се използват за периодични задачи в инструменти за мониторинг като оценка на правила на Prometheus и изпращане на предупреждения на Grafana.
Използвайте cron изрази за графици за периодично изпълнение на резервни копия на бази данни, файлови системи и облачно съхранение.
Използва се за планиране на скриптове за почистване, които периодично изтриват стари файлове с логове и временни файлове.
Cron изразът е формат, използван за дефиниране на графици за изпълнение на задачи в планировщика на задачи Unix/Linux 'cron'. Сега е широко приет в облачни услуги, CI/CD инструменти и платформи за оркестриране на контейнери.
Стандартният cron израз се състои от 5 полета:
Всяко поле може да използва следната нотация:
Синтаксисът на cron изразите е труден за запомняне и склонен към грешки при ръчно писане. Този инструмент гарантира, че генерирате точни и безгрешни cron изрази.
Сложните графици могат лесно да бъдат конфигурирани чрез просто избиране на опции за всяко поле. Можете да задавате графици, използвайки естествени изрази като 'всеки понеделник в 9 сутринта'.
Вижте кога вашият генериран cron израз всъщност ще се изпълнява, като прегледате следващите 5 планирани изпълнения в реално време. Открийте грешки в конфигурацията преди внедряване.
Генерираните cron изрази работят с всички системи, съвместими с cron, включително Linux crontab, Kubernetes CronJob, GitHub Actions, Docker, AWS EventBridge и др.
Не е необходимо да се обръщате към документацията за проверка на синтаксиса на cron изразите. Използвайте предварително зададени настройки за конфигуриране на общи графици (на час, на ден, на седмица, на месец) с едно кликване.
Cron изразите не съдържат информация за часова зона. Часовата зона на изпълнение зависи от системното време на сървъра или конфигурацията на контейнера. За облачни услуги често е необходимо изрично да се посочат настройките на часовата зона (напр. GitHub Actions използва UTC).
Когато са посочени както полето ден (3-то), така и полето ден от седмицата (5-то), те се третират като ИЛИ условия. Пример: '15 10 1 * 1' означава 'в 10:15 на 1-во число на всеки месец' ИЛИ 'в 10:15 всеки понеделник'.
Преди да приложите в продукция, препоръчваме тестови изпълнения с кратки интервали (напр. всяка минута) за проверка на очакваното поведение. Активирайте изхода на логове за проследяване на историята на изпълнението.
Винаги конфигурирайте известия за неуспешни изпълнения на cron задачи (имейл, Slack, PagerDuty и т.н.). Това е особено важно за критични операции като резервно копиране или обработка на плащания.
Стандартните cron изрази използват 5-полев формат и обикновено се вместват в 20 символа. Този инструмент може да генерира всички шаблони на 5-полеви cron изрази. Някои системи поддържат 6-полеви (включващи секунди) или 7-полеви (включващи година) формати, но този инструмент поддържа най-широко използвания 5-полев формат.
Можете да ги използвате във всяка система, която поддържа cron изрази: Linux/Unix crontab, Kubernetes CronJob, GitHub Actions, GitLab CI/CD, AWS EventBridge, Google Cloud Scheduler, Docker (ofelia), Jenkins, CircleCI и др.
Да, можете. Изберете '1,5' (понеделник и петък) в полето ден от седмицата, '9' в полето час и '0' в полето минута, за да генерирате '0 9 * * 1,5'.
Cron изразите не включват информация за часова зона. Времето на изпълнение зависи от системното време на сървъра или контейнера, който изпълнява задачата. GitHub Actions използва UTC, AWS използва регионални часови зони и т.н., в зависимост от платформата.
В повечето случаи се държат еднакво. И двете означават 'на всеки 5 минути', но '*/5' е по-кратко и четливо, затова се препоръчва.
Посочете '1-5' в полето ден от седмицата. Това сочи само от понеделник до петък. Пример: '0 9 * * 1-5' означава 9 сутринта в работни дни.
Ако cron изразът е невалиден или посочва много редки условия (напр. 30 февруари), следващите изпълнения не могат да бъдат изчислени. Моля, проверете вашата конфигурация.
Да, ако часовата зона на сървъра има активирано лятно часово време, времената на изпълнение на cron ще бъдат засегнати. По време на преходите на лятното часово време задачите могат да бъдат пропуснати или изпълнени два пъти. За критични задачи помислете за работа в UTC.
Test and debug regular expressions
Encode and decode Base64
Decode JWT tokens
Convert between 12-hour and 24-hour formats
UUID generator tool