2.15. 메트릭
2.15.1. 개요
Camel 2.14 사용 가능
Camel은 Camel 경로에 많은 기존 메트릭 통합을 제공하는 반면 Codahale 지표가 추가되었습니다. 이를 통해 최종 사용자는 Codahale 메트릭을 사용하여 수집하는 기존 데이터와 함께 Camel 라우팅 정보를 원활히 제공할 수 있습니다.
Codahale 메트릭을 사용하려면 다음이 필요합니다.
- camel-metrics 구성 요소 추가
- XML 또는 Java 코드에서 경로 메트릭 활성화
성능 메트릭은 표시 방법이 있는 경우에만 사용할 수 있습니다. metrics를 통해 사용할 수 있으므로, Cryostat와 통합할 수 있는 모든 종류의 모니터링 툴을 사용할 수 있습니다. 또한 실제 데이터는 100% Codehale JSON입니다.
2.15.2. 메트릭 경로 정책
단일 경로에 대한 Codahale 메트릭을 얻는 것은 경로별로 MetricsRoutePolicy
를 정의하여 수행할 수 있습니다.
Java에서 경로 정책으로 할당할 MetricsRoutePolicy
인스턴스를 생성합니다. 이는 아래에 표시되어 있습니다.
from("file:src/data?noop=true").routePolicy(new MetricsRoutePolicy()).to("jms:incomingOrders");
XML DSL에서 경로 정책으로 지정된 <bean
>을 정의합니다. 예를 들면 다음과 같습니다.
<bean id="policy" class="org.apache.camel.component.metrics.routepolicy.MetricsRoutePolicy"/> <camelContext xmlns="http://camel.apache.org/schema/spring"> <route routePolicyRef="policy"> <from uri="file:src/data?noop=true"/> [...]
2.15.3. 메트릭 경로 정책 Cryostat
이 팩토리를 사용하면 Codahale 메트릭을 사용하여 경로 사용률 통계를 노출하는 각 경로에 RoutePolicy
를 추가할 수 있습니다. 아래 예제로 Java 및 XML에서 이 팩토리를 사용할 수 있습니다.
Java에서 다음과 같이 CamelContext
에 팩토리를 추가합니다.
context.addRoutePolicyFactory(new MetricsRoutePolicyFactory());
XML DSL에서 다음과 같이 < bean>
을 정의합니다.
<!-- use camel-metrics route policy to gather metrics for all routes --> <bean id="metricsRoutePolicyFactory" class="org.apache.camel.component.metrics.routepolicy.MetricsRoutePolicyFactory"/>
다음과 같이 Java 코드에서 org.apache.camel.component.metrics.routepolicy.MetricsRegistryService
에서 com.codahale.metrics.MetricRegistry
Registry를 유지할 수 있습니다.
MetricRegistryService registryService = context.hasService(MetricsRegistryService.class); if (registryService != null) { MetricsRegistry registry = registryService.getMetricsRegistry(); ... }
2.15.4. 옵션
MetricsRoutePolicyFactory
및 MetricsRoutePolicy
는 다음 옵션을 지원합니다.
이름 | 기본 | 설명 |
|
| 메트릭 보고자에서 또는 통계를 json으로 덤프할 때 사용할 단위입니다. |
|
| JXM 도메인 이름입니다. |
|
공유 | |
|
| 통계를 json 형식으로 출력할 때 매우 인쇄를 사용할지 여부입니다. |
|
| 메트릭 보고기에서 또는 통계를 json으로 덤프할 때 사용할 단위입니다. |
|
|
CamelContext에서 Cryostat를 활성화하면 |