Drop recordRequestPercentiles property

Drop the `recordRequestPercentiles` property as it overlaps with the
property based `MeterFilter` support.

Fixes gh-11982
This commit is contained in:
Phillip Webb 2018-02-09 12:33:57 -08:00
parent 9a31b08816
commit d259f68fbf
5 changed files with 6 additions and 29 deletions

View File

@ -89,12 +89,6 @@ public class MetricsProperties {
public static class Client {
/**
* Whether instrumented requests record percentiles histogram buckets by
* default.
*/
private boolean recordRequestPercentiles;
/**
* Name of the metric for sent requests.
*/
@ -107,14 +101,6 @@ public class MetricsProperties {
*/
private int maxUriTags = 100;
public boolean isRecordRequestPercentiles() {
return this.recordRequestPercentiles;
}
public void setRecordRequestPercentiles(boolean recordRequestPercentiles) {
this.recordRequestPercentiles = recordRequestPercentiles;
}
public String getRequestsMetricName() {
return this.requestsMetricName;
}

View File

@ -69,8 +69,7 @@ public class RestTemplateMetricsAutoConfiguration {
RestTemplateExchangeTagsProvider restTemplateTagConfigurer,
MetricsProperties properties) {
return new MetricsRestTemplateCustomizer(meterRegistry, restTemplateTagConfigurer,
properties.getWeb().getClient().getRequestsMetricName(),
properties.getWeb().getClient().isRecordRequestPercentiles());
properties.getWeb().getClient().getRequestsMetricName());
}
@Bean

View File

@ -50,15 +50,11 @@ class MetricsClientHttpRequestInterceptor implements ClientHttpRequestIntercepto
private final String metricName;
private final boolean recordPercentiles;
MetricsClientHttpRequestInterceptor(MeterRegistry meterRegistry,
RestTemplateExchangeTagsProvider tagProvider, String metricName,
boolean recordPercentiles) {
RestTemplateExchangeTagsProvider tagProvider, String metricName) {
this.tagProvider = tagProvider;
this.meterRegistry = meterRegistry;
this.metricName = metricName;
this.recordPercentiles = recordPercentiles;
}
@Override
@ -100,8 +96,7 @@ class MetricsClientHttpRequestInterceptor implements ClientHttpRequestIntercepto
String url = ensureLeadingSlash(urlTemplate.get());
return Timer.builder(this.metricName)
.tags(this.tagProvider.getTags(url, request, response))
.description("Timer of RestTemplate operation")
.publishPercentileHistogram(this.recordPercentiles);
.description("Timer of RestTemplate operation");
}
private String ensureLeadingSlash(String url) {

View File

@ -45,13 +45,11 @@ public class MetricsRestTemplateCustomizer implements RestTemplateCustomizer {
* @param meterRegistry the meter registry
* @param tagProvider the tag provider
* @param metricName the name of the recorded metric
* @param recordPercentiles whether percentile histogram buckets should be recorded
*/
public MetricsRestTemplateCustomizer(MeterRegistry meterRegistry,
RestTemplateExchangeTagsProvider tagProvider, String metricName,
boolean recordPercentiles) {
RestTemplateExchangeTagsProvider tagProvider, String metricName) {
this.interceptor = new MetricsClientHttpRequestInterceptor(meterRegistry,
tagProvider, metricName, recordPercentiles);
tagProvider, metricName);
}
@Override

View File

@ -57,8 +57,7 @@ public class MetricsRestTemplateCustomizerTests {
this.restTemplate = new RestTemplate();
this.mockServer = MockRestServiceServer.createServer(this.restTemplate);
this.customizer = new MetricsRestTemplateCustomizer(this.registry,
new DefaultRestTemplateExchangeTagsProvider(), "http.client.requests",
true);
new DefaultRestTemplateExchangeTagsProvider(), "http.client.requests");
this.customizer.customize(this.restTemplate);
}