179.4. Camel에서 JMX 활성화

참고

Camel 2.8 또는 이전 버전에 필요한 Spring JAR 종속성

spring-context.jar,spring-aop.jar,spring-beans.jar, spring-beans.jar 및 spring-core.jar 는 JMX 계측을 사용할 수 있도록 Camel의 클래스 경로에 필요합니다. 이러한 .jars가 classpath에 없는 경우 Camel은 JMX 모드가 아닌 로 대체됩니다. 이 상황은 로거 이름 org.apache.camel.impl.DefaultCamelContext 를 사용하여 WARN 수준에서 기록됩니다.

Camel 2.9 부터 Spring JARs는 더 이상 JMX 모드에서 Camel을 실행할 필요가 없습니다.

179.4.1. JMX를 사용하여 Apache Camel 관리

기본적으로 Camel에서는 JMX 계측 에이전트가 활성화되어 있으며 이는 Camel 런타임이 VM에서 MBeanServer 인스턴스를 사용하여 MBean 관리 오브젝트를 생성하고 등록합니다. 이를 통해 Camel 사용자는 Camel 경로를 개별 프로세서 수준으로 수행하는 방법에 대한 인사이트를 즉시 확보할 수 있습니다.

지원되는 관리 오브젝트 유형은 끝점,경로,서비스프로세서 입니다. 또한 이러한 관리 오브젝트 중 일부는 성능 카운터 속성 외에도 라이프사이클 작업을 노출합니다.

DefaultManagementNamingStrategy 는 MBean 등록에 사용되는 오브젝트 이름을 빌드하는 기본 명명 전략입니다. 기본적으로 org.apache.camelCamelNamingStrategy 에서 생성한 모든 오브젝트 이름의 도메인 이름입니다. 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 관련 구성에 적용됩니다.