我正在阅读一个开源的Rails项目代码,我在开发日志中看到了我无法映射到Rails代码的SQL语句,即我不知道从哪里调用它。我试过ruby-debug但它似乎与日志文件输出和代码本身不同步,所以它没有太大用处。关于如何调试这个的任何建议?
有人问过哪个开源项目,它是Insoshi,这里是我试图映射到Rails代码的SQL语句的片段。
←[4;36;1mForum Columns (0.0ms)←[0m ←[0;1mSHOW FIELDS FROM `forums`←[0m
←[4;35;1mSQL (15.0ms)←[0m ←[0mSELECT count(*) AS count_all FROM `forums` ←[0m
←[4;36;1mForum Load (0.0ms)←[0m ←[0;1mSELECT * FROM `forums` LIMIT 1←[0m
除非您已经知道代码,否则我认为以上信息并不有用,但无论如何它都在这里。我没有显示任何Rails代码,因为我不知道从哪里调用它。这是一个通用的调试问题,我将通过代码完成,因为我正在弄清楚它是如何工作的。
答案 0 :(得分:3)
试试query-reviewer。它提供了一个浏览器跟踪sql查询和相关的应用程序回溯。
答案 1 :(得分:2)
我在开发者模式下使用New Relic的插件来追踪查询的来源。只需安装插件并浏览到/ newrelic(在开发环境中)它就会显示最后10个请求,你可以从tehre向下钻取。
答案 2 :(得分:2)
rails-footnotes插件非常便于开发。它将告诉您用于生成页面的查询以及提供的文件列表。顺便说一句,在浏览器中单击时,可以调整哪个在您喜欢的编辑器中打开。