安装debase
在项目根目录下运行
gem install debase
安装debug
在项目根目录下运行
gem install ruby-debug-ide
关闭防火墙
如果发现链接有问题再执行这部
chkconfig iptables off
启动应用
脚本格式:rdebug-ide --debug --host {ip} --port {port}-- {script/serever}
如下脚本格式:
rdebug-ide --debug --host 10.20.96.234 --port 9090 -- rails s -p 10601
{ip} 为服务的IP 如果不指定就会开启为本地IP,这样不能远程访问。这个IP也可以指定为0.0.0.0使下面的端口为共享端口
{port} 为开启的debug端口
{script/serever} 为运行业务的脚本
说明: rails不能用 -d命令作为deamon启动
在应用的bin目录下执行如上脚本(在启动前确保应用已经停止)
执行上面的命令输出
Fast Debugger (ruby-debug-ide 0.4.22, debase 0.0.9) listens on 10.20.96.234:9090
表示已经启动
这个时候表示debug程序已经就绪啦,等待IDE端来进行连接触发ruby脚本的运行。这里说明一下,rdebug-ide启动后,并不会马上运行脚 本,这个和Java的Remote Debug不一样。只有IDE端连接到调试端口才会触发脚本运行,这个很好理解,如你的一个脚本,打印一些信息,如果rdebug-ide启动后就允许脚 本,那么就马上退出啦,谈不上调试,所以等待IDE连接后才执行脚本是正确的。所以rdebug-ide运行后,你此刻还不能通过浏览器访问该应用。
配置rubymine
1、选择:run-》edit configurations
2、创建一个远程debug
3、配置远程连接
配置说明: Name:远程连接的名字
Remote host :rails服务的IP
Remote port : rails服务开放的debug端口
Remote root folder: 远端的rails服务的工程应用的根目录
Local port:本地端口
Local root folder: 本地开发工程的根目录
4、点击OK就保存
5、启动debug
6、检查是否配置好
如果服务端出现下面输出表示配置成功
下面就可以开始打断点调试了