기본적으로 Camel Micrometer 구성 요소는 주로 테스트에 적합한 SimpleMeterRegistry 인스턴스를 생성합니다. MeterRegistry 빈을 제공하여 전용 레지스트리를 정의해야 합니다. 마이크로미터 레지스트리는 주로 사용할 백엔드 모니터링 시스템을 결정합니다. CompositeMeterRegistry 는 둘 이상의 모니터링 대상을 처리하는 데 사용할 수 있습니다.
Spring Java 구성을 사용하는 예는 다음과 같습니다.
@Configuration
public static class MyConfig extends SingleRouteCamelConfiguration {
@Bean
@Override
public RouteBuilder route() {
return new RouteBuilder() {
@Override
public void configure() throws Exception {
// define Camel routes here
}
};
}
@Bean(name = MicrometerComponent.METRICS_REGISTRY_NAME)
public MeterRegistry getMeterRegistry() {
CompositeMeterRegistry registry = ...;
registry.add(...);
// ...
return registry;
}
}
@Configuration
public static class MyConfig extends SingleRouteCamelConfiguration {
@Bean
@Override
public RouteBuilder route() {
return new RouteBuilder() {
@Override
public void configure() throws Exception {
// define Camel routes here
}
};
}
@Bean(name = MicrometerComponent.METRICS_REGISTRY_NAME)
public MeterRegistry getMeterRegistry() {
CompositeMeterRegistry registry = ...;
registry.add(...);
// ...
return registry;
}
}
Copy to ClipboardCopied!Toggle word wrapToggle overflow
또는 CDI 사용:
class MyBean extends RouteBuilder {
@Override
public void configure() {
from("...")
// Register the 'my-meter' meter in the MetricRegistry below
.to("metrics:meter:my-meter");
}
@Produces
// If multiple MetricRegistry beans
// @Named(MicrometerComponent.METRIC_REGISTRY_NAME)
MetricRegistry registry() {
CompositeMeterRegistry registry = ...;
registry.add(...);
// ...
return registry;
}
}
class MyBean extends RouteBuilder {
@Override
public void configure() {
from("...")
// Register the 'my-meter' meter in the MetricRegistry below
.to("metrics:meter:my-meter");
}
@Produces
// If multiple MetricRegistry beans
// @Named(MicrometerComponent.METRIC_REGISTRY_NAME)
MetricRegistry registry() {
CompositeMeterRegistry registry = ...;
registry.add(...);
// ...
return registry;
}
}
Copy to ClipboardCopied!Toggle word wrapToggle overflow