2008-12-08 41 views
45

我一直在寻找用于Rails的分析工具。我目前正在玩和测试ruby-prof和railsbench,但我有点沮丧,因为需要调整和调整才能继续工作。尽管我不介意(很多)调整,但我想知道是否有任何其他更简单易用的工具来描述Rails应用程序?你推荐哪些工具?你推荐哪些工具来剖析Rails应用程序?

回答

20

New Relic提供Rails分析,包括free 'Lite'版本。

+7

此外,值得一提的是,你可以用“开发”模式,它允许你在本地使用它没有一个帐户NewRelic的。 – Ivan 2009-12-28 01:51:26

4

http://rails-analyzer.rubyforge.org/可能是你在找什么。

我强烈建议使用生产日志分析器,以了解最耗时的操作以及操作分析器的清单。

添加:对于生产日志分析器,您不需要任何配置,它只是解析生产日志并给出一个最耗时的操作列表,包括最小/最大/中位时间。很高兴看到你应该在哪里分析/优化更多。

0

你还应该看看FiveRuns'TuneUp。它是完全免费的,作为插件安装到您的Rails应用程序中。请记住,它确实会将数据发送回服务器(主要是非常无害的信息),但这可能会影响一些人(即政府机构对此会非常不高兴)。我认为你会惊讶这个工具有多棒,因为它是免费的。

它的另一个很好的功能是,您可以发布您的运行数据供他人评论,并帮助您诊断长查询或错误代码。

+0

调整链接似乎是无效今天,2010年8月9日:( – 2010-08-09 18:48:56

+1

-1我确信这是一个伟大的工具在一个点上,但FiveRuns已解散,链接不再有效 – 2011-07-17 08:04:00

2

如果您在OSX Leopard下,可以试试DTrace。

44

您可以使用built in profiler还有:

$ ruby script/performance/profiler 'User.new' 5 
    % cumulative self    self  total 
time seconds seconds calls ms/call ms/call name 
189.25  1.76  1.76  1 1760.00 1760.00 Profiler__.start_profile 
43.01  2.16  0.40  115  3.48  3.91 ActiveRecord::ConnectionAdapters::Column#simplified_type 
    8.60  2.24  0.08  15  5.33  8.67 Array#each 
    7.53  2.31  0.07  115  0.61  5.39 ActiveRecord::ConnectionAdapters::Column#initialize 
    6.45  2.37  0.06  115  0.52  0.52 ActiveRecord::ConnectionAdapters::Column#type_cast 
    5.38  2.42  0.05  690  0.07  0.07 Regexp#=== 
    0.00  2.69  0.00  10  0.00  0.00 Process.times 
    0.00  2.69  0.00  10  0.00  0.00 Benchmark.times 

注意,为Rails 3,您可以使用rails profiler

相关问题