Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад
ПДД Яндекс и некорректная работа CRON, видимо.
Поддержка утверждает, что на стороне продукта все ок, в maillog.txt попадают письма все, и вероятно есть проблемы с работой cron (хотя резервные копии по крону успешно создаются, например)
Но вот msmtp.log ничем не наполняется, в нет ни ошибок подключения, ни успешных подключений. В таблице b_event они со статусом F.
Может кто-то сталкивался с подобной ситуацией?
Вообщем, битва с 3 сентября все же выиграна) Как оказалось стоило не вручную добавлять в cron команду, а в через «управление масштабированием» в админке самого сайта включить крон.
Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.
А письма тогда как ходят?)) Ничего с кронтабом не делал, поддержка сказала что достаточно включить в веб-окружении крон.
# Ansible managed
# cron tasks for site kreslobum.ru
#
А письма тогда как ходят?)) Ничего с кронтабом не делал, поддержка сказала что достаточно включить в веб-окружении крон.
# Ansible managed
# cron tasks for site kreslobum.ru
#
Неужели путь неверный. не сходится согласно этой статьи. https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=2943&LESSO.
Информации о том, успешно или нет, там не будет, там будет лишь сам факт запуска.
Дальше Вы можете проверить сам запуск, в консоли:
Цитата |
---|
Олег Дыбкин написал: |
Цитата |
---|
Олег Дыбкин написал: |
Всё это уже есть по умолчанию, при установке bitrixn-env.
Но, есть вопрос. Точно ли при такой настройке выполняются на кроне именно все агенты?
В описании указано, что так выполняются только непериодические агенты.
Цитата |
---|
После этого на хитах будут выполняться только периодические агенты. |
Цитата |
---|
скрипт работает из cron и приводит к выполнению только непериодических агентов. |
Цитата |
---|
red_eye написал: Точно ли при такой настройке выполняются на кроне именно все агенты? |
UPD.
НО в списке агентов не исполняются (скрин)! Т.е. последнее время исполнения остается старым.
А то уже голова поломалась, искать в чем проблема.
Откатывать, как оказалось не обязательно. Нужно понять что cron работает очень специфически.
Значит что в итоге:
После добавления скриптов в crontab перезапустить по инструкции выше. Мне помогло. Может кому-то другому поможет тоже.
Написанная инструкция актуальна для BitrxVM.
Выполнение всех агентов на cron
Добрый день, уважаемые коллеги!
Вначале немного представлюсь. Меня зовут Рыжонин Николай, в «1С-Битрикс» я курирую направление производительности продуктов компании. Если у вас есть вопросы, предложения или пожелания, касающиеся производительности, обращайтесь e-mail: rns@bitrix.ru
Данная тема уже не раз подымалась ( например тут ), но тем не менее все таки решил опубликовать обобщенное решения для выполнения всех агентов из под cron.
Для начала полностью отключим выполнение агентов на хите. Для этого выполним следующую команду в php консоли.
Создаем файл проверки агентов и рассылки системных сообщений /bitrix/php_interface/cron_events.php
И добавляем данный скрипт в cron
После этого все агенты и отправка системных событий будут обрабатывается из под cron, раз в 5 минут. Чтобы не увеличивалась очередь отправки почтовых сообщений, советую изменить параметр отвечающий за количество почтовых событий обрабатываемых за раз. Для этого выполняем в php консоли следующую команду
Не могу понять, что делает флаг «agents_use_crontab»
1// Если мы выполняем COption::SetOptionString(«main», «agents_use_crontab», «Y»), то на хитах остануться работать только периодические агенты (т.е. эта строка подключает крон для непериодических агентов?).
2// А если выполним COption::SetOptionString(«main», «agents_use_crontab», «N»), то что. по смыслу ведь вроде получается наоборот: мы ОТКЛЮЧАЕМ, а не включаем использование крона.
Советую, чтобы не забивать себе голову, использовать модуль Агенты на крон е.
письма приходят, если раскомментировать то SUCCESS_EXEC =F
Подскажите пожалуйста какие могут быть причины.
на выходе html-код и ошибка
Fatal error: Class ‘Bitrix\Mail\Message’ not found in /home/bitrix/www/bitrix/modules/main/lib/mail/eventmessagethemecompiler.php(273) : eval()’d code on line 26
Не сталкивались?
Проверка на наличие неотправленных сообщений:
Ошибка! Есть ошибки при отправке системных почтовых сообщений, число неотправленных сообщений: 4598 Определена константа BX_CRONTAB_SUPPORT в /bitrix/php_interface/dbconn.php, при этом должен быть настроен вызов агентов на cron.
Помогите, сделано всё по вашей инсрукции
Елена Пилюшенко, в /etc/crontab например
только синтаксис тогда нужен такой
или создать(отредактировать) соответствующий файлик в /etc/cron.d/
Солдатов Игорь, похожу с обновлением есть изменения и этот прием с двумя «CAgent::CheckAgents();» не катит
попробуйте закоментировать первый //CAgent::CheckAgents();
1С-Битрикс: Управление сайтом 17.5.4 Серв на centos, веб-окружение битрикс. Все завелось без проблем. Спасибо автору! |
Силуянов Александр,
Сначала сделал файл как написано в секции «Создаем файл проверки агентов и рассылки системных сообщений /bitrix/php_interface/cron_events.php (обновлен 10.09.2015)»
Как добавить в крон?
nano /etc/crontab
И вперед.
Царев Дмитрий, странно. На свежей виртуалке от битрикса нет файла crontab.
Он так и пишет: no crontab for foot
Царев Дмитрий, установил модуль «Агенты на кроне» из маркетплейса.
В его настройках, внизу написано:
Настройка cron
cron — это программа на сервере, которая запускается раз в минуту и выполняет ваши команды в указанное время.
Для работы агентов на кроне необходимо настроить, чтобы стандартный файл Битрикса /bitrix/modules/main/tools/cron_events.php вызывался, например, раз в минуту.
В Виртуальной машине Битрикса ничего не надо делать, там уже есть соответствующая настройка для каждого сайта (файл /etc/crontab). На специализированных хостингах под Битрикс тоже могут быть заранее сделаны настройки.
У вас Виртуальная машина Битрикса версии 7.2.2.
Вместо /usr/bin/php, у вас может быть другой путь. Узнайте у техподдержки вашего хостинга, как правильно настраивать крон, или найдите в часто задаваемых вопросах на сайте хостинга.
Важно. Настройка крона на вашем сервере — это обязанность администратора сервера или техподдержки хостинга. В обязанности разработчика модуля не входит.
_____________________
Может там и не надо ни чего настраивать.
Как вообще проверить отрабатывает ли агент на кроне?
Переключение агентов на cron
Цитата |
---|
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад. |
Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:
define(‘BX_CRONTAB_SUPPORT’, true);
После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.
(замените /var/www на свой путь к корню сайта).
Цитата |
---|
Убираем из файла /bitrix/php_interface/dbconn.php определение следующих констант: |
define(«BX_CRONTAB_SUPPORT», true);
define(«BX_CRONTAB», true);
if(!(defined(«CHK_EVENT») && CHK_EVENT===true)) define(«BX_CRONTAB_SUPPORT», true);
в результатах теста пишут наоборот установить
по инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.php
Подскажите пожалуйста как правильно настроить?
Цитата |
---|
Владимир Чадаев написал: Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:define(‘BX_CRONTAB_SUPPORT’, true);После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.(замените /var/www на свой путь к корню сайта). |
Цитата |
---|
Владимир Чадаев написал: в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить? |
Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:
define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);
Переключение агентов на cron
Цитата |
---|
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад. |
Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:
define(‘BX_CRONTAB_SUPPORT’, true);
После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.
(замените /var/www на свой путь к корню сайта).
Цитата |
---|
Убираем из файла /bitrix/php_interface/dbconn.php определение следующих констант: |
define(«BX_CRONTAB_SUPPORT», true);
define(«BX_CRONTAB», true);
if(!(defined(«CHK_EVENT») && CHK_EVENT===true)) define(«BX_CRONTAB_SUPPORT», true);
в результатах теста пишут наоборот установить
по инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.php
Подскажите пожалуйста как правильно настроить?
Цитата |
---|
Владимир Чадаев написал: Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:define(‘BX_CRONTAB_SUPPORT’, true);После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.(замените /var/www на свой путь к корню сайта). |
Цитата |
---|
Владимир Чадаев написал: в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить? |
Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:
define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);
Устранение ошибок CMS Битрикс
Опция «Проверка системы» в CMS Битрикс позволяет проверить соответствие настроек хостинга требованиям CMS и вашего сайта. При запуске этой опции на хостинге Timeweb, Битрикс, как правило, приводит несколько ошибок и замечаний. В этой статье мы рассмотрим, как их исправить.
Отправка почты
Речь идет о двух параметрах: «Отправка почты» и «Отправка почтового сообщения больше 64Кб».
Уведомление: Ошибка! Не работает
Эта ошибка возникает, если вы используете хостинг на тестовом периоде — до оплаты услуги почта недоступна. Как только хостинг будет оплачен, почта заработает.
Режим работы MySQL
Уведомление: Ошибка! innodb_strict_mode=ON, требуется OFF. Переменная sql_mode в MySQL должна быть пустая, текущее значение: NO_ENGINE_SUBSTITUTION
Эта ошибка критична. Она может привести к блокировке запросов к базе данных, что практически означает остановку работы сайта.
Решение:
Необходимо внести изменения в файлы конфигурации Bitrix, в которых задаются параметры базы данных, и указать в них нужные значения. Отредактировать файлы можно, например, с помощью Файлового менеджера.
После этого проверка Bitrix пройдет успешно.
Размер стека и pcre.recursion_limit
Уведомление: Замечание: Возможны проблемы в работе с длинными строками из за системных ограничений
Это замечание некритично и, как правило, на работе сайтов не сказывается, однако оно может влиять на обработку очень длинного текста, например, если в нем сотни тысяч символов.
Этот параметр влияет на возможность обработки строк регулярными выражениями. Лимит по умолчанию установлен достаточно большой, чтобы можно было обработать практически любой контент на сайте, но для устранения замечания можно дополнительно внести изменения.
Решение:
Выполнение агентов на cron
Уведомление: Замечание: Агенты выполняются на хитах, рекомендуется перенести их выполнение на cron
Это замечание некритично. В Битрикс предусмотрен внутренний планировщик задач (агентов). Данное замечание влияет на то, насколько точно по времени сработают запланированные задачи. Грубо говоря, скрипты сайта выполняются, только когда его страницы кто-то посещает. Если нет посещений, то и таймер работать не будет. Cron позволяет полностью решить проблему с планированием задач.
Решение:
Для этого добавьте в файл /public_html/bitrix/php_interface/dbconn.php строку:
1. В разделе Crontab нажмите «Добавить новую задачу» и задайте удобное имя для задачи.
2. В пункте «Исполнитель» выберите «Исполняемый бинарный файл».
3. В пункте «Путь до файла» укажите команду следующего вида:
4. В пункте «Периодичность» выберите «Каждую минуту».
Уведомление: Ошибка! Не настроен запуск cron_events.php на cron
Эта ошибка может возникнуть, если в пункте выше вы только добавили константу, но не добавили задачу cron. Без настройки задачи в crontab будет остановлена часть агентов, в том числе с сайта перестанет отправляться почта. Письма будут накапливаться в очередь и отправляться по частям после устранения ошибки.
Решение:
Выполните приведенную выше инструкцию по добавлению задачи cron, и ошибка будет устранена.
Обязательные параметры PHP
Уведомление: Ошибка! Значение max_input_vars должно быть не ниже 10000
Эта ошибка не влияет на работоспособность сайта напрямую, но может отразиться на работе с большими формами в административной панели. При работе с инфоблоками низкое значение параметра max_input_vars может вызвать проблемы с сохранением настроек, поэтому система выделяет эту ошибку как критическую.
Решение:
Необходимо добавить следующую строку в файл /public_html/.htaccess :