Планировщик Heroku не создает журнал
Недавно я настроил Планировщик и включил мою команду rake, "rake cron_jobs: my_task".
Когда я тестирую его с помощью
"heroku run rake cron_jobs: my_task", он отлично работает.
Планировщик также утверждает, что он запускался, когда он был предназначен, и его планируется запустить снова, но там нет регистрации, связанной с процессом, как https://devcenter.heroku.com/articles/scheduler#inspecting-output говорит там должен быть.
'heroku ps' не показывает никаких запланированных динамиков, 'heroku logs --ps scheduler.1' не имеет выхода.
Что мне не хватает?
Ответы
Ответ 1
У меня была аналогичная проблема (с использованием новой службы Heroku PGBackups) и нашел для нее неожиданное объяснение.
Задача rake rake pgbackups-archive
не была запущена планировщиком Heroku, но она работала, когда я запускал ее вручную из командной строки.
В моем случае я заметил, что мои проблемы были вызваны разным часовым поясом, используемым интерфейсом Heroku (который, кажется, не является CET). Поэтому моя рейк-задача, которая должна выполняться в определенное время ежедневно, никогда не срабатывала, поскольку я менял конкретное время в течение дня на тестирование, и я всегда пропустил указанное время в часовом поясе Heroku.
Вы можете попробовать запустить задачу каждые десять минут и посмотреть, работает ли она.
Ответ 2
Вот что я делаю для этого:
Просто в свои задачи включайте операторы put, чтобы знать, когда он начал работать, а когда закончил.
Кроме того, вы можете включить оператор put в выполненную работу.
Я использую бумажную пробную версию, которая является очень мощным инструментом ведения журналов, в котором вы можете искать и находить любой конкретный журнал в определенное время. Кроме того, вы можете добавить предупреждение, когда ваше задание по расписанию начало выполняться.