Spring Webflux 应用程序,无法获取 reactor.netty.http.client* 指标和 reactor.netty.connection.provider* 指标

Spring Webflux application, unable to get reactor.netty.http.client* metrics and reactor.netty.connection.provider* metrics

关于 Spring Webflux 2.4.2 应用程序指标的小问题。

该应用程序是一个服务器,在处理过程中,使用 Webflux Webclient 来执行出站 HTTP 请求。

现在,我正在查看此页面:https://projectreactor.io/docs/netty/release/reference/index.html#_metrics_5

主要是,我可以看到这些指标:

1 - reactor.netty.http.client.data* 指标

2 - reactor.netty.connection.provider* 指标

3 - reactor.netty.bytebuf.allocator.used* 指标

我只能得到第三组,reactor.netty.bytebuf.allocator.used* 指标。

如何,请问前两种类型需要什么配置?

我已经在做:

  @Bean
    public NettyServerCustomizer nettyServerCustomizer() {
        return httpServer -> httpServer.metrics(true, () -> new MicrometerChannelMetricsRecorder("myService", "myService"));
    }

这是我的主要方法 Schedulers.enableMetrics();

我真的很想知道如何获得前两种类型。

您列表中的第一个指标是客户端发布的指标,第二个是连接提供商发布的指标。两者都与 HttpServer 无关。因此,您需要在 Tcp/HttpClient/ConnectionProvider 中启用这些指标。这以与 HttpServer 类似的方式公开。

HttpClient 示例

HttpClient.create().metrics(true, uriTagValueFunction)

TcpClient 示例

TcpClient.create().metrics(true)

连接提供商示例

ConnectionProvider.builder(poolName).metrics(true).build()

HttpClient JavaDocs

TcpClient JavaDocs

ConnectionProvider JavaDocs