Class ReactiveMessagingTracingIncomingDecorator

java.lang.Object
io.quarkus.opentelemetry.runtime.tracing.intrumentation.reactivemessaging.ReactiveMessagingTracingIncomingDecorator
All Implemented Interfaces:
io.smallrye.reactive.messaging.PublisherDecorator, jakarta.enterprise.inject.spi.Prioritized

@ApplicationScoped public class ReactiveMessagingTracingIncomingDecorator extends Object implements io.smallrye.reactive.messaging.PublisherDecorator
Intercepts incoming messages from Reactive Messaging connectors.

For incoming messages, it fetches OpenTelemetry context from the message and attaches to the duplicated context of the message. Consumer methods will be called on this duplicated context, so the OpenTelemetry context associated with the incoming message will be propagated.

  • Field Summary

    Fields inherited from interface io.smallrye.reactive.messaging.PublisherDecorator

    DEFAULT_PRIORITY
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    io.smallrye.mutiny.Multi<? extends org.eclipse.microprofile.reactive.messaging.Message<?>>
    decorate(io.smallrye.mutiny.Multi<? extends org.eclipse.microprofile.reactive.messaging.Message<?>> publisher, String channelName, boolean isConnector)
    Incoming messages

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.smallrye.reactive.messaging.PublisherDecorator

    decorate, getPriority
  • Constructor Details

    • ReactiveMessagingTracingIncomingDecorator

      public ReactiveMessagingTracingIncomingDecorator()
  • Method Details

    • decorate

      public io.smallrye.mutiny.Multi<? extends org.eclipse.microprofile.reactive.messaging.Message<?>> decorate(io.smallrye.mutiny.Multi<? extends org.eclipse.microprofile.reactive.messaging.Message<?>> publisher, String channelName, boolean isConnector)
      Incoming messages
      Specified by:
      decorate in interface io.smallrye.reactive.messaging.PublisherDecorator