Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails “如何调试”;错误R10(启动超时)";关于heroku的问题_Ruby On Rails_Heroku - Fatal编程技术网

Ruby on rails “如何调试”;错误R10(启动超时)";关于heroku的问题

Ruby on rails “如何调试”;错误R10(启动超时)";关于heroku的问题,ruby-on-rails,heroku,Ruby On Rails,Heroku,我感兴趣的是,在这60秒内,为了了解阻止发射的原因,需要采取哪些步骤,以及通常的原因 这就是日志文件的外观(没有说明实际发生了什么) 我认为,如果至少有一个堆栈跟踪显示,当进程被终止时,它将非常有用 发生这种情况时,您会做什么/检查什么? PS:我不是在寻找我的案例的答案,而是一般的步骤,每个人都可以从中受益。也许你可以尝试在本地运行它来检查发生了什么?您可以使用本文提供的代码来执行此操作: 正如讨论中所解释的,你应该看看你需要的宝石的数量,也许可以先调整一下。如果引导负载需要60秒以上,您还

我感兴趣的是,在这60秒内,为了了解阻止发射的原因,需要采取哪些步骤,以及通常的原因

这就是日志文件的外观(没有说明实际发生了什么)

我认为,如果至少有一个堆栈跟踪显示,当进程被终止时,它将非常有用

发生这种情况时,您会做什么/检查什么?


PS:我不是在寻找我的案例的答案,而是一般的步骤,每个人都可以从中受益。

也许你可以尝试在本地运行它来检查发生了什么?您可以使用本文提供的代码来执行此操作:

正如讨论中所解释的,你应该看看你需要的宝石的数量,也许可以先调整一下。如果引导负载需要60秒以上,您还可以查看此gem:
.

我通常首先通过以下代码(initializers/debug_require.rb)找出哪些gem需要花费很长时间:

并设置heroku config:adddebug_REQUIRE=1


查看日志输出以了解缓慢的需求。

感谢提示,该应用程序在本地运行良好,并且在我重新设置开发分支时,问题就消失了,因为该分支的Gemfile中几乎没有更新的Gem。同样,该应用程序在其他服务器上运行时没有出现问题。。所以,所有的逻辑都失败了,这就是为什么我在这里询问一些技巧。这几乎肯定会出现在Heroku ruby文档的某个地方。不是吗?!Rails 4在调用@first时出现以下错误:
/app/config/initializers/debug_require.rb:7:警告:从顶级访问类变量
注意:本文中的方法也很有用:
2013-01-14T10:34:17+00:00 app[web.1]: => Booting Thin
2013-01-14T10:34:17+00:00 app[web.1]: => Call with -d to detach
2013-01-14T10:34:17+00:00 app[web.1]: => Rails 3.2.2 application starting in production on http://0.0.0.0:52216
2013-01-14T10:34:17+00:00 app[web.1]: => Ctrl-C to shutdown server
2013-01-14T10:34:23+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
2013-01-14T10:34:23+00:00 heroku[web.1]: Stopping process with SIGKILL
2013-01-14T10:34:24+00:00 heroku[web.1]: Process exited with status 137
2013-01-14T10:34:24+00:00 heroku[web.1]: State changed from starting to crashed
if ENV['DEBUG_REQUIRE']
  require 'benchmark'

  def require(file)
    @@first ||= Time.now
    rc = false
    ts = Benchmark.measure do
      rc = super
    end
    if ENV['DEBUG_REQUIRE'].to_f < ts.total
      total = ts.format("%t require #{file}")
      from_start = (Time.now - @@first).to_i
      $stdout.puts "#{total} (#{from_start} second(s) from start)"
    end
    rc
  end
end
require File.expand_path('../initializers/debug_require', __FILE__)