Class: ActiveRecord::LogSubscriber

Inherits:
Object
  • Object
show all
Defined in:
lib/log_overrider.rb

Instance Method Summary (collapse)

Instance Method Details

- (Object) sql(event)



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/log_overrider.rb', line 83

def sql(event)
  self.class.runtime += event.duration
  return unless logger.info?

  payload = event.payload
  sql     = payload[:sql].squeeze(' ')
  binds   = nil

  unless (payload[:binds] || []).empty?
    binds = "  " + payload[:binds].map { |col,v|
      [col.name, v]
    }.inspect
  end

  log_string = "event=sql name='#{payload[:name]}' ms=#{event.duration} query='#{sql}'"
  log_string << "caller_hash=#{caller.hash} binds='#{binds}' caller_with_diaspora='#{caller.grep(/diaspora\/(app|lib)/).join(';')}'"
  info log_string

end