diff --git a/pom.xml b/pom.xml
index bd92e2d7f..7ef06826c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -73,7 +73,7 @@
3.1.3-SNAPSHOT
2.4.2-SNAPSHOT
2.5.1
- 5.13.7
+ 5.13.9
0.32.0
2.3.4.RELEASE
2.2.0.RELEASE
diff --git a/spring-cloud-sleuth-brave/src/main/java/org/springframework/cloud/sleuth/brave/instrument/messaging/SleuthRabbitBeanPostProcessor.java b/spring-cloud-sleuth-brave/src/main/java/org/springframework/cloud/sleuth/brave/instrument/messaging/SleuthRabbitBeanPostProcessor.java
index 284d7f25b..094cb0397 100644
--- a/spring-cloud-sleuth-brave/src/main/java/org/springframework/cloud/sleuth/brave/instrument/messaging/SleuthRabbitBeanPostProcessor.java
+++ b/spring-cloud-sleuth-brave/src/main/java/org/springframework/cloud/sleuth/brave/instrument/messaging/SleuthRabbitBeanPostProcessor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013-2021 the original author or authors.
+ * Copyright 2013-2022 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,14 +18,18 @@ package org.springframework.cloud.sleuth.brave.instrument.messaging;
import brave.spring.rabbit.SpringRabbitTracing;
+import org.springframework.amqp.rabbit.config.DirectRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer;
+import org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer;
+import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.config.BeanPostProcessor;
/**
- *
+ * Instruments spring-rabbit related components.
*/
public class SleuthRabbitBeanPostProcessor implements BeanPostProcessor {
@@ -46,6 +50,14 @@ public class SleuthRabbitBeanPostProcessor implements BeanPostProcessor {
return rabbitTracing()
.decorateSimpleRabbitListenerContainerFactory((SimpleRabbitListenerContainerFactory) bean);
}
+ else if (bean instanceof DirectRabbitListenerContainerFactory) {
+ return rabbitTracing()
+ .decorateDirectRabbitListenerContainerFactory((DirectRabbitListenerContainerFactory) bean);
+ }
+ else if (bean instanceof SimpleMessageListenerContainer || bean instanceof DirectMessageListenerContainer) {
+ return rabbitTracing()
+ .decorateMessageListenerContainer((AbstractMessageListenerContainer) bean);
+ }
return bean;
}
diff --git a/spring-cloud-sleuth-dependencies/pom.xml b/spring-cloud-sleuth-dependencies/pom.xml
index b493ec468..14d614835 100644
--- a/spring-cloud-sleuth-dependencies/pom.xml
+++ b/spring-cloud-sleuth-dependencies/pom.xml
@@ -42,7 +42,7 @@
- 5.13.7
+ 5.13.9
0.37.4
4.2.2