module Rack::MiniProfiler::ActiveRecordInstrumentation
Public Class Methods
Source
# File lib/patches/db/activerecord.rb, line 8 def self.included(instrumented_class) instrumented_class.class_eval do unless instrumented_class.method_defined?(:log_without_miniprofiler) alias_method :log_without_miniprofiler, :log alias_method :log, :log_with_miniprofiler protected :log end end end
Public Instance Methods
Source
# File lib/patches/db/activerecord.rb, line 18 def log_with_miniprofiler(*args, &block) return log_without_miniprofiler(*args, &block) unless SqlPatches.should_measure? sql, name, binds = args start = Process.clock_gettime(Process::CLOCK_MONOTONIC) rval = log_without_miniprofiler(*args, &block) # Don't log schema queries if the option is set return rval if Rack::MiniProfiler.config.skip_schema_queries && name =~ (/SCHEMA/) elapsed_time = SqlPatches.elapsed_time(start) Rack::MiniProfiler.record_sql(sql, elapsed_time, Rack::MiniProfiler.binds_to_params(binds)) rval end