class Opbeat::Normalizers::ActiveRecord::SQL
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
Opbeat::Normalizers::Normalizer::new
# File lib/opbeat/normalizers/active_record.rb, line 9 def initialize *args super(*args) adapter = ::ActiveRecord::Base.connection.adapter_name.downcase rescue nil @kind = "db.#{adapter || 'unknown'}.sql".freeze @sql_parser = SqlSummarizer.new config end
Public Instance Methods
normalize(transaction, name, payload)
click to toggle source
# File lib/opbeat/normalizers/active_record.rb, line 16 def normalize transaction, name, payload if %w{SCHEMA CACHE}.include? payload[:name] return :skip end signature = signature_for(payload[:sql]) || # SELECT FROM "users" payload[:name] || # Users load "SQL".freeze if signature == 'SELECT FROM "schema_migrations"' return :skip end [signature, @kind, { sql: payload[:sql] }] end
Private Instance Methods
signature_for(sql)
click to toggle source
# File lib/opbeat/normalizers/active_record.rb, line 35 def signature_for sql @sql_parser.signature_for(sql) end