【问题标题】:Resque workers fail upon startupResque 工作人员在启动时失败
【发布时间】:2012-08-14 11:58:07
【问题描述】:

Resque 工作人员不会在我的 rails 应用程序中本地启动。我输入以下命令来启动一个worker。

COUNT=1 QUEUE=* rake resque:work --trace

我遇到了以下错误。我以前有这个工作,不知道是什么导致了现在出现的错误。

(in /home/omar/Github/brooklin)
** Invoke resque:work (first_time)
** Invoke resque:preload (first_time)
** Invoke resque:setup (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute resque:setup
** Execute resque:preload
rake aborted!
No such file to load -- exception
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:317:in `rescue in depend_on'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:312:in `depend_on'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:225:in `require_dependency'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/railties-3.2.6/lib/rails/engine.rb:439:in `block (2 levels) in eager_load!'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/railties-3.2.6/lib/rails/engine.rb:438:in `each'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/railties-3.2.6/lib/rails/engine.rb:438:in `block in eager_load!'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/railties-3.2.6/lib/rails/engine.rb:436:in `each'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/railties-3.2.6/lib/rails/engine.rb:436:in `eager_load!'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/gems/resque-1.21.0/lib/resque/tasks.rb:54:in `block (2 levels) in <top (required)>'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/home/omar/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:176:in `block in invoke_prerequisites'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `each'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `invoke_prerequisites'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:157:in `block in invoke_with_call_chain'
/home/omar/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/bin/rake:19:in `load'
/home/omar/.rvm/gems/ruby-1.9.3-p194@global/bin/rake:19:in `<main>'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/bin/ruby_noexec_wrapper:14:in `eval'
/home/omar/.rvm/gems/ruby-1.9.3-p194@Brooklin/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => resque:work => resque:preload

下面是我的 lib/tasks/resque.rake 文件。

require 'resque/tasks'
require 'resque_scheduler/tasks'

task "resque:setup" => :environment do
    ENV['QUEUE'] = '*'
end

desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => "resque:work"

task "resque:scheduler_setup" => :environment

我已通过在 config/application.rb 中添加以下内容将 resque.rake 文件添加到加载路径

config.autoload_paths += %W(#{config.root}/lib/tasks/)

感谢您的帮助。

【问题讨论】:

  • bundle exec rake environment resque:work 还能用吗?
  • 不,它没有。它会引发同样的错误。
  • 这是哪个操作系统?你已经安装了redis吗?
  • 这是在 ubuntu 11.10 上,是的,redis 已启动并正在运行。
  • 我已经弄明白了,谢谢你的帮助。

标签: ruby ruby-on-rails-3 resque


【解决方案1】:

输出语句有点误导。

No such file to load -- exception

原来我的一个模型中有require exception,它在抱怨,因为它找不到文件异常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 2015-11-08
    • 1970-01-01
    • 2011-10-27
    相关资源
    最近更新 更多