Class MonitoringQueueProducer<PayloadT>

  • Type Parameters:
    PayloadT - The type of the payload in the task
    All Implemented Interfaces:
    QueueProducer<PayloadT>

    public class MonitoringQueueProducer<PayloadT>
    extends java.lang.Object
    implements QueueProducer<PayloadT>
    Wrapper for queue producer with logging and monitoring support
    Since:
    11.06.2021
    • Constructor Detail

      • MonitoringQueueProducer

        public MonitoringQueueProducer​(@Nonnull
                                       QueueProducer<PayloadT> queueProducer,
                                       @Nonnull
                                       QueueId queueId,
                                       @Nonnull
                                       java.util.function.BiConsumer<EnqueueResult,​java.lang.Long> monitoringCallback)
        Constructor
        Parameters:
        queueProducer - Task producer for the queue
        queueId - Id of the queue
        monitoringCallback - Callback invoked after putting a task in the queue. It might help to monitor enqueue time.
      • MonitoringQueueProducer

        public MonitoringQueueProducer​(@Nonnull
                                       QueueProducer<PayloadT> queueProducer,
                                       @Nonnull
                                       QueueId queueId)
        Constructor
        Parameters:
        queueProducer - Task producer for the queue
        queueId - Id of the queue