Java Spring引导/集成:禁用JMX
是否可以通过配置设置在Spring集成中禁用MBean的导出 我使用的是带有Spring集成的Spring Boot。我已通过禁用Spring Boot中的JMXJava Spring引导/集成:禁用JMX,java,spring-boot,spring-integration,jmx,Java,Spring Boot,Spring Integration,Jmx,是否可以通过配置设置在Spring集成中禁用MBean的导出 我使用的是带有Spring集成的Spring Boot。我已通过禁用Spring Boot中的JMX endpoints.jmx.enabled: false spring.jmx.enabled: false 但是,我想查看一些Spring集成通道和Enpoint的统计信息,因此我添加了@EnableIntegration和@EnableIntegrationMBeanExport。我现在可以看到姆贝人了 以后是否可以通过设置ap
endpoints.jmx.enabled: false
spring.jmx.enabled: false
但是,我想查看一些Spring集成通道和Enpoint的统计信息,因此我添加了@EnableIntegration
和@EnableIntegrationMBeanExport
。我现在可以看到姆贝人了
以后是否可以通过设置application.yml来禁用Spring Integration MBean的导出(类似于Spring Boot中的方式)?Spring Integration JMX没有这样的特定属性。它与整个引导应用程序的通用JMX配置完全绑定
如果您对
@EnableIntegrationMBeanExport
没有问题,考虑引入自定义<代码> @配置属性并执行类似的<代码> @条件属性在<代码> @配置中添加“<代码> @ EnableIntegrationMBeanExport < /代码> .< /P>默认已启用,因此不需要添加<代码> @ EnabeLime< <代码>或至少@EnableIntegrationMBeanExport
。如果要禁用imx,只需在属性文件中设置spring.jmx.enabled=false
,即可完全禁用jmx。您的设置仅禁用通过JMX暴露运行状况和指标端点。spring.JMX.enabled
已设置为false
,但仍显示spring集成MBean。我已将此信息添加到问题中。因为您通过添加@EnableIntegrationMBeanExport
再次启用它,所以您基本上绕过了Spring Boot。如上所述,删除它并禁用imx.Yes,但通过删除@enableigrationmbeanexport
Spring集成MBean将不再导出,即使我稍后使用Spring.JMX.enabled
属性再次打开JMX。如果您使用的是Spring引导自动配置,则应该会发生这种情况(虽然我不确定他们为此添加了哪个版本的自动配置)。好的,我必须定义自己的属性,例如spring.integration.jmx.enable
,然后使用@ConditionalOnProperty
打开或关闭MBeans导出。