Sha256: ccbf26aa4a06e9f5938813f3fb4153fcd5e64a3c5dbdecdb5ea89ad3b6776096

Contents?: true

Size: 1.54 KB

Versions: 4

Compression:

Stored size: 1.54 KB

Contents

# typed: false

require 'datadog/tracing/contrib/kafka/events/connection/request'
require 'datadog/tracing/contrib/kafka/events/consumer/process_batch'
require 'datadog/tracing/contrib/kafka/events/consumer/process_message'
require 'datadog/tracing/contrib/kafka/events/consumer_group/heartbeat'
require 'datadog/tracing/contrib/kafka/events/consumer_group/join_group'
require 'datadog/tracing/contrib/kafka/events/consumer_group/leave_group'
require 'datadog/tracing/contrib/kafka/events/consumer_group/sync_group'
require 'datadog/tracing/contrib/kafka/events/produce_operation/send_messages'
require 'datadog/tracing/contrib/kafka/events/producer/deliver_messages'

module Datadog
  module Tracing
    module Contrib
      module Kafka
        # Defines collection of instrumented Kafka events
        module Events
          ALL = [
            Events::Connection::Request,
            Events::Consumer::ProcessBatch,
            Events::Consumer::ProcessMessage,
            Events::ConsumerGroup::Heartbeat,
            Events::ConsumerGroup::JoinGroup,
            Events::ConsumerGroup::LeaveGroup,
            Events::ConsumerGroup::SyncGroup,
            Events::ProduceOperation::SendMessages,
            Events::Producer::DeliverMessages
          ].freeze

          module_function

          def all
            self::ALL
          end

          def subscriptions
            all.collect(&:subscriptions).collect(&:to_a).flatten
          end

          def subscribe!
            all.each(&:subscribe!)
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ddtrace-1.2.0 lib/datadog/tracing/contrib/kafka/events.rb
ddtrace-1.1.0 lib/datadog/tracing/contrib/kafka/events.rb
ddtrace-1.0.0 lib/datadog/tracing/contrib/kafka/events.rb
ddtrace-1.0.0.beta2 lib/datadog/tracing/contrib/kafka/events.rb