180.4. 在 Camel 中激活 JMX
Camel 2.8 或更早版本需要 Spring JAR 依赖项
spring-context.jar
、spring-aop.jar
、spring-beans.jar
和 spring-core.jar
的类路径是 Camel 能够使用 JMX 工具的类路径。如果这些 .jars 不在 classpath 上,Camel 回退到非 JMX 模式。这种情况使用日志记录器名称 org.apache.camel.impl.DefaultCamelContext
记录在 WARN
级别。
从 Camel 2.9 开始,不再支持 Spring JARs 以 JMX 模式运行 Camel。
180.4.1. 使用 JMX 管理 Apache Camel
默认情况下,Camel 中启用了 JMX 工具代理,这意味着 Camel 运行时会创建并注册 MBean 管理对象及虚拟机中的 MBeanServer
实例。这样,Camel 用户可以立即深入了解 Camel 路由如何执行到单独的处理器级别。
支持的管理对象类型有 端点、路由、服务和 处理器。其中一些管理对象还会在性能计数器属性外公开生命周期操作。
DefaultManagementNamingStrategy
是默认的命名策略,它构建用于 MBean 注册的对象名称。默认情况下,org.apache.camel
是 CamelNamingStrategy
创建的所有对象名称的域名。MBean 对象的域名可以由 Java VM 系统属性配置:
-Dorg.apache.camel.jmx.mbeanObjectDomainName=your.domain.name
或者,通过在 Spring 配置中添加 camelContext 元素中的 jmxAgent
元素:
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring"> <jmxAgent id="agent" mbeanObjectDomainName="your.domain.name"/> ... </camelContext>
Spring 配置始终都优先于系统属性。所有与 JMX 相关的配置都正确。