Skip to content

Commit d95c3ac

Browse files
Copilottrask
andcommitted
Revert lettuce-5.1 changes as requested
Co-authored-by: trask <[email protected]>
1 parent 6159891 commit d95c3ac

File tree

4 files changed

+9
-172
lines changed

4 files changed

+9
-172
lines changed

instrumentation/lettuce/lettuce-5.1/library/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/LettuceTelemetry.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,7 @@
1010
import io.opentelemetry.api.trace.Tracer;
1111
import io.opentelemetry.api.trace.TracerBuilder;
1212
import io.opentelemetry.instrumentation.api.incubator.semconv.db.RedisCommandSanitizer;
13-
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
1413
import io.opentelemetry.instrumentation.api.instrumenter.OperationListener;
15-
import io.opentelemetry.instrumentation.api.instrumenter.SpanKindExtractor;
1614
import io.opentelemetry.instrumentation.api.internal.EmbeddedInstrumentationProperties;
1715

1816
/** Entrypoint for instrumenting Lettuce or clients. */
@@ -35,12 +33,10 @@ public static LettuceTelemetryBuilder builder(OpenTelemetry openTelemetry) {
3533
private final Tracer tracer;
3634
private final RedisCommandSanitizer sanitizer;
3735
private final OperationListener metrics;
38-
private final Instrumenter<Object, Void> instrumenter;
3936

4037
LettuceTelemetry(
4138
OpenTelemetry openTelemetry,
4239
boolean statementSanitizationEnabled,
43-
boolean instrumentationEnabled,
4440
OperationListener metrics) {
4541
this.metrics = metrics;
4642
TracerBuilder tracerBuilder = openTelemetry.tracerBuilder(INSTRUMENTATION_NAME);
@@ -50,19 +46,13 @@ public static LettuceTelemetryBuilder builder(OpenTelemetry openTelemetry) {
5046
}
5147
tracer = tracerBuilder.build();
5248
sanitizer = RedisCommandSanitizer.create(statementSanitizationEnabled);
53-
54-
// Create minimal instrumenter only for shouldStart checks
55-
// The actual span creation is handled by the existing SpanBuilder mechanism
56-
instrumenter = Instrumenter.<Object, Void>builder(openTelemetry, INSTRUMENTATION_NAME, req -> "redis")
57-
.setEnabled(instrumentationEnabled)
58-
.buildInstrumenter();
5949
}
6050

6151
/**
6252
* Returns a new {@link Tracing} which can be used with methods like {@link
6353
* io.lettuce.core.resource.ClientResources.Builder#tracing(Tracing)}.
6454
*/
6555
public Tracing newTracing() {
66-
return new OpenTelemetryTracing(tracer, sanitizer, metrics, instrumenter);
56+
return new OpenTelemetryTracing(tracer, sanitizer, metrics);
6757
}
6858
}

