221.14. JMX での Micrometer 統計情報の公開
Micrometer は、MeterRegistry
実装を使用して統計情報をパブリッシュします。実稼働シナリオでは、Prometheus や Graphite などの専用バックエンドを選択することをお勧めしますが、テストまたはローカルデプロイメントでは統計情報を JMX に公開するだけで十分な場合があります。
これを実現するには、次の依存関係を追加します。
<dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-jmx</artifactId> <version>${micrometer-version}</version> </dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-jmx</artifactId>
<version>${micrometer-version}</version>
</dependency>
JmxMeterRegistry
インスタンスを追加します。
@Bean(name = MicrometerComponent.METRICS_REGISTRY_NAME) public MeterRegistry getMeterRegistry() { CompositeMeterRegistry meterRegistry = new CompositeMeterRegistry(); meterRegistry.add(...); meterRegistry.add(new JmxMeterRegistry( CamelJmxConfig.DEFAULT, Clock.SYSTEM, HierarchicalNameMapper.DEFAULT)); return meterRegistry; } }
@Bean(name = MicrometerComponent.METRICS_REGISTRY_NAME)
public MeterRegistry getMeterRegistry() {
CompositeMeterRegistry meterRegistry = new CompositeMeterRegistry();
meterRegistry.add(...);
meterRegistry.add(new JmxMeterRegistry(
CamelJmxConfig.DEFAULT,
Clock.SYSTEM,
HierarchicalNameMapper.DEFAULT));
return meterRegistry;
}
}
HierarchicalNameMapper
ストラテジーは、メーター名とタグを MBean 名に組み立てる方法を決定します。