lib/endeca/benchmarking.rb in endeca-1.4.2 vs lib/endeca/benchmarking.rb in endeca-1.5.0

- old
+ new

@@ -1,36 +1,28 @@ module Endeca module Benchmarking # Log and benchmark the workings of a single block. Will only be called if # Endeca.debug and Endeca.benchmark are true. def bm(metric_symbol, detail = nil) - if Endeca.analyze? - result = nil - ms = ::Benchmark.ms { result = yield } - add_bm_detail(metric_symbol,ms,detail) if detail.to_s.strip.length > 0 - increase_metric(metric_symbol, ms) - Endeca.logger.debug("#{metric_symbol.to_s}: #{'%.1f' % ms}ms") - result - else - yield - end + result = nil + ms = ::Benchmark.ms { result = yield } + add_bm_detail(metric_symbol,ms,detail) if detail.to_s.strip.length > 0 + increase_metric(metric_symbol, ms) + Endeca.logger.debug("#{metric_symbol.to_s}: #{'%.1f' % ms}ms") + result end def increase_metric(metric_symbol, up_value) - if Endeca.analyze? - Thread.current[:endeca] ||= {} - Thread.current[:endeca][metric_symbol] ||= 0 - Thread.current[:endeca][metric_symbol] += up_value - end + Thread.current[:endeca] ||= {} + Thread.current[:endeca][metric_symbol] ||= 0 + Thread.current[:endeca][metric_symbol] += up_value end private def add_bm_detail(label,time,detail) - if Endeca.analyze? - Thread.current[:endeca] ||= {} - Thread.current[:endeca]["#{label}_detail"] ||= [] - Thread.current[:endeca]["#{label}_detail"] << {:detail => detail, :time => time} - end + Thread.current[:endeca] ||= {} + Thread.current[:endeca]["#{label}_detail"] ||= [] + Thread.current[:endeca]["#{label}_detail"] << {:detail => detail, :time => time} end end end