Class: SequelRails::Railties::LogSubscriber
- Inherits:
-
ActiveSupport::LogSubscriber
- Object
- ActiveSupport::LogSubscriber
- SequelRails::Railties::LogSubscriber
- Defined in:
- lib/sequel_rails/railties/log_subscriber.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.reset_runtime ⇒ Object
12 13 14 15 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 12 def self.reset_runtime rt, self.runtime = runtime, 0 rt end |
.runtime ⇒ Object
8 9 10 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 8 def self.runtime Thread.current['sequel_sql_runtime'] ||= 0 end |
.runtime=(value) ⇒ Object
4 5 6 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 4 def self.runtime=(value) Thread.current['sequel_sql_runtime'] = value end |
Instance Method Details
#logger ⇒ Object
47 48 49 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 47 def logger ::SequelRails.configuration.logger end |
#odd? ⇒ Boolean
43 44 45 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 43 def odd? @odd_or_even = !@odd_or_even end |
#sql(event) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/sequel_rails/railties/log_subscriber.rb', line 17 def sql(event) self.class.runtime += event.duration return unless logger.debug? payload = event.payload name = format('%s (%.1fms)', payload[:name], event.duration) sql = payload[:sql].squeeze(' ') binds = nil unless (payload[:binds] || []).empty? binds = ' ' + payload[:binds].map do |col, v| [col.name, v] end.inspect end if odd? name = color(name, :cyan, true) sql = color(sql, nil, true) else name = color(name, :magenta, true) end debug " #{name} #{sql}#{binds}" end |