4

我正在尝试使用 Mini Profiler 来分析我们的一些 Rails 控制器,但我想我正在尝试将它用于它不是为它构建的东西。我已经很好地分析了 SQL 查询,但我需要分解非 SQL 代码,因为我们在某些页面中看到了很多突突,但 SQL 似乎不是问题。

这是我正在谈论的截图: http: //cl.ly/image/2J3i1C1c072O

您可以看到顶层 ( Executing action: show) 需要 9136 毫秒才能完成,但执行的查询只是总时间的一小部分。我想我要问的是是否有一种方法可以显示有关正在执行的代码的更多“详细”信息,或者我是否需要找到一个不同的工具来使用。不幸的是,New Relic 不是一个选择。

谢谢你的帮助。

4

1 回答 1

6

您可以在您认为负责的区域中插入自定义步骤。

# in your initializer
Rack::MiniProfiler.profile_method SomeClass, "method"

# or 
Rack::MiniProfiler.step "some step" do 
  # your code
end

此外,您可以运行ruby​​-prof来弄清楚到处都在发生什么,然后进行战略性检测。

于 2012-12-17T02:21:21.757 回答