aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2012-10-01 20:28:31 -0700
committerRafael Mendonça França <rafaelmfranca@gmail.com>2012-10-01 20:28:31 -0700
commitcfc0ca0516d818bffdd5959ebe415362965d2de0 (patch)
tree6a111e99a0997fc6745e8b3ef3c1916d6ab7b394 /activerecord/lib
parent8ea88c3b74a20b56d39ab820244e0b3806a84169 (diff)
parent8e1b02fc37ef7404ce6f35d93a956eccf457d572 (diff)
downloadrails-cfc0ca0516d818bffdd5959ebe415362965d2de0.tar.gz
rails-cfc0ca0516d818bffdd5959ebe415362965d2de0.tar.bz2
rails-cfc0ca0516d818bffdd5959ebe415362965d2de0.zip
Merge pull request #7708 from bdurand/optimize_log_subscribers
Optimize log subscribers to check if the log level is sufficient
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/log_subscriber.rb10
1 files changed, 6 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/log_subscriber.rb b/activerecord/lib/active_record/log_subscriber.rb
index a25f2c7bca..ca79950049 100644
--- a/activerecord/lib/active_record/log_subscriber.rb
+++ b/activerecord/lib/active_record/log_subscriber.rb
@@ -1,11 +1,13 @@
module ActiveRecord
class LogSubscriber < ActiveSupport::LogSubscriber
+ IGNORE_PAYLOAD_NAMES = ["SCHEMA", "EXPLAIN"]
+
def self.runtime=(value)
- Thread.current["active_record_sql_runtime"] = value
+ Thread.current[:active_record_sql_runtime] = value
end
def self.runtime
- Thread.current["active_record_sql_runtime"] ||= 0
+ Thread.current[:active_record_sql_runtime] ||= 0
end
def self.reset_runtime
@@ -24,9 +26,9 @@ module ActiveRecord
payload = event.payload
- return if 'SCHEMA' == payload[:name]
+ return if IGNORE_PAYLOAD_NAMES.include?(payload[:name])
- name = '%s (%.1fms)' % [payload[:name], event.duration]
+ name = "#{payload[:name]} (#{event.duration.round(1)}ms)"
sql = payload[:sql].squeeze(' ')
binds = nil