Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java prometheus端点中缺少Spring Boot Webclient指标_Java_Spring Boot_Prometheus_Spring Webclient_Spring Reactive - Fatal编程技术网

Java prometheus端点中缺少Spring Boot Webclient指标

Java prometheus端点中缺少Spring Boot Webclient指标,java,spring-boot,prometheus,spring-webclient,spring-reactive,Java,Spring Boot,Prometheus,Spring Webclient,Spring Reactive,手动创建WebClient时,Prometheus终结点中的Http客户端指标缺失 下面的代码能够生成预期的http客户端度量,如下所示 @Autowired WebClient.Builder webClientBuilder; @GetMapping("client") public Mono<String> getClientData() { return webClientBuilder.baseUrl("http://localhost:8080").build()

手动创建WebClient时,Prometheus终结点中的Http客户端指标缺失

下面的代码能够生成预期的http客户端度量,如下所示

@Autowired
WebClient.Builder webClientBuilder;

@GetMapping("client")
public Mono<String> getClientData() {
   return webClientBuilder.baseUrl("http://localhost:8080").build().get().retrieve().bodyToMono(String.class);
}

**Prometheus Metrics**
http_client_requests_seconds_count{clientName="localhost",method="GET",metric1="firstmetric",metric2="secondmetric",outcome="CLIENT_ERROR",status="404",uri="/",} 1.0
  http_client_requests_seconds_sum{clientName="localhost",method="GET",metric1="firstmetric",metric2="secondmetric",outcome="CLIENT_ERROR",status="404",uri="/",} 0.2275663
如下图所示手动创建WebClient.Builder时,Prometheus endpoint中缺少上面所示的预期度量值

@GetMapping("client")
    public Mono<String> getClientData() {
        return WebClient.builder().baseUrl("http://localhost:8080").build().get().retrieve().bodyToMono(String.class);
    }

是否有任何解决方案可用于在不自动连接WebClient或WebClient Builder的情况下获取度量值已探索了MetricsWebClient过滤函数,但在最新版本的spring boot中,它似乎被弃用了?

正确使用检测的首选方法是使用spring boot提供的WebClient.Builder实例

如果你不想把它作为一个单独的问题,也许解释为什么选择,也许有一个方法来解决一个让你考虑这个选择的问题,你实际上应该手动地在客户端中手工调用MealClibBlient Frutter函数。 我没有在那门课上看到任何反对的通知,我错过了什么吗