我们如何看Rails开发日志?

时间:2009-06-18 23:39:11

标签: ruby-on-rails ruby windows logging git-bash

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

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

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

为什么日志记录会被抑制?

是否存在会影响它的environment.rb文件的配置参数?

10 个答案:

答案 0 :(得分:113)

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

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

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

答案 1 :(得分:8)

Rails Configuration文档表明您的log_level可能会在配置中设置:debug以外的其他内容。

还有另一个查看请求的地方:Rails应用程序中的log / development.log文件。如果没有写任何内容,那么您的问题必须在配置中。在* nix系统上,我会运行:

$ tail -f log/development.log

观看由此运行的请求。他们告诉我有Windows version of tail

答案 2 :(得分:6)

less -R log/development.log

我刚刚开始使用它。

答案 3 :(得分:3)

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

也许你的Windows环境正在使用WEBrick,而OS X环境正在使用Mongrel或其他网络服务器。我注意到,对于一些web服务器,日志输出(也)直接写入shell,而其他人只写入日志文件。

答案 4 :(得分:3)

试试这个,获取开发日志:

tail -f log/development.log

确保您在申请路径中。

答案 5 :(得分:2)

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

答案 6 :(得分:1)

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

事实上,有没有特别的理由继续使用Webrick?在Phusion Passenger出现之前,Mongrel已成为首选的事实上的前端服务器,它在Windows上运行良好。如果你安装它(gem install mongrel),那么Rails默认会使用它。

在我的开发环境中,运行Webrick(在我弄清楚如何 - 这已经很长时间之后)我得到了非常简短的输出:只是“GET”请求的记录。切换到Mongrel,我得到了全部工作:请求,参数,SQL,时序等。

答案 7 :(得分:1)

我使用grep的尾巴

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

工作得很漂亮。

答案 8 :(得分:1)

您可以使用以下命令查看运行时日志:

tailf log/development.log

此外,如果您只想要日志中的第一行或最后一行,您可以使用以下命令获取这些行(日志中的第一行/最后100行):

例如:

前100行:

head -n 100 log/development.log 

前100行:

tail -n 100 log/development.log

谢谢!

答案 9 :(得分:0)

您可以尝试使用此命令

$ tail -f development.log


$ tail -f log/development.log