instrumentation/lettuce/lettuce-5.1/library/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/LettuceTelemetryBuilder.java

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ public final class LettuceTelemetryBuilder {
1717
private final OpenTelemetry openTelemetry;
1818

1919
private boolean statementSanitizationEnabled = true;
20-
private boolean instrumentationEnabled = true;
2120

2221
LettuceTelemetryBuilder(OpenTelemetry openTelemetry) {
2322
this.openTelemetry = openTelemetry;
@@ -35,16 +34,6 @@ public LettuceTelemetryBuilder setStatementSanitizationEnabled(
3534
return this;
3635
}
3736

38-
/**
39-
* Sets whether instrumentation should be enabled. If set to {@code false}, no spans will be
40-
* created by the constructed {@link LettuceTelemetry}. Enabled by default.
41-
*/
42-
@CanIgnoreReturnValue
43-
public LettuceTelemetryBuilder setInstrumentationEnabled(boolean instrumentationEnabled) {
44-
this.instrumentationEnabled = instrumentationEnabled;
45-
return this;
46-
}
47-
4837
/**
4938
* Returns a new {@link LettuceTelemetry} with the settings of this {@link
5039
* LettuceTelemetryBuilder}.
@@ -53,7 +42,6 @@ public LettuceTelemetry build() {
5342
return new LettuceTelemetry(
5443
openTelemetry,
5544
statementSanitizationEnabled,
56-
instrumentationEnabled,
5745
DbClientMetrics.get().create(openTelemetry.getMeterProvider().get(INSTRUMENTATION_NAME)));
5846
}
5947
}

instrumentation/lettuce/lettuce-5.1/library/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/OpenTelemetryTracing.java

Lines changed: 8 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
import io.opentelemetry.context.Context;
3030
import io.opentelemetry.instrumentation.api.incubator.semconv.db.RedisCommandSanitizer;
3131
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
32-
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
3332
import io.opentelemetry.instrumentation.api.instrumenter.OperationListener;
3433
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
3534
import io.opentelemetry.instrumentation.api.semconv.network.NetworkAttributesExtractor;
@@ -55,20 +54,13 @@ final class OpenTelemetryTracing implements Tracing {
5554
ServerAttributesExtractor.create(new LettuceServerAttributesGetter());
5655
private static final AttributesExtractor<OpenTelemetryEndpoint, Void> networkAttributesExtractor =
5756
NetworkAttributesExtractor.create(new LettuceServerAttributesGetter());
58-
59-
// Simple request object for shouldStart checks when we don't have full RedisCommand details
60-
private static final Object REDIS_OPERATION_REQUEST = new Object();
61-
6257
private final TracerProvider tracerProvider;
63-
private final Instrumenter<Object, Void> instrumenter;
6458

6559
OpenTelemetryTracing(
6660
io.opentelemetry.api.trace.Tracer tracer,
6761
RedisCommandSanitizer sanitizer,
68-
OperationListener metrics,
69-
Instrumenter<Object, Void> instrumenter) {
70-
this.tracerProvider = new OpenTelemetryTracerProvider(tracer, sanitizer, metrics, instrumenter);
71-
this.instrumenter = instrumenter;
62+
OperationListener metrics) {
63+
this.tracerProvider = new OpenTelemetryTracerProvider(tracer, sanitizer, metrics);
7264
}
7365

7466
@Override
@@ -108,9 +100,8 @@ private static class OpenTelemetryTracerProvider implements TracerProvider {
108100
OpenTelemetryTracerProvider(
109101
io.opentelemetry.api.trace.Tracer tracer,
110102
RedisCommandSanitizer sanitizer,
111-
OperationListener metrics,
112-
Instrumenter<Object, Void> instrumenter) {
113-
openTelemetryTracer = new OpenTelemetryTracer(tracer, sanitizer, metrics, instrumenter);
103+
OperationListener metrics) {
104+
openTelemetryTracer = new OpenTelemetryTracer(tracer, sanitizer, metrics);
114105
}
115106

116107
@Override
@@ -152,17 +143,14 @@ private static class OpenTelemetryTracer extends Tracer {
152143
private final io.opentelemetry.api.trace.Tracer tracer;
153144
private final RedisCommandSanitizer sanitizer;
154145
private final OperationListener metrics;
155-
private final Instrumenter<Object, Void> instrumenter;
156146

157147
OpenTelemetryTracer(
158148
io.opentelemetry.api.trace.Tracer tracer,
159149
RedisCommandSanitizer sanitizer,
160-
OperationListener metrics,
161-
Instrumenter<Object, Void> instrumenter) {
150+
OperationListener metrics) {
162151
this.tracer = tracer;
163152
this.sanitizer = sanitizer;
164153
this.metrics = metrics;
165-
this.instrumenter = instrumenter;
166154
}
167155

168156
@Override
@@ -191,7 +179,7 @@ private OpenTelemetrySpan nextSpan(Context context) {
191179
if (SemconvStability.emitOldDatabaseSemconv()) {
192180
spanBuilder.setAttribute(DB_SYSTEM, REDIS);
193181
}
194-
return new OpenTelemetrySpan(context, spanBuilder, sanitizer, metrics, instrumenter);
182+
return new OpenTelemetrySpan(context, spanBuilder, sanitizer, metrics);
195183
}
196184
}
197185

@@ -205,7 +193,6 @@ private static class OpenTelemetrySpan extends Tracer.Span {
205193
private final SpanBuilder spanBuilder;
206194
private final RedisCommandSanitizer sanitizer;
207195
private final OperationListener metrics;
208-
private final Instrumenter<Object, Void> instrumenter;
209196

210197
@Nullable private String name;
211198
@Nullable private List<Object> events;
@@ -220,13 +207,11 @@ private static class OpenTelemetrySpan extends Tracer.Span {
220207
Context context,
221208
SpanBuilder spanBuilder,
222209
RedisCommandSanitizer sanitizer,
223-
OperationListener metrics,
224-
Instrumenter<Object, Void> instrumenter) {
210+
OperationListener metrics) {
225211
this.context = context;
226212
this.spanBuilder = spanBuilder;
227213
this.sanitizer = sanitizer;
228214
this.metrics = metrics;
229-
this.instrumenter = instrumenter;
230215
this.attributesBuilder = Attributes.builder();
231216
if (SemconvStability.emitStableDatabaseSemconv()) {
232217
attributesBuilder.put(DB_SYSTEM_NAME, REDIS);
@@ -276,12 +261,7 @@ private void fillEndpoint(OpenTelemetryEndpoint endpoint) {
276261
@CanIgnoreReturnValue
277262
@SuppressWarnings({"UnusedMethod", "EffectivelyPrivate"})
278263
public synchronized Tracer.Span start(RedisCommand<?, ?, ?> command) {
279-
// Check if instrumentation should start for this command
280-
if (!instrumenter.shouldStart(context, (Object) command)) {
281-
return this;
282-
}
283-
284-
startSpanInternal();
264+
start();
285265
long startNanos = System.nanoTime();
286266

287267
Span span = this.span;
@@ -321,15 +301,6 @@ public synchronized Tracer.Span start(RedisCommand<?, ?, ?> command) {
321301
@Override
322302
@CanIgnoreReturnValue
323303
public synchronized Tracer.Span start() {
324-
// Check if instrumentation should start for generic redis operation
325-
if (!instrumenter.shouldStart(context, REDIS_OPERATION_REQUEST)) {
326-
return this;
327-
}
328-
329-
return startSpanInternal();
330-
}
331-
332-
private synchronized Tracer.Span startSpanInternal() {
333304
span = spanBuilder.startSpan();
334305
spanStartNanos = System.nanoTime();
335306
if (name != null) {

instrumentation/lettuce/lettuce-5.1/library/src/test/java/io/opentelemetry/instrumentation/lettuce/v5_1/LettuceShouldStartTest.java

Lines changed: 0 additions & 112 deletions
This file was deleted.

0 commit comments

Comments
 (0)