Skip to content

Commit b15a762

Browse files
csabakospavolloffay
authored andcommitted
Do not auto-configure the tracing filter and tracing interceptor for reactive web servers. (#94)
1 parent f5a1143 commit b15a762

File tree

3 files changed

+52
-1
lines changed

3 files changed

+52
-1
lines changed

opentracing-spring-web-starter/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,5 +68,10 @@
6868
<artifactId>spring-boot-starter-web</artifactId>
6969
<scope>test</scope>
7070
</dependency>
71+
<dependency>
72+
<groupId>org.springframework.boot</groupId>
73+
<artifactId>spring-boot-starter-webflux</artifactId>
74+
<scope>test</scope>
75+
</dependency>
7176
</dependencies>
7277
</project>

opentracing-spring-web-starter/src/main/java/io/opentracing/contrib/spring/web/starter/ServerTracingAutoConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
* @author Eddú Meléndez
3737
*/
3838
@Configuration
39-
@ConditionalOnWebApplication
39+
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
4040
@ConditionalOnBean(Tracer.class)
4141
@AutoConfigureAfter(TracerAutoConfiguration.class)
4242
@EnableConfigurationProperties(WebTracingProperties.class)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package io.opentracing.contrib.spring.web.starter;
2+
3+
import org.junit.Test;
4+
import org.junit.runner.RunWith;
5+
import org.springframework.beans.factory.annotation.Autowired;
6+
import org.springframework.beans.factory.annotation.Qualifier;
7+
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
8+
import org.springframework.boot.test.context.SpringBootTest;
9+
import org.springframework.boot.web.servlet.FilterRegistrationBean;
10+
import org.springframework.context.annotation.Configuration;
11+
import org.springframework.test.context.ActiveProfiles;
12+
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
13+
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
14+
15+
import static org.junit.Assert.assertNull;
16+
17+
/**
18+
* @author Gilles Robert
19+
*/
20+
@SpringBootTest(
21+
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
22+
classes = {ServerTracingAutoConfigurationDisabledForReactiveTest.SpringConfiguration.class},
23+
properties = {"spring.main.web-application-type=reactive"})
24+
@RunWith(SpringJUnit4ClassRunner.class)
25+
@ActiveProfiles("test")
26+
public class ServerTracingAutoConfigurationDisabledForReactiveTest extends AutoConfigurationBaseTest {
27+
28+
@Autowired(required = false)
29+
@Qualifier("tracingFilter")
30+
private FilterRegistrationBean tracingFilter;
31+
@Autowired(required = false)
32+
@Qualifier("tracingHandlerInterceptor")
33+
private WebMvcConfigurerAdapter tracingHandlerInterceptor;
34+
35+
@Configuration
36+
@EnableAutoConfiguration
37+
public static class SpringConfiguration {
38+
39+
}
40+
41+
@Test
42+
public void testWebConfigurationDisabled() {
43+
assertNull(tracingFilter);
44+
assertNull(tracingHandlerInterceptor);
45+
}
46+
}

0 commit comments

Comments
 (0)