CRON. Забивается журнал ошибок и "слетает" сайт.
Приветствую.
Раз в минуту CRON долбит сниппет, который ищет в пользовательской таблице запись со значением status = 0. Такая запись появляется примерно 10/15 раз в день.
Всё работает, как надо. Задача выполняется, однако стал замечать много ошибок связанных с кэшом в журнале, например:
Но и это пол беды. Иногда стали слетать сниппеты (то-есть вообще перестают работать, даже самые простенькие сниппеты). Методом «тыка» понял, что слетают они, если что-то изменять в сниппетах или ресурсах параллельно с работой CRON.
Лечится это только полной очисткой папки /cache/.
Использую CronManager, и уже решил было попробовать уйти от него (вынести сниппет в отдельный файл и работать напрямую с ним через CRON), но встретил подобные проблемы и если работать напрямую: Вот вопрос на modx.pro
Буду рад любой информации, так как чистить папку /cache/ 100 раз в день уже надоело :)
Благодарю.
Раз в минуту CRON долбит сниппет, который ищет в пользовательской таблице запись со значением status = 0. Такая запись появляется примерно 10/15 раз в день.
Всё работает, как надо. Задача выполняется, однако стал замечать много ошибок связанных с кэшом в журнале, например:
[2016-05-31 11:03:59] (ERROR @ /index.php) Error caching script elements/modsnippet/69
[2016-05-31 11:04:02] (ERROR @ /index.php) Error caching script elements/modsnippet/173
[2016-05-31 11:04:02] (ERROR @ /index.php) Error caching script elements/modsnippet/72
[2016-05-31 11:04:02] (ERROR @ /index.php) Error caching script elements/modsnippet/69
Но и это пол беды. Иногда стали слетать сниппеты (то-есть вообще перестают работать, даже самые простенькие сниппеты). Методом «тыка» понял, что слетают они, если что-то изменять в сниппетах или ресурсах параллельно с работой CRON.
Лечится это только полной очисткой папки /cache/.
Использую CronManager, и уже решил было попробовать уйти от него (вынести сниппет в отдельный файл и работать напрямую с ним через CRON), но встретил подобные проблемы и если работать напрямую: Вот вопрос на modx.pro
Буду рад любой информации, так как чистить папку /cache/ 100 раз в день уже надоело :)
Благодарю.
Комментарии: 6
Такое бывает когда скрипт крона запускается от юзера, которому не принадлежать файлы сайта. Например, от root.
Он сгенерирует кэш, а обычный юзер сайта потом не может его перезаписать.
Он сгенерирует кэш, а обычный юзер сайта потом не может его перезаписать.
Оно самое!
Дело было именно в этом. Большое спасибо
Дело было именно в этом. Большое спасибо
Добрый день!
Столкнулся с такой же проблемой. Очень выносит мозг )
Как вы её победили?
Столкнулся с такой же проблемой. Очень выносит мозг )
Как вы её победили?
Смотрите процесс php, должен быть от того же юхера что и php сайта. Возможно у вас крон запущен от рута
Но как запустить крон задачу не от рута, а от другого пользователя?
можно посмотреть файлик крона и понять, что 6ой параметр — это пользователь. наверное, вам нужно поменять на www-data, но это не точно :) надо смотреть в системе
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.