🐶 Посмотрим, как на самом деле работает планировщик Cron, который крутит ваши данные

Синтаксис Cron — это пять позиций (минуты, часы, дни, месяцы, дни недели)

Наш пример: 50,30 8,9 * • 30,50 — запускаем в 30 и 50 минут. • 8,9 — в 8 и 9 часов утра.

Итог: 4 запуска в утреннее время

💡Три совета, чтобы ваши дата-скрипты не падали:

1. Используйте абсолютные пути Cron запускается от имени пользователя, но его PATH сильно ограничен. Ваш скрипт не найдет библиотеку или файл, если не указать полный путь

👎python script.py

👍 /home/user/anaconda3/bin/python /home/user/data_project/etl_script.py

2. Логируйте всё (особенно ошибки) В Cron нет консоли, которую вы видите в терминале. Если скрипт упадет, вы об этом не узнаете без логов. Направляйте вывод в файл:

  • /path/to/python script.py >> /path/to/logs/etl.log 2>&1 (Здесь 2>&1 склеивает обычный вывод и ошибки в один файл) 3. Спецсимволы: • * — любое значение (каждую минуту/день) • , — перечисление (как в нашем примере: 8,9) • - — диапазон (например, 1-5 в 5-й позиции для запуска только по будням) • / — шаг (например, */15 — каждые 15 минут)

🤷‍♀️ Важный нюанс: Файл crontab -e всегда должен заканчиваться пустой строкой. Без этого символа переноса строки последняя задача в списке может просто проигнорироваться системой

Для сложных цепочек задач лучше смотреть в сторону Airflow или Prefect, но для простых задач — Cron остается базой

А как вы автоматизируете свои рабочие процессы?

🐶 Посмотрим, как на самом деле работает планировщик Cron, который крутит ваши данные
Синтаксис Cron — это пять позиций (минуты, часы, дни, месяцы, дни недели)
Наш пример: 50,30 8,9 *
• 30,50 — запуска... | Сетка — социальная сеть от hh.ru 🐶 Посмотрим, как на самом деле работает планировщик Cron, который крутит ваши данные
Синтаксис Cron — это пять позиций (минуты, часы, дни, месяцы, дни недели)
Наш пример: 50,30 8,9 *
• 30,50 — запуска... | Сетка — социальная сеть от hh.ru