可観測性
アプリケーションコンポーネントからその操作、タイミング、アプリケーションコードとの関係についてのインサイトを得ることは、レイテンシを理解するために重要です。Lettuce には、Redis のインタラクション中に観測を収集するための Micrometer 統合が付属しています。統合が設定されると、Micrometer は各 Redis コマンドに対してメーターとスパン (分散トレース用) を作成します。
統合を有効にするには、次の構成を LettuceClientConfiguration に適用します。
@Configuration
class ObservabilityConfiguration {
@Bean
public ClientResources clientResources(ObservationRegistry observationRegistry) {
return ClientResources.builder()
.tracing(new MicrometerTracing(observationRegistry, "my-redis-cache"))
.build();
}
@Bean
public LettuceConnectionFactory lettuceConnectionFactory(ClientResources clientResources) {
LettuceClientConfiguration clientConfig = LettuceClientConfiguration.builder()
.clientResources(clientResources).build();
RedisConfiguration redisConfiguration = …;
return new LettuceConnectionFactory(redisConfiguration, clientConfig);
}
}Spring Boot を使用する場合、LettuceMetricsAutoConfiguration は Lettuce の MicrometerCommandLatencyRecorder を構成します。メトリクスのみを使用するか、メトリクスとトレースの両方を使用するかに応じて、アプリケーションからこの自動構成クラスを除外する必要があるかもしれません。 |
詳細については、以下も参照してください: * Lettuce トレース (英語) * OpenTelemetry セマンティック規則 (英語) 。