当capistrano开始时,独角兽失败了

时间:2012-08-11 01:59:58

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

当我通过capistrano任务启动独角兽并尝试访问我的应用程序时,我得到了这个

tarted GET "/" for xx.xxx.xxx at 2012-08-11 01:38:31 +0000
Processing by HomeController#index as HTML
  Rendered home/index.html.erb within layouts/application (0.1ms)
Completed 500 Internal Server Error in 87ms
** [Bugsnag] No API key configured, couldn't notify

ActionView::Template::Error (undefined method `split' for nil:NilClass):
    32:               </form>
    33:             </ul>
    34:           <ul class="nav pull-right">
    35:             <% if user_signed_in? %>
    36:               <li class="dropdown">
    37:                 <a href="#" class="dropdown-toggle" data-toggle="dropdown">
    38:                   <%= current_user.name %>
  app/controllers/application_controller.rb:5:in `current_user'
  app/controllers/application_controller.rb:9:in `user_signed_in?'
  app/views/layouts/application.html.erb:35:in `_app_views_layouts_application_html_erb__3931886679734892787_26070680'

除了ActionView::Template::Error之外,unicorn还说没有配置busgnag API密钥,但是我已经在我的root的.bashrc和deploy的.bashrc上设置了密钥(部署也是用户)
但是当我通过像ssh root@server这样的ssh访问服务器并尝试使用相同的命令启动独角兽时,capistrano的任务发布,所以每个都工作正常...
我试图在capistrano上设置root用户并部署用户,use_sudo为true和false ...
我在这里想念的是什么? 感谢

1 个答案:

答案 0 :(得分:1)

您确定手动运行时是否正在生产模式下运行?当你有一个nil变量时,undefined method xxxx'为nil:NilClass`。通常代码如......

Articles.each do |article|
  article.title
end

将失败并出现相同的错误,因为db在每个环境中的填充方式不同。我建议查看第5行application_controller.rb,看看生产和开发中是否存在该变量。

另外,请确保您的production.rb文件中提供了bugsnap api密钥。