【问题标题】:Debugging foreman started app with byebug. Remote debugging connects but shows no prompt调试工头使用 byebug 启动应用程序。远程调试连接但没有提示
【发布时间】:2016-04-22 22:20:36
【问题描述】:

我有领班启动多个应用程序。我已经设置了带有端口的 byebug 服务器

#config/initializers/byebug.rb
if Rails.env.development?
  require 'byebug/core'
  #Byebug.wait_connection = true

  def find_available_port
    server = TCPServer.new(nil, 0)
    server.addr[1]
  ensure
    server.close if server
  end

  port = find_available_port

  puts "Starting remote debugger..."
  Byebug.start_server nil, port
  puts "Remote debugger on port #{port}"
end

我开始服务

$ foreman start

我看到终端报告的服务启动和端口号:

21:20:58 web.1       | => Ctrl-C to shutdown server
21:20:58 web.1       | Starting remote debugger...
21:20:58 web.1       | Remote debugger on port 54635

我使用远程选项启动 byebug,我得到的只是:

$ byebug -R localhost:54635
Connecting to byebug server...
Connected.

这就是我的问题。 “连接的。”但没有 byebug 提示。此外,我所追求的断点似乎被触发了,但是 byebyg 远程调试什么也没做。

想法?任何人?因为我到处搜索,似乎没有人遇到类似的问题。

我的系统参数:

  • OS X El Capitan 10.11.2
  • 红宝石 2.2.3
  • 导轨 4.1.14
  • byebug 8.2.1
  • 工头 0.78.0

【问题讨论】:

标签: ruby ruby-on-rails-4 remote-debugging foreman byebug


【解决方案1】:

我可以确认@jannolii 的概念自此byebug commit 起有效。另外,我没有注释:

Byebug.wait_connection = true

您拥有的其他一切似乎都有效。将 byebug gem 更新到 10.0,我认为你会很幸运。 :)

【讨论】:

    猜你喜欢
    • 2012-04-11
    • 1970-01-01
    • 2014-07-14
    • 2012-05-09
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多