我有一個Spring集成應用程序,其中幾個FileTailingMessageProducer
和DirectMessageChannel
以編程方式創建 - 即不通過XML配置,但在ApplicationListener<ContextRefreshedEvent>
內。現在我想使用JMX監視消息通道。我想我將不得不使用我的integrationMBeanExporter來添加它們。以編程方式註冊DirectChannelMetrics作爲JMX Bean
這是我的嘗試:
DirectChannelMetrics directChannelMetrics = new DirectChannelMetrics(tailedLines, "tailedLines");
integrationMBeanExporter.getServer().registerMBean(directChannelMetrics, new ObjectName("d:foo=foo"));
但我得到以下異常:
javax.management.NotCompliantMBeanException: MBean class org.springframework.integration.monitor.DirectChannelMetrics does not implement DynamicMBean, and neither follows the Standard MBean conventions
這令我感到詫異,認爲DirectChannelMetrics不符合JMX的要求,因爲當我用jvisualvm查看我的應用程序我可以看到其他註冊的這種類型的bean沒有問題。
任何想法?