Sha256: 174b6597848bcdfdd3447d561ecb618c46d3b1e9bf7c1de5d9071411b196c1fe

Contents?: true

Size: 1.34 KB

Versions: 14

Compression:

Stored size: 1.34 KB

Contents

# frozen_string_literal: true

require_relative '../../ext'
require_relative '../../event'

module Datadog
  module Tracing
    module Contrib
      module Kafka
        module Events
          module Producer
            # Defines instrumentation for deliver_messages.producer.kafka event
            module DeliverMessages
              include Kafka::Event

              EVENT_NAME = 'deliver_messages.producer.kafka'

              module_function

              def on_start(span, _event, _id, payload)
                super

                span.set_tag(Ext::TAG_ATTEMPTS, payload[:attempts]) if payload.key?(:attempts)
                span.set_tag(Ext::TAG_MESSAGE_COUNT, payload[:message_count]) if payload.key?(:message_count)
                if payload.key?(:delivered_message_count)
                  span.set_tag(Ext::TAG_DELIVERED_MESSAGE_COUNT, payload[:delivered_message_count])
                end
                span.set_tag(Tracing::Metadata::Ext::TAG_KIND, Tracing::Metadata::Ext::SpanKind::TAG_PRODUCER)
              end

              def span_name
                Ext::SPAN_DELIVER_MESSAGES
              end

              def span_options
                super.merge({ tags: { Tracing::Metadata::Ext::TAG_OPERATION => Ext::TAG_OPERATION_DELIVER_MESSAGES } })
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
datadog-2.12.2 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.12.1 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.12.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.11.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.10.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.9.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.8.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.7.1 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.7.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.6.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.5.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.4.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.3.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb
datadog-2.2.0 lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb