module LogjamAgent::ComputeRenderTimes

Public Instance Methods

render(engine, data, options = {}, locals = {}, &block) click to toggle source
Calls superclass method
# File lib/logjam_agent/sinatra.rb, line 83
def render(engine, data, options = {}, locals = {}, &block)
  consumed_before_rendering = TimeBandits.consumed
  result = exception = nil
  duration = Benchmark.ms do
    begin
      result = super
    rescue => exception
    end
  end
  consumed_during_rendering = TimeBandits.consumed - consumed_before_rendering
  duration -= consumed_during_rendering
  raise exception if exception
  result
ensure
  Thread.current.thread_variable_set(
    :time_bandits_completed_info,
    [ duration, ["Views: %.3fms" % duration.to_f], duration, "" ]
  )
end