Sha256: f976469531a0011a6fe3d5b340bc61f83e059ae3d2b0814f5eee88cc14139bb5
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
require 'opentracing' module Sequel module TracingDataset # datasets are included, not extended OPTS = {}.freeze unless defined? ::Sequel::Dataset::OPTS def execute(sql, opts = OPTS, &block) tags = populate_tracing_tags(sql) ::Sequel::Instrumentation.trace_query('sequel.dataset.execute', tags) do super end end def execute_dui(sql, opts = OPTS, &block) tags = populate_tracing_tags(sql) ::Sequel::Instrumentation.trace_query('sequel.dataset.execute', tags) do super end end def execute_insert(sql, opts = OPTS, &block) tags = populate_tracing_tags(sql) ::Sequel::Instrumentation.trace_query('sequel.dataset.execute_insert', tags) do super end end def populate_tracing_tags(sql) tags = { 'db.type' => @db.database_type.to_s, 'db.statement' => sql, } tags['db.instance'] = @opts[:from].first.to_s if @opts[:from] && !@opts[:from].empty? tags end end Sequel::Dataset.register_extension(:dataset_instrumentation, TracingDataset) end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
signalfx-sequel-instrumentation-0.1.0 | lib/sequel/extensions/dataset_instrumentation.rb |
sequel-instrumentation-0.1.0 | lib/sequel/extensions/dataset_instrumentation.rb |