类中的MaximumUriTagsReachedMeterFilter
配置会RestTemplateMetricsAutoConfiguration
记录一个警告并停止收集,因为我使用 uriVariables 很糟糕。
问题是我必须使用 uri 变量和查询参数构建 URI,并将其传递给org.springframework.web.client.RestTemplate.exchange
. 例如:
String url = "http://foo.example/api/resources/{id}";
// omitting uriVariables and queryParams maps
URI uri = UriComponentsBuilder.fromUriString(url)
.buildAndExpand(uriVariables)
.toUri();
uri = UriComponentsBuilder
.fromUri(uri)
.queryParams(queryParams)
.build()
.toUri();
restTemplate.exchange(
uri,
HttpMethod.GET,
requestEntity,
new ParameterizedTypeReference<Entity>(){}
);
我真的不知道如何将restTemplate.exchange()
参数化字符串 URI 与 uri 变量和查询参数一起传递。这将使检测代码能够只获取一次度量 uri 标记,因为它在 uri 变量扩展之前挂钩。
此外,我正在为自定义 HealthIndicator 使用 RestTemplate 指标。我真的需要解决这个问题。