我们如何看Rails开发日志?

我的团队成员正在Windows XP上开发Rails应用程序。 我们发现,当我们运行应用程序时,无论是在NetBeans中启动应用程序,还是通过打开控制台并调用script/server ,Rails开发日志都不会滚动。 只有Webrick启动信息。 该应用程序肯定正在运行,但是当我们在浏览器中点击各种页面时,我们没有看到任何日志输出。

当我查看OS X系统上的相同应用程序时,日志输出按预期工作。

我确定它在Rails“开发”环境中运行。

任何想法为什么伐木将被压制?

有没有configuration参数的environment.rb文件,会影响到它?

查看log/目录 – 应该有一个development.log 。 我敢打赌你的输出在那里。

如果不是,请确保该目录是可写的。

关于如何在运行时看到它:如果你安装了git bash,或者像cygwin这样的其他一些shell,那么你可以打开一个shell并执行tail -f log/development.log ,它将滚动日志东西附加到它。

Railsconfiguration文档build议您可以将log_level设置为除configuration以外的其他内容:debug

另外还有一个可以查看请求的地方:Rails应用程序中的log / development.log文件。 如果没有写在那里,那么你的问题必须在configuration。 在* nix系统上,我将运行:

 $ tail -f log/development.log 

并观看运行的请求。 他们告诉我,有一个Windows版本的tail

 less -R log/development.log 

我刚开始使用这个。

试试这个,得到开发日志:

 tail -f log/development.log 

确保您在应用程序path中。

我总是使用log/development.log来查看日志。 只是tail -f使用Cygwin或其他东西。

也许你的Windows环境使用WEBrick,OS X环境使用Mongrel或其他networking服务器。 我注意到,有些web服务器的日志logging输出(也)直接写入到shell中,其他日志文件只写入到日志文件中。

当开发日志过大时,Netbeans似乎停止在控制台窗口中显示开发日志。 至less这是我的经验。

没有深入Webrick的来源,我怀疑显示的信息量默认不是很大。 你确定你在OSX上运行Webrick而不是Mongrel?

事实上,有没有继续使用Webrick的特殊原因? 在Phusion Passenger出现之前,Mongrel已经成为了事实上的前端服务器,在Windows上它工作得很好。 如果你安装它( gem install mongrel ),那么Rails默认会使用它。

在我的开发环境中,运行Webrick(在弄清楚了 – 这已经很长时间了)之后,我得到了非常简短的结果:只是“GET”请求的一个logging。 切换到Mongrel,我得到了全部工作:请求,参数,SQL,时间等。

我使用grep的尾巴

 tail -f log/development.log | grep Started -A 1 

精美的作品。