class U::Log::ActiveRecordSubscriber
Public Instance Methods
identity(event)
click to toggle source
# File lib/u-log/active_record.rb, line 43 def identity(event) logger.ulogger.log(name: event.payload[:name], line: event.payload[:line]) end
render_bind(column, value)
click to toggle source
# File lib/u-log/active_record.rb, line 8 def render_bind(column, value) if column if column.binary? value = "<#{value.bytesize} bytes of binary data>" end [column.name, value] else [nil, value] end end
sql(event)
click to toggle source
# File lib/u-log/active_record.rb, line 20 def sql(event) payload = event.payload return if payload[:name] == 'SCHEMA' || payload[:name] == 'EXPLAIN' args = {} args[:name] = payload[:name] if payload[:name] args[:sql] = payload[:sql].squeeze(' ') if payload[:binds] && payload[:binds].any? args[:binds] = payload[:binds].inject({}) do |hash,(col, v)| k, v = render_bind(col, v) hash[k] = v hash end end args[:elapsed] = [event.duration.round(1), 'ms'] logger.ulogger.log(args) end