Sha256: c83786672442a3d6f1a392a10de7828b7c10ee05605b13dd77d51a54bf354bf9
Contents?: true
Size: 1.47 KB
Versions: 4
Compression:
Stored size: 1.47 KB
Contents
# typed: true require 'datadog/tracing/contrib/kafka/ext' require 'datadog/tracing/contrib/kafka/event' require 'datadog/tracing/contrib/kafka/consumer_event' module Datadog module Tracing module Contrib module Kafka module Events module Consumer # Defines instrumentation for process_message.consumer.kafka event module ProcessMessage include Kafka::Event extend Kafka::ConsumerEvent EVENT_NAME = 'process_message.consumer.kafka'.freeze def self.process(span, _event, _id, payload) super span.resource = payload[:topic] span.set_tag(Ext::TAG_TOPIC, payload[:topic]) if payload.key?(:topic) span.set_tag(Ext::TAG_MESSAGE_KEY, payload[:key]) if payload.key?(:key) span.set_tag(Ext::TAG_PARTITION, payload[:partition]) if payload.key?(:partition) span.set_tag(Ext::TAG_OFFSET, payload[:offset]) if payload.key?(:offset) span.set_tag(Ext::TAG_OFFSET_LAG, payload[:offset_lag]) if payload.key?(:offset_lag) end module_function def span_name Ext::SPAN_PROCESS_MESSAGE end def span_options super.merge({ tags: { Tracing::Metadata::Ext::TAG_OPERATION => Ext::TAG_OPERATION_PROCESS_MESSAGE } }) end end end end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems