class TimeBandits::TimeConsumers::Database

provide a time consumer interface to ActiveRecord

Public Instance Methods

consumed() click to toggle source
# File lib/time_bandits/time_consumers/database.rb, line 21
def consumed
  time, calls, hits = reset_stats
  i = Database.instance
  i.sql_query_cache_hits += hits
  i.calls += calls
  i.time += time
end
current_runtime() click to toggle source
# File lib/time_bandits/time_consumers/database.rb, line 29
def current_runtime
  Database.instance.time + ActiveRecord::LogSubscriber.runtime
end
reset() click to toggle source
# File lib/time_bandits/time_consumers/database.rb, line 16
def reset
  reset_stats
  super
end

Private Instance Methods

reset_stats() click to toggle source
# File lib/time_bandits/time_consumers/database.rb, line 35
def reset_stats
  s = ActiveRecord::LogSubscriber
  hits  = s.reset_query_cache_hits
  calls = s.reset_call_count
  time  = s.reset_runtime
  [time, calls, hits]
end