Skip to content

Commit 81ec543

Browse files
JaroslawDembekOlgaMaciaszek
authored andcommitted
Revert usage of feature flag.
1 parent 0573988 commit 81ec543

File tree

4 files changed

+18
-31
lines changed

4 files changed

+18
-31
lines changed

spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/LoadBalancerStatsAutoConfiguration.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
import io.micrometer.core.instrument.MeterRegistry;
2020

21-
import org.springframework.beans.factory.annotation.Value;
2221
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
2322
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
2423
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
@@ -39,9 +38,8 @@ public class LoadBalancerStatsAutoConfiguration {
3938

4039
@Bean
4140
@ConditionalOnBean(MeterRegistry.class)
42-
public MicrometerStatsLoadBalancerLifecycle micrometerStatsLifecycle(MeterRegistry meterRegistry,
43-
@Value("${spring.cloud.loadbalancer.stats.micrometer.use-uri-template-attribute: false}") boolean useUriTemplateAttribute) {
44-
return new MicrometerStatsLoadBalancerLifecycle(meterRegistry, useUriTemplateAttribute);
41+
public MicrometerStatsLoadBalancerLifecycle micrometerStatsLifecycle(MeterRegistry meterRegistry) {
42+
return new MicrometerStatsLoadBalancerLifecycle(meterRegistry);
4543
}
4644

4745
}

spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/stats/LoadBalancerTags.java

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,16 +44,15 @@ private LoadBalancerTags() {
4444
throw new UnsupportedOperationException("Cannot instantiate utility class");
4545
}
4646

47-
static Iterable<Tag> buildSuccessRequestTags(CompletionContext<Object, ServiceInstance, Object> completionContext,
48-
boolean useUriTemplateAttribute) {
47+
static Iterable<Tag> buildSuccessRequestTags(CompletionContext<Object, ServiceInstance, Object> completionContext) {
4948
ServiceInstance serviceInstance = completionContext.getLoadBalancerResponse().getServer();
5049
Tags tags = Tags.of(buildServiceInstanceTags(serviceInstance));
5150
Object clientResponse = completionContext.getClientResponse();
5251
if (clientResponse instanceof ResponseData responseData) {
5352
RequestData requestData = responseData.getRequestData();
5453
if (requestData != null) {
5554
tags = tags.and(valueOrUnknown("method", requestData.getHttpMethod()),
56-
valueOrUnknown("uri", getPath(requestData, useUriTemplateAttribute)));
55+
valueOrUnknown("uri", getPath(requestData)));
5756
}
5857
else {
5958
tags = tags.and(Tag.of("method", UNKNOWN), Tag.of("uri", UNKNOWN));
@@ -74,8 +73,8 @@ private static int statusValue(ResponseData responseData) {
7473
return responseData.getHttpStatus() != null ? responseData.getHttpStatus().value() : 200;
7574
}
7675

77-
private static String getPath(RequestData requestData, boolean useUriTemplateAttribute) {
78-
if (useUriTemplateAttribute && requestData.getAttributes() != null) {
76+
private static String getPath(RequestData requestData) {
77+
if (requestData.getAttributes() != null) {
7978
var uriTemplate = (String) requestData.getAttributes().get(URI_TEMPLATE_ATTRIBUTE);
8079
if (uriTemplate != null) {
8180
return uriTemplate;
@@ -84,15 +83,14 @@ private static String getPath(RequestData requestData, boolean useUriTemplateAtt
8483
return requestData.getUrl() != null ? requestData.getUrl().getPath() : UNKNOWN;
8584
}
8685

87-
static Iterable<Tag> buildDiscardedRequestTags(CompletionContext<Object, ServiceInstance, Object> completionContext,
88-
boolean useUriTemplateAttribute) {
86+
static Iterable<Tag> buildDiscardedRequestTags(
87+
CompletionContext<Object, ServiceInstance, Object> completionContext) {
8988
if (completionContext.getLoadBalancerRequest().getContext() instanceof RequestDataContext) {
9089
RequestData requestData = ((RequestDataContext) completionContext.getLoadBalancerRequest().getContext())
9190
.getClientRequest();
9291
if (requestData != null) {
9392
return Tags.of(valueOrUnknown("method", requestData.getHttpMethod()),
94-
valueOrUnknown("uri", getPath(requestData, useUriTemplateAttribute)),
95-
valueOrUnknown("serviceId", getHost(requestData)));
93+
valueOrUnknown("uri", getPath(requestData)), valueOrUnknown("serviceId", getHost(requestData)));
9694
}
9795
}
9896
return Tags.of(valueOrUnknown("method", UNKNOWN), valueOrUnknown("uri", UNKNOWN),
@@ -104,16 +102,15 @@ private static String getHost(RequestData requestData) {
104102
return requestData.getUrl() != null ? requestData.getUrl().getHost() : UNKNOWN;
105103
}
106104

107-
static Iterable<Tag> buildFailedRequestTags(CompletionContext<Object, ServiceInstance, Object> completionContext,
108-
boolean useUriTemplateAttribute) {
105+
static Iterable<Tag> buildFailedRequestTags(CompletionContext<Object, ServiceInstance, Object> completionContext) {
109106
ServiceInstance serviceInstance = completionContext.getLoadBalancerResponse().getServer();
110107
Tags tags = Tags.of(buildServiceInstanceTags(serviceInstance)).and(exception(completionContext.getThrowable()));
111108
if (completionContext.getLoadBalancerRequest().getContext() instanceof RequestDataContext) {
112109
RequestData requestData = ((RequestDataContext) completionContext.getLoadBalancerRequest().getContext())
113110
.getClientRequest();
114111
if (requestData != null) {
115112
return tags.and(Tags.of(valueOrUnknown("method", requestData.getHttpMethod()),
116-
valueOrUnknown("uri", getPath(requestData, useUriTemplateAttribute))));
113+
valueOrUnknown("uri", getPath(requestData))));
117114
}
118115
}
119116
return tags.and(Tags.of(valueOrUnknown("method", UNKNOWN), valueOrUnknown("uri", UNKNOWN)));

spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/stats/MicrometerStatsLoadBalancerLifecycle.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,10 @@ public class MicrometerStatsLoadBalancerLifecycle implements LoadBalancerLifecyc
4949

5050
private final MeterRegistry meterRegistry;
5151

52-
private final boolean useUriTemplateAttribute;
53-
5452
private final ConcurrentHashMap<ServiceInstance, AtomicLong> activeRequestsPerInstance = new ConcurrentHashMap<>();
5553

56-
public MicrometerStatsLoadBalancerLifecycle(MeterRegistry meterRegistry, boolean useUriTemplateAttribute) {
54+
public MicrometerStatsLoadBalancerLifecycle(MeterRegistry meterRegistry) {
5755
this.meterRegistry = meterRegistry;
58-
this.useUriTemplateAttribute = useUriTemplateAttribute;
5956
}
6057

6158
@Override
@@ -92,7 +89,7 @@ public void onComplete(CompletionContext<Object, ServiceInstance, Object> comple
9289
long requestFinishedTimestamp = System.nanoTime();
9390
if (CompletionContext.Status.DISCARD.equals(completionContext.status())) {
9491
Counter.builder("loadbalancer.requests.discard")
95-
.tags(buildDiscardedRequestTags(completionContext, useUriTemplateAttribute))
92+
.tags(buildDiscardedRequestTags(completionContext))
9693
.register(meterRegistry)
9794
.increment();
9895
return;
@@ -105,16 +102,15 @@ public void onComplete(CompletionContext<Object, ServiceInstance, Object> comple
105102
Object loadBalancerRequestContext = completionContext.getLoadBalancerRequest().getContext();
106103
if (requestHasBeenTimed(loadBalancerRequestContext)) {
107104
if (CompletionContext.Status.FAILED.equals(completionContext.status())) {
108-
Timer.builder("loadbalancer.requests.failed")
109-
.tags(buildFailedRequestTags(completionContext, useUriTemplateAttribute))
105+
Timer.builder("loadbalancer.requests.failed").tags(buildFailedRequestTags(completionContext))
110106
.register(meterRegistry)
111107
.record(requestFinishedTimestamp
112108
- ((TimedRequestContext) loadBalancerRequestContext).getRequestStartTime(),
113109
TimeUnit.NANOSECONDS);
114110
return;
115111
}
116112
Timer.builder("loadbalancer.requests.success")
117-
.tags(buildSuccessRequestTags(completionContext, useUriTemplateAttribute))
113+
.tags(buildSuccessRequestTags(completionContext))
118114
.register(meterRegistry)
119115
.record(requestFinishedTimestamp
120116
- ((TimedRequestContext) loadBalancerRequestContext).getRequestStartTime(),

spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/stats/MicrometerStatsLoadBalancerLifecycleTests.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,7 @@ class MicrometerStatsLoadBalancerLifecycleTests {
5656

5757
MeterRegistry meterRegistry = new SimpleMeterRegistry();
5858

59-
MicrometerStatsLoadBalancerLifecycle statsLifecycle = new MicrometerStatsLoadBalancerLifecycle(meterRegistry,
60-
false);
61-
62-
MicrometerStatsLoadBalancerLifecycle statsLifecycleWithUriTemplateAttributeUse = new MicrometerStatsLoadBalancerLifecycle(
63-
meterRegistry, true);
59+
MicrometerStatsLoadBalancerLifecycle statsLifecycle = new MicrometerStatsLoadBalancerLifecycle(meterRegistry);
6460

6561
@Test
6662
void shouldRecordSuccessfulTimedRequest() {
@@ -99,10 +95,10 @@ void shouldRecordSuccessfulTimedRequestWithUriTemplate() {
9995
new DefaultServiceInstance("test-1", "test", "test.org", 8080, false, new HashMap<>()));
10096
ResponseData responseData = new ResponseData(HttpStatus.OK, new HttpHeaders(),
10197
new MultiValueMapAdapter<>(new HashMap<>()), requestData);
102-
statsLifecycleWithUriTemplateAttributeUse.onStartRequest(lbRequest, lbResponse);
98+
statsLifecycle.onStartRequest(lbRequest, lbResponse);
10399
assertThat(meterRegistry.get("loadbalancer.requests.active").gauge().value()).isEqualTo(1);
104100

105-
statsLifecycleWithUriTemplateAttributeUse.onComplete(
101+
statsLifecycle.onComplete(
106102
new CompletionContext<>(CompletionContext.Status.SUCCESS, lbRequest, lbResponse, responseData));
107103

108104
assertThat(meterRegistry.getMeters()).hasSize(2);

0 commit comments

Comments
 (0)