我的团队成员正在Windows XP上开发Rails应用程序。我们发现当我们运行应用程序时,无论是在NetBeans中启动它还是打开控制台并调用script/server
,Rails开发日志都不会滚动。只有Webrick启动消息。该应用程序肯定在运行,但是当我们在浏览器中点击各种页面时,我们没有看到任何日志记录输出。
当我在OS X系统上查看相同的应用程序时,日志记录输出按预期工作。
我确实确保它在Rails“开发”环境中运行。
为什么日志记录会被抑制?
是否存在会影响它的environment.rb文件的配置参数?
答案 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