Module: Datadog::Contrib::Kafka::Event::ClassMethods

Defined in:
lib/ddtrace/contrib/kafka/event.rb

Overview

Class methods for Kafka events.

Instance Method Summary collapse

Instance Method Details

#configurationObject



29
30
31
# File 'lib/ddtrace/contrib/kafka/event.rb', line 29

def configuration
  Datadog.configuration[:kafka]
end

#event_nameObject



17
18
19
# File 'lib/ddtrace/contrib/kafka/event.rb', line 17

def event_name
  self::EVENT_NAME
end

#process(span, _event, _id, payload) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/ddtrace/contrib/kafka/event.rb', line 33

def process(span, _event, _id, payload)
  span.service = configuration[:service_name]
  span.set_tag(Ext::TAG_CLIENT, payload[:client_id])

  # Set analytics sample rate
  if Contrib::Analytics.enabled?(configuration[:analytics_enabled])
    Contrib::Analytics.set_sample_rate(span, configuration[:analytics_sample_rate])
  end

  # Measure service stats
  Contrib::Analytics.set_measured(span)

  span.set_error(payload[:exception_object]) if payload[:exception_object]
end

#span_optionsObject



21
22
23
# File 'lib/ddtrace/contrib/kafka/event.rb', line 21

def span_options
  { service: configuration[:service_name] }
end

#tracerObject



25
26
27
# File 'lib/ddtrace/contrib/kafka/event.rb', line 25

def tracer
  -> { configuration[:tracer] }
end