2013-05-25 63 views
3

从薄到独角兽。 Unicorn在我的开发机器(Mac OSX)上运行良好,但在Heroku上出现以下消息(不同的PID,0到2之间的不同工号)reaped #<Process::Status: pid 564 exit 1> worker=0。日志中没有其他消息指出问题所在。此消息表明什么以及如何对其进行故障排除?独角兽在Heroku上持续收割

Procfile: 
    web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb 

Unicorn.rb: 
    worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3) 
    timeout 15 
    preload_app true 

    before_fork do |server, worker| 

    Signal.trap 'TERM' do 
     puts 'Unicorn master intercepting TERM and sending myself QUIT instead' 
     Process.kill 'QUIT', Process.pid 
    end 

    defined?(ActiveRecord::Base) and 
     ActiveRecord::Base.connection.disconnect! 
    end 

    after_fork do |server, worker| 

    Signal.trap 'TERM' do 
     puts 'Unicorn worker intercepting TERM and doing nothing. Wait for master to sent QUIT' 
    end 

    defined?(ActiveRecord::Base) and 
     ActiveRecord::Base.establish_connection 
    end 
+0

我打了同样的问题..没有你找到解决方案?下面的污点建议并不适用于我。 –

+0

什么似乎解决了它(我正在尝试很多事情)正在评论“preload_app true”行。让我知道它是否适用于您,我会将其作为正式答案。 –

回答

0

这是一个非常晚的答复,如果仍然开放,您可以尝试以下方法,一定要有`RAILS_ENV1正确设置在Heroku

web: bundle exec unicorn -p $PORT -E $RAILS_ENV -c ./config/unicorn.rb