Настройка Cron

Разработчику

Система "Cron" необходима для выполнения периодических заданий. Например, срабатывание напоминаний, фоновое резервное копирование, автоматической рассылки писем на определенные даты, автоматический сбор данных и многих других фоновых автоматических операций.

Если вы пользуетесь локальной версией, ваш Cron уже настроен и не нуждается в дополнительной настройке.
В случае использования хостинга, необходима настройка системы Cron. Cron необходимо настроить на минимальный промежуток времени — каждую минуту. Предположим что ваша программа доступна по адресу http://mysite.com/cb, тогда вам необходимо настроить скачивание файла http://mysite.com/cb/cron.php каждую минуту.


Если вы пользуетесь локальной версией, ваш Cron уже настроен и не нуждается в дополнительной настройке.

Важно: Если используется локальная версия и в какой-то момент задания Cron перестают выполняться стоит проверить изменялся ли IP-адрес компьютера, на котором установлена программа. Если он изменялся, то стоит провести действия, описанные в этом разделе документации.

В системе Cron существуют системные задания, например: Резервное копирование (Создание бекапа по расписанию), Напоминания (Формирование напоминаний), Автоматическая отписка (Формирование в локальных версиях программы списка отписавшихся), также задания типа Разослать шаблон ... (для формирования автоматических рассылок). Пользователь может как изменять параметры системных заданий, так и создавать свои задания для любых действий по расписанию, например, для генерации автоматических отчетов.

Заполнение полей:

При создании своего задания, вам необходимо заполнить следующие поля:

photo

 

Описание  - Текстовое описание задания

Команда — Php код, который будет выполняться по расписанию.

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

Последнее время запуска и Время завершения работы — информационные поля для статистики работы задачи.

Статус — Может принимать значения 'Остановлен' либо 'Запущен'

Запретить выполнение — Если вы установили данную опцию, то задача не будет выполняться. Запустить только один раз, и запретить задание — Опция для одноразового выполнения задач по расписанию, например, если вы хотите 12 июля всем пользователям разослать письмо о том что у вас открылся новый отдел.

Максимальное время работы — По умолчанию максимальное время работы задания равно системному ограничению. В случае, если задание выполняется больше времени max_execution_time, возможно задать это время вручную. Возможность изменения максимального времени работы скрипта, зависит также от настроек вашего хостинга. На хостинге должна быть разрешена функция set_time_limit. В локальной версии программы никаких настроек функции set_time_limit не требуется, все работает по умолчанию. 

Также максимальное время работы может использоваться для уменьшения. Например задание напоминания, редко выполняется более 5 мин. В этом случае, если был сбой в системе (например перезагрузка apache), и задание зависло, то задание будет удалено из выполняющихся заданий через 8 минут, после его запуска. 

Поток — Все задачи группируются при выполнении по потокам, одновременно в потоке может выполняться только одна задача. Т.к. все рассылки формируются по умолчанию в одном потоке, то они запускаются по очереди, а не одновременно. Что помогает уменьшить нагрузку на хостинг. Если вам нужно чтобы рассылки выполнялись одновременно, вам следует назначить рассылками разные имена потоков.

Лог — Весь вывод который совершает задача, записывается в лог. Размер лога ограничивается размером в 10 килобайт. В случае если ваш лог вырастает больше 10 килобайт, конец лога автоматически обрезается.

Выполнить сейчас — Начиная с версии 2.0.2 появилась дополнительная кнопка «Выполнить сейчас», ее следует использовать, если вам необходимо немедленно запустить выполнение задания в Cron. К примеру, если вы настроили рассылку e-mail уведомлений каждые 3 часа, но прямо сейчас вам необходимо разослать важные сообщения, то вы можете воспользоваться этой опцией. Вам необходимо перейти в настройки Cron, выбрать соответствующее задание, открыть его на просмотр и нажать на кнопку «Выполнить сейчас», таким образом рассылка запуститься. 

Отслеживание выполнения происходит также, как и в случае автоматического запуска задания в Cron.

 

Раздел "Монитор"


В разделе "Монитор" представлен список текущих выполняющихся заданий, а также заданий которые стоят в очереди на выполнение, сгруппированные по потокам. Вы можете сбросить очередь потоков, в случае если вы точно знаете что задачи завершились не корректно, и задача висит в очереди. Но это не рекомендуется, в любом случае если задание зависло оно будет автоматически завершено в течение 4-х часов.

Система автоматической проверки корректного выполнения заданий в CRON

Начиная с версии 1.9.6 появилась возможность установить сигнализатор на те задания CRON, которые выполнились некорректно. Например, вы настроили CRON и какое то время он выполнялся корректно, но потом стал выдавать ошибку. В случае если у вас включен сигнализатор то: данное задание подсветится розовым цветом в общем списке заданий, администратор системы увидит напоминание и получит письмо на свою электронную почту о том, что произошла ошибка. При обновлении системы до 1.9.6 сигнализаторы на существующие задания установятся автоматически, но администратор может отключить их.

photo photo

Опытные админстраторы могут также выставить условие, которое будет проверять результат выполнения CRON не только на критические ошибки, но и на  присутствие необходимого им текста. Для этого необходимо использовать поле "Результат скрипта". Например, "Результат скрипта" - "Содержит" - "Done". В случае, если условие выполняется, скрипт работает корректно.

 

Смотрите также:

Импорт с помощью системы CRON

Экспорт с помощью системы CRON



comments powered by HyperComments

+ сегодня

компаний уже выбрали Клиентскую базу!
Узнайте, почему.

  • компания
  • компании
  • компаний
  • выбрала
  • выбрали
  • выбрали

Создайте собственный аккаунт прямо сейчас! Бесплатно! Создать аккаунт