Spring Webflux - 执行器 - Netty 线程指标?

Spring Webflux - Actuator - Netty thread metrics?

关于 Spring Webflux + actuator 项目的 Netty 指标的小问题。

在 Spring MVC 世界中,结合执行器,我们有如下指标:

tomcat_threads_busy_threads
tomcat_threads_current_threads
tomcat_threads_config_max_threads

jetty_threads_busy
jetty_threads_current
jetty_threads_config_max

这对了解应用程序的整体状态有很大帮助。

然而,在 Webflux 中,似乎没有等效项。

我期待 netty_threads_busy 或类似的东西,但找不到任何相关的东西。

请问在 Netty Webflux 世界中什么是等价物?

谢谢

reactor-netty 公开的指标在 spring 启动时默认不启用。之前对此进行过讨论 github issue 并且决定不默认启用这些。

如果您想在自己的应用程序中启用 netty 服务器指标,可以添加以下 bean 来自定义 Netty HttpServer。

    @Bean
    public NettyServerCustomizer nettyServerCustomizer(){
        return httpServer -> httpServer.metrics(true, uriMappingFunction);
    }

警告:

如果您的任何 URI 中有路径参数,您应该提供一个 uriMappingFunction 将它们转换为模板化 URI,即。 /user/1 -> /user/{id}。如果不这样做,可能会导致您的 MeterRegistry 中的基数爆炸。

启用此功能还附带以下建议:

It is strongly recommended applications to configure an upper limit for the number of the URI tags.

Reference Documentation

Java Doc