Class KafkaProducerAttributesExtractor

  • All Implemented Interfaces:
    io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>

    public final class KafkaProducerAttributesExtractor
    extends io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
    • Field Summary

      • Fields inherited from class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor

        TEMP_DESTINATION_NAME
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected String conversationId​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String destination​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String destinationKind​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String messageId​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord, Void unused)  
      protected Long messagePayloadCompressedSize​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected Long messagePayloadSize​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation operation()  
      protected String protocol​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String protocolVersion​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String system​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected boolean temporaryDestination​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      protected String url​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)  
      • Methods inherited from class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor

        onEnd, onStart
      • Methods inherited from interface io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor

        set
    • Constructor Detail

      • KafkaProducerAttributesExtractor

        public KafkaProducerAttributesExtractor()
    • Method Detail

      • operation

        public io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation operation()
        Specified by:
        operation in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • system

        protected String system​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        system in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • destinationKind

        protected String destinationKind​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        destinationKind in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • destination

        protected String destination​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        destination in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • temporaryDestination

        protected boolean temporaryDestination​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        temporaryDestination in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • protocol

        @Nullable
        protected String protocol​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        protocol in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • protocolVersion

        @Nullable
        protected String protocolVersion​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        protocolVersion in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • url

        @Nullable
        protected String url​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        url in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • conversationId

        @Nullable
        protected String conversationId​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        conversationId in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • messagePayloadSize

        @Nullable
        protected Long messagePayloadSize​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        messagePayloadSize in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • messagePayloadCompressedSize

        @Nullable
        protected Long messagePayloadCompressedSize​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord)
        Specified by:
        messagePayloadCompressedSize in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>
      • messageId

        @Nullable
        protected String messageId​(org.apache.kafka.clients.producer.ProducerRecord<?,​?> producerRecord,
                                   @Nullable
                                   Void unused)
        Specified by:
        messageId in class io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor<org.apache.kafka.clients.producer.ProducerRecord<?,​?>,​Void>