From e437c3d0ea01cec889a38dbf65179d2d6674fcd2 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 9 May 2023 15:13:28 +0200 Subject: [PATCH] Make `LettuceObservationContext` public to use it with Observation Predicates. Close #2550 --- .../observability/LettuceObservationContext.java | 6 +++--- .../observability/MicrometerTracingAdapter.java | 16 ++++++++-------- .../lettuce/observability/RedisObservation.java | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/LettuceObservationContext.java b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/LettuceObservationContext.java index f03f6aefa..00230bb46 100644 --- a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/LettuceObservationContext.java +++ b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/LettuceObservationContext.java @@ -15,21 +15,21 @@ */ package org.springframework.data.redis.connection.lettuce.observability; -import org.springframework.lang.Nullable; - import io.lettuce.core.protocol.RedisCommand; import io.lettuce.core.tracing.Tracing.Endpoint; import io.micrometer.observation.Observation; import io.micrometer.observation.transport.Kind; import io.micrometer.observation.transport.SenderContext; +import org.springframework.lang.Nullable; + /** * Micrometer {@link Observation.Context} holding Lettuce contextual details. * * @author Mark Paluch * @since 3.0 */ -class LettuceObservationContext extends SenderContext { +public class LettuceObservationContext extends SenderContext { private volatile @Nullable RedisCommand command; diff --git a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/MicrometerTracingAdapter.java b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/MicrometerTracingAdapter.java index 7ffa4ce17..36aacd4ba 100644 --- a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/MicrometerTracingAdapter.java +++ b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/MicrometerTracingAdapter.java @@ -15,13 +15,6 @@ */ package org.springframework.data.redis.connection.lettuce.observability; -import java.net.SocketAddress; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.data.redis.connection.lettuce.observability.RedisObservation.HighCardinalityCommandKeyNames; -import org.springframework.lang.Nullable; - import io.lettuce.core.protocol.CompleteableCommand; import io.lettuce.core.protocol.RedisCommand; import io.lettuce.core.tracing.TraceContext; @@ -35,6 +28,13 @@ import io.micrometer.observation.ObservationRegistry; import io.micrometer.observation.contextpropagation.ObservationThreadLocalAccessor; import reactor.core.publisher.Mono; +import java.net.SocketAddress; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.data.redis.connection.lettuce.observability.RedisObservation.HighCardinalityCommandKeyNames; +import org.springframework.lang.Nullable; + /** * {@link Tracing} adapter using Micrometer's {@link Observation}. This adapter integrates with Micrometer to propagate * observations into timers, distributed traces and any other registered handlers. Observations include a set of tags @@ -111,7 +111,7 @@ public class MicrometerTracingAdapter implements Tracing { /** * {@link Tracer} implementation based on Micrometer's {@link ObservationRegistry}. */ - class MicrometerTracer extends Tracer { + public class MicrometerTracer extends Tracer { private final ObservationRegistry observationRegistry; diff --git a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/RedisObservation.java b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/RedisObservation.java index 4db8c157b..05e87ff12 100644 --- a/src/main/java/org/springframework/data/redis/connection/lettuce/observability/RedisObservation.java +++ b/src/main/java/org/springframework/data/redis/connection/lettuce/observability/RedisObservation.java @@ -24,7 +24,7 @@ import io.micrometer.observation.docs.ObservationDocumentation; * @author Mark Paluch * @since 3.0 */ -enum RedisObservation implements ObservationDocumentation { +public enum RedisObservation implements ObservationDocumentation { /** * Timer created around a Redis command execution.