Module: MetrixWire::Instrument::Mysql2::Patch

Defined in:
lib/metrixwire/instrument/mysql2.rb

Instance Method Summary collapse

Instance Method Details

#query(*args, &blk) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/metrixwire/instrument/mysql2.rb', line 21

def query(*args, &blk)
  sql = args.first
  return super(*args, &blk) if Context.current.nil? || !sql.is_a?(String)

  t0 = MetrixWire.monotonic_ms
  result = super(*args, &blk)
  unless MetrixWire::Instrument::Pg.control_statement?(sql)
    Helpers.add_span("db_query", sql, MetrixWire.monotonic_ms - t0,
                     meta: Helpers.row_count_meta(result))
  end
  result
rescue StandardError
  super(*args, &blk)
end