2017-02-01 22 views
0

Каков наилучший способ отладки замедленного задания, не перезагружаемого?delayed_job не будет перезагружен

перезапуск показывает, что он перезапускает обработку, но тогда grepping не показывает процессов.

$ RAILS_ENV=production ruby script/delayed_job -n3 --pid-dir=/dem/pids/ restart 
Warning: no instances running. Starting... 
Warning: no instances running. Starting... 
Warning: no instances running. Starting... 

$ ps -aux | grep delay 
produser 3471 0.0 0.0 7232 612 pts/4 S+ 10:28 0:00 tail -f delayed_job.log 
produser 4059 0.0 0.0 11740 928 pts/0 S+ 10:32 0:00 grep --color=auto delay 

$ RAILS_ENV=production ruby script/delayed_job -n3 --pid-dir=/dem/pids/ restart 
Warning: no instances running. Starting... 
Warning: no instances running. Starting... 
Warning: no instances running. Starting... 

В то время как хвост файла delayed_job.log, он просто показывает перезагрузку и бесшумную работу.

2017-02-01T10:48:04-0800: [Worker(delayed_job.0 host:app pid:6257)] worker started 
2017-02-01T10:48:04-0800: [Worker(delayed_job.1 host:app pid:6267)] worker started 

ответ

0

Я нашел ответ на свой вопрос. регистрируясь здесь, если кто-то найдет в поиске.

Если вы оказываетесь в той же ситуации, попробуйте запустить процесс на переднем плане (а не фон)

RAILS_ENV=production ruby script/delayed_job --pid-dir=/dem/pids/ run

выход был:

found unexpected end of stream while scanning a quoted scalar at line 165 column 14

googling содержит результат из источника dj: Malformed yaml in handler could crash all delayed_job workers


Это было отличное лидерство.

  • Если ваш обработчик/данные искажены, то DJ будет бесшумно терпеть неудачу.
  • Если вы обрабатываете электронные письма в DJ, то у вас наверняка будут массивные столбцы обработчиков, потому что если кто-то переадресует электронное письмо, поток будет включен. Хлоп.

Что я сделал? Я запросил delayed_jobs для нашего обработчика электронной почты.

Каков был результат? 1 работа с freaking массивный обработчик.

также может быть, возможно, только query for the longest column.

После удаления задания и выполнения команды run он начал обрабатывать как обычно.