关于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问题的讨论,决定默认不启用这些。
如果您想在您自己的应用程序中启用netty服务器指标,您可以添加以下bean来自定义netty HttpServer。
@Bean
public NettyServerCustomizer nettyServerCustomizer(){
return httpServer -> httpServer.metrics(true, uriMappingFunction);
}
警告:
如果您在任何uri中都有路径参数,您应该提供一个uriMappingFunction
,将它们转换为模板化的uri。/user/1
→/user/{id}
。如果不这样做,可能会导致MeterRegistry中的基数爆炸。
启用此功能还附带以下建议:
强烈建议应用程序为URI标记的数量配置一个上限。
参考文档Java文档