Назад | Перейти на главную страницу

Задание Cron продолжает перезапускаться…?

Я настроил задание cron каждые 12 часов, обновляя таблицу mysql. Проблема в том, что задание cron перезапускается случайным образом каждые 15 минут. Он не останавливает предыдущий, а вместо этого работает поверх него. Сегодня, когда я проверил, было 13 рабочих мест, делающих то же самое.

Что происходит? Я на Linux-сервере и настроил задание Cron в cPanel. Любая помощь будет принята с благодарностью.

  1. Вы уверены, что сама cronjob выполняется каждые 15 минут? Проверьте файл журнала cron, чтобы увидеть, действительно ли ваша cronjob выполняется каждые 15 минут. Файл журнала cron часто находится в / var / log / cron или может регистрироваться в / var / log / messages. Однако вам может потребоваться сначала включить файл журнала cron в /etc/syslog.conf (или /etc/rsyslog.conf).

  2. Получите вывод из сценария. По умолчанию в большинстве систем любой вывод этого задания cron отправляется по электронной почте владельцу задания cron. Я предпочитаю писать вывод cron и ошибка в файл журнала. Измените задание cron, чтобы оно выглядело так:

    0 0,12 * * * / usr / bin / wget lazysundays.com >> /var/log/wget.cron.log 2> & 1

Посмотрите на вывод файла журнала, и вы должны найти ошибку.

Может ли быть так, что время ожидания wget истекает и повторяет попытки, и повторные попытки, и повторные попытки снова?

дать параметр wget --tries 1 поэтому он пытается только один раз, добавьте к нему --timeout=600 или около того - чтобы он не сдавался слишком быстро, и в верхней части вашего скрипта на сервере - добавьте что-то, что гарантирует, что php / pearl / что-то еще не истечет слишком быстро на стороне сервера.