Перестал работать CRON

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 18 мая 2021 в 17:18
Доброго времени суток,

Перестал срабатывать CRON на последней версии движка, до этого срабатывал на WGET, после обновления версии движка какое то время.
Сейчас вообще замолчал, ни чего не менялось, не добавлялось.
На ровном месте.

По хостингу все работает, обрабатывает сторонние скрипты.

Ошибка при выполнении через php на мыло:

Parse error: syntax error, unexpected '{' in /var/www/xxx/data/www/xxxi.ru/system/core/core.php on line 308

Как её победить? Вычислить, что ему не нравиться?
#2 18 мая 2021 в 18:22
Это метод: getModel
github.com/instantsoft/icms2/blob/master/system/core/core.php#L302

Возможно дело в ваших дополнениях, что у вас стоит нестандартного?
#3 18 мая 2021 в 18:48
Так через wget не должно работать без правок. См. доки docs.instantcms.ru/manual/settings/scheduler
#4 18 мая 2021 в 19:17

Parse error: syntax error, unexpected '{' in /var/www/xxx/data/www/xxxi.ru/system/core/core.php on line 308
Как её победить? Вычислить, что ему не нравиться?

DeusSpa
А сайт у вас работает? Если синтаксическая ошибка у вас сейчас в ядре, то не только cron должен не работать.
А вообще пост на развитие интуиции.
#5 19 мая 2021 в 02:56


Parse error: syntax error, unexpected '{' in /var/www/xxx/data/www/xxxi.ru/system/core/core.php on line 308
Как её победить? Вычислить, что ему не нравиться?

DeusSpa
А сайт у вас работает? Если синтаксическая ошибка у вас сейчас в ядре, то не только cron должен не работать.
А вообще пост на развитие интуиции.

@IamB

Сайт работает как часики, CRON сам по себе живет
#6 19 мая 2021 в 03:04
Повторюсь
1) Работало на php потом стал мозг делать это после обновы — перевел на wget. Временно
2) Работало на wget забил забыл, но тут о странное и wget не стал работать
3) Ни чего не делал и не ставил. Просто перестали выполняться
4) Проверил крон на хосте — работает, Проверил сторонний скрипт — работает.
5) Ситуация где то в сайте.
6) В ручную выполняет по кнопке запустить в админке норм
7) Запустить в браузерное строке сайт/cron.php — Все выполняет.

Без вмешательства молчит.

Вот и прошу помощи найти или как найти виновника.
#7 19 мая 2021 в 03:06


Это метод: getModel
github.com/instantsoft/icms2/blob/master/system/core/core.php#L302

Возможно дело в ваших дополнениях, что у вас стоит нестандартного?

@Evg

В том то и дело работал и сам по себе не стал.
Отключал все сторонние кроны, молчит.
#8 19 мая 2021 в 07:38

CRON сам по себе живет

DeusSpa
То есть вы хотите сказать, что при работе сайта файл /system/core/core.php не задействуется?
---
Хостеру пробовали вопросы задавать?
#9 19 мая 2021 в 11:07
Несколько раз похожая проблема была с неработающим cron и всё эти разы проблема была в неправильной команде, в настройках планировщика на хостинге.

в зависимости от версии php и команда другая. Скорее всего на хостинге были какие-то изменения.
#10 19 мая 2021 в 11:13
docs.instantcms.ru/manual/settings/scheduler:
Однако, при таком способе следует понимать, что для PHP CLI по-умолчанию нет лимитов на время выполнения скрипта и все «долгие» задачи планировщика успеют выполниться. В случае если вы закомментируете указанную выше строку и команда для CRON у вас будет другая, то вы должны сами следить за лимитами в конфигурации PHP. За это отвечают директивы max_execution_time и max_input_time.
Пробовал давно через wget, создавало кучу файлов на хостинге, в документации написано про max_execution_time и max_input_time. Лучше использовать команды обычные, не wget.
#11 19 мая 2021 в 15:17


CRON сам по себе живет

DeusSpa
То есть вы хотите сказать, что при работе сайта файл /system/core/core.php не задействуется?
---
Хостеру пробовали вопросы задавать?

@IamB

Не хочу сказать ) А хочу сказать, что Крон сам по себе работал отвалился, снова работал и отвалился окончательно.
#12 19 мая 2021 в 15:24
Видимо меня не до конца поняли...

Крон на хостинге работает — писал выше, выполняет все крон задания сторонние безупречно.
По путям все ок, так как проверил в корень сайта свой крон обрабатывает задание.
Повторю — все работало и резко замолчало. Со стороны хостера изменений не было.

Все что выше, спасибо вам ребята, но все бонально и проверено.
Естественно в файле крон комментировалась строка для Вгета
Естественно пути проверены на всякий.
Проверены расширения на работоспособность.

По поводу сторонний дополнений — ни чего не добавлял, не обновлял все работало пока не встало...

Может быть стоит по другому задать вопрос:

Как вывести ошибки выполнения крон, чтобы увидеть во что он упирается?

То что присылает на почту сообщение крон — не дает ответа конкретного, так как это не ошибка syntax error, unexpected '{' виновна
иначе бы везде не работало...

error_reporting(E_ALL);
ini_set('display_errors', 1);

не помогает вывести

Дело не вгете или php оба метода пробовалось (комментировалось) менялось. Попытки запустить через планировщик приводят к
Parse error: syntax error, unexpected '{' in /var/www/xxx/data/www/xxx.ru/system/core/core.php on line 308
Типа иди и синтаксис проверь… ))))
Вручную выполняет тыком в админке без ошибок
Запросом сайт/cron.php выполняет все задания без ошибок — но я же не могу сам вечно тыкать каждые 5 минут ))
#13 19 мая 2021 в 15:25


docs.instantcms.ru/manual/settings/scheduler:

Однако, при таком способе следует понимать, что для PHP CLI по-умолчанию нет лимитов на время выполнения скрипта и все «долгие» задачи планировщика успеют выполниться. В случае если вы закомментируете указанную выше строку и команда для CRON у вас будет другая, то вы должны сами следить за лимитами в конфигурации PHP. За это отвечают директивы max_execution_time и max_input_time.
Пробовал давно через wget, создавало кучу файлов на хостинге, в документации написано про max_execution_time и max_input_time. Лучше использовать команды обычные, не wget .

@noname

Нужно выполнять так и не будет файлов
/usr/bin/wget -o /dev/null --delete-after
#14 19 мая 2021 в 15:58
Добавлю на движке версии 2.13.0 крон на этом же хостинге с такими же параметрами с такой же версией php работает отлично
Но там и Core.php совершенно другой
#15 19 мая 2021 в 16:13
Если вручную запускается, как вы сможете отличить ошибку? Никак. Начать следует с исправления синтаксиса. Возможно она и не в core.php.
Если при такой ошибки сайт работает, значит ошибка в каком то обработчика, типа Аякса. Испавьте ошибку, а потом посмотрите в ней дело или нет. Или откатите систему и обновите заново
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.