rails console无法加载

时间:2009-08-03 20:26:55

标签: ruby-on-rails console debugging

今天,我的rails(2.1.0)应用程序非常慢,甚至没有响应。 它间歇性地发生。 所以有时它会起作用,但它又不起作用。

当它不起作用时,我甚至无法加载'脚本/控制台生产'。 我想知道它被困在哪里。 如何逐步加载控制台以便我可以知道导致问题的部分?

感谢。

萨姆

3 个答案:

答案 0 :(得分:1)

如果你能够,请尝试暂时删除所有插件/宝石,看看该应用是否会启动。其中一个可能是问题。

script/console文件包含此内容。

#!/usr/bin/env ruby
require File.dirname(__FILE__) + '/../config/boot'
require 'commands/console'

您可以找到Rails 2.1的commands/console file here

我建议加载irb并尝试从那里加载您的应用。

require 'config/boot'

如果可行,请尝试逐步完成上述commands/console script的其余部分,找出问题的哪一部分。

如果无法加载启动文件,请查看该config/boot.rb文件,看看是否可以确定哪个部分无效。祝你好运!

答案 1 :(得分:1)

您的服务器可能内存不足,因此机器无法响应您。如果你正在运行mongrel,那么就可以使用monit来限制它可以使用的内存并在必要时重新启动。

如果您正在使用Passenger,请尝试限制实例数量,如果您已经这样做,那么通过cron作业查找一个过大的乘客实例的脚本。

如果这不是内存问题,那么我可能需要更多信息。

答案 2 :(得分:0)

当所有其他方法都失败时,您应该能够使用strace来调试脚本/应用程序实际执行的操作。请注意,这应该只是最后一个度假村之一,因为它产生非常详细的信息(并且主要限于I / O操作)。

尝试使用'strace script / console production'作为示例