module ElasticAPM::Spies::DynamoDBSpy::Ext
@api private
Public Class Methods
prepended(mod)
click to toggle source
Calls superclass method
# File lib/elastic_apm/spies/dynamo_db.rb, line 55 def self.prepended(mod) # Alias all available operations mod.api.operation_names.each do |operation_name| define_method(operation_name) do |params = {}, options = {}| context = ElasticAPM::Span::Context.new( db: { instance: config.region, type: SUBTYPE, statement: params[:key_condition_expression] }, destination: { service: { resource: "#{SUBTYPE}/#{config.region}" }, cloud: { region: config.region } } ) ElasticAPM.with_span( ElasticAPM::Spies::DynamoDBSpy.span_name(operation_name, params), TYPE, subtype: SUBTYPE, action: operation_name, context: context ) do ElasticAPM::Spies::DynamoDBSpy.without_net_http do super(params, options) end end end end end