Skip to content

Enhance the MetricsCollector to distinguish metrics for NACK (requeue = true) vs NACK (requeue = false) #1442

Closed
@matsev

Description

@matsev

Is your feature request related to a problem? Please describe.

To my understanding there are currently no metrics emitted that distinguish whether or not a message was requeued when it was NACK:ed by the consumer

Describe the solution you'd like

One suggestion is to enhance the MetricsCollector with a new methods:

    default public void basicNack(Channel channel, long deliveryTag, boolean requeue) {
    }

    default public void basicReject(Channel channel, long deliveryTag, boolean requeue) {
    }

These methods would then be called with the requeue parameter provided whenever a messages is NACK:ed. Moreover, existing implementation such as the MicrometerMetricsCollector should implement the methods so that the metrics emitted also has knowledge about the requeue state

Describe alternatives you've considered

Application developers can implement their own custom metrics

Additional context

Related question at Stack Overflow: https://stackoverflow.com/questions/79069702/reactive-rabbitmq-metrics-for-ack-nack-requeue-false-and-nack-requeue-t

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions