2013-08-15 3 views
5

Я использую Rails 4, sidekiq 2.13.1, каждый раз, когда cron-скрипт запускается каждые 2 минуты. При первом выполнении ошибок нет ошибок, а все последующие ошибки. Я получил эту ошибку только в производстве env. Мой рабочий найдет в приложении/рабочих. Я включил его следующую строку в application.rb:sidekiq + when + unicitorn uninitialized constant ClassWorker production env

config.eager_load_paths += %W(#{config.root}/app/workers) 

Ошибка:

2013-08-15T12:34:05Z 31102 TID-oh1d0 WARN: {"retry"=>true, "queue"=>"default", "class"=>"AllGlobalWorker", "args"=>[], "jid"=>"c8f5827813277c890b4a621e", "enqueued_at"=>1376570045.3903732} 
2013-08-15T12:34:05Z 31102 TID-oh1d0 WARN: uninitialized constant AllGlobalWorker 
2013-08-15T12:34:05Z 31102 TID-oh1d0 /home/shared/bundle/ruby/2.0.0/gems/activesupport-4.0.0/lib/active_support/inflector/methods.rb:226:in `const_get' 

Любые идеи для этого? Спасибо.

ответ

2

Решил его, добавив эти строки в файл конфигурации production.rb и переместил мои рабочие и классы зависимостей в папку lib. Это конфиг:

config.eager_load = true 
config.eager_load_paths += %W(#{config.root}/lib) 
config.autoload_paths += %W(#{config.root}/lib) 
+1

я думаю, вам нужно только иметь 'config.autoload_paths + =% W (# {config.root}/рабочие)' для меня я держу рабочих in'workers' папку –