Spring AMQP重试机制:我怎么知道当前执行是原始执行还是重试
Spring AMQP retrial mechanism : how could I know if the current execution is the original one or a retrial
不管在Rabbit listener上应用重试的机制如何,我如何在实现中知道当前执行是原始执行还是异常后的重试。
我想记录这个,我也会根据它采取行动。
这取决于您的听众类型;如果是 MessageListener
,则可以使用 message.getMessageProperties().isRedelivered()
。如果您使用的是 @RabbitListener
,请将 @Header(AmqpHeaders.REDELIVERED) boolean redelivered
添加到方法参数中。
重新投递计数不可用,只是这是一次重新投递。
不管在Rabbit listener上应用重试的机制如何,我如何在实现中知道当前执行是原始执行还是异常后的重试。
我想记录这个,我也会根据它采取行动。
这取决于您的听众类型;如果是 MessageListener
,则可以使用 message.getMessageProperties().isRedelivered()
。如果您使用的是 @RabbitListener
,请将 @Header(AmqpHeaders.REDELIVERED) boolean redelivered
添加到方法参数中。
重新投递计数不可用,只是这是一次重新投递。