220.5. Meter Registry

デフォルトでは、Camel Micrometer コンポーネントは、主にテストに適した SimpleMeterRegistry インスタンスを作成します。MeterRegistry Bean を提供して、専用のレジストリーを定義する必要があります。Micrometer レジストリーは、主に使用するバックエンドモニタリングシステムを決定します。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;
    }
}

または 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;
    }
}