Browse Source

rabbitmq生产消息回调函数优化

dengsixing 2 years ago
parent
commit
9c7c71ba2d

+ 5 - 4
4dkankan-utils-rabbitmq/src/main/java/com/fdkankan/rabbitmq/callback/ProducerCallback.java

@@ -20,19 +20,20 @@ public class ProducerCallback implements RabbitTemplate.ConfirmCallback,RabbitTe
 
     //confirms模式:无论exchange投递消息是成功或是失败,都会返回ack,我们可以根据返回的ack是成功还是失败,做相应的业务处理
     @Override
-    public void confirm(CorrelationData correlationData, boolean b, String s) {
+    public void confirm(CorrelationData correlationData, boolean ack, String cause) {
         //投递成功
-        if(b){
+        if(ack){
             log.info("消息投递成功,id:{}", correlationData.getId());
             return;
         }
         //投递失败
-        log.error("消息投递失败,id:{}", correlationData.getId());
+        log.error("消息投递失败,id:{},失败原因:{}", correlationData.getId(), cause);
     }
 
     //return模式:只有exchange投递消息失败时,才会执行回调函数,来做一些相应的业务处理
     @Override
-    public void returnedMessage(Message message, int i, String s, String s1, String s2) {
+    public void returnedMessage(Message returnedMessage, int replyCode, String replyText, String exchange, String routingKey) {
+        log.info("消息从Exchange路由到Queue失败: exchange: {}, route: {}, replyCode: {}, replyText: {}, message: {}", exchange, routingKey, replyCode, replyText, returnedMessage);
 
     }
 }