Parent

Files

Class Index [+]

Quicksearch

ActiveRecord::LogSubscriber

Public Class Methods

new() click to toggle source
    # File lib/active_record/log_subscriber.rb, line 16
16:     def initialize
17:       super
18:       @odd_or_even = false
19:     end
reset_runtime() click to toggle source
    # File lib/active_record/log_subscriber.rb, line 11
11:     def self.reset_runtime
12:       rt, self.runtime = runtime, 0
13:       rt
14:     end
runtime() click to toggle source
   # File lib/active_record/log_subscriber.rb, line 7
7:     def self.runtime
8:       Thread.current["active_record_sql_runtime"] ||= 0
9:     end
runtime=(value) click to toggle source
   # File lib/active_record/log_subscriber.rb, line 3
3:     def self.runtime=(value)
4:       Thread.current["active_record_sql_runtime"] = value
5:     end

Public Instance Methods

identity(event) click to toggle source
    # File lib/active_record/log_subscriber.rb, line 49
49:     def identity(event)
50:       return unless logger.debug?
51: 
52:       name = color(event.payload[:name], odd? ? CYAN : MAGENTA, true)
53:       line = odd? ? color(event.payload[:line], nil, true) : event.payload[:line]
54: 
55:       debug "  #{name}  #{line}"
56:     end
logger() click to toggle source
    # File lib/active_record/log_subscriber.rb, line 62
62:     def logger
63:       ActiveRecord::Base.logger
64:     end
odd?() click to toggle source
    # File lib/active_record/log_subscriber.rb, line 58
58:     def odd?
59:       @odd_or_even = !@odd_or_even
60:     end
sql(event) click to toggle source
    # File lib/active_record/log_subscriber.rb, line 21
21:     def sql(event)
22:       self.class.runtime += event.duration
23:       return unless logger.debug?
24: 
25:       payload = event.payload
26: 
27:       return if 'SCHEMA' == payload[:name]
28: 
29:       name  = '%s (%.1fms)' % [payload[:name], event.duration]
30:       sql   = payload[:sql].squeeze(' ')
31:       binds = nil
32: 
33:       unless (payload[:binds] || []).empty?
34:         binds = "  " + payload[:binds].map { |col,v|
35:           [col.name, v]
36:         }.inspect
37:       end
38: 
39:       if odd?
40:         name = color(name, CYAN, true)
41:         sql  = color(sql, nil, true)
42:       else
43:         name = color(name, MAGENTA, true)
44:       end
45: 
46:       debug "  #{name}  #{sql}#{binds}"
47:     end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.