Skip to content

Commit 953f43a

Browse files
committed
only for stable semconv
1 parent afe2475 commit 953f43a

File tree

1 file changed

+32
-17
lines changed
  • instrumentation/spymemcached-2.12/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spymemcached

1 file changed

+32
-17
lines changed

instrumentation/spymemcached-2.12/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spymemcached/SpymemcachedTest.java

+32-17
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,21 @@
2525
import com.google.common.util.concurrent.MoreExecutors;
2626
import io.opentelemetry.api.common.Attributes;
2727
import io.opentelemetry.api.trace.SpanKind;
28+
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
2829
import io.opentelemetry.instrumentation.testing.internal.AutoCleanupExtension;
2930
import io.opentelemetry.instrumentation.testing.junit.AgentInstrumentationExtension;
3031
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
32+
import io.opentelemetry.sdk.testing.assertj.AttributeAssertion;
3133
import io.opentelemetry.sdk.trace.data.StatusData;
3234
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
3335
import java.net.InetSocketAddress;
3436
import java.time.Duration;
37+
import java.util.ArrayList;
3538
import java.util.Arrays;
3639
import java.util.Collection;
3740
import java.util.Collections;
3841
import java.util.HashMap;
42+
import java.util.List;
3943
import java.util.Map;
4044
import java.util.concurrent.ArrayBlockingQueue;
4145
import java.util.concurrent.BlockingQueue;
@@ -259,13 +263,22 @@ void getTimeout() throws InterruptedException {
259263
EXCEPTION_STACKTRACE,
260264
val -> val.isInstanceOf(String.class))))
261265
.hasAttributesSatisfyingExactly(
262-
equalTo(
263-
maybeStable(DB_SYSTEM),
264-
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
265-
equalTo(maybeStable(DB_OPERATION), "get"),
266-
equalTo(
267-
ERROR_TYPE,
268-
"net.spy.memcached.internal.CheckedOperationTimeoutException"))));
266+
withErrorType(
267+
"net.spy.memcached.internal.CheckedOperationTimeoutException",
268+
equalTo(
269+
maybeStable(DB_SYSTEM),
270+
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
271+
equalTo(maybeStable(DB_OPERATION), "get")))));
272+
}
273+
274+
private static List<AttributeAssertion> withErrorType(
275+
String errorType, AttributeAssertion... assertions) {
276+
List<AttributeAssertion> list = new ArrayList<>(Arrays.asList(assertions));
277+
278+
if (SemconvStability.emitStableDatabaseSemconv()) {
279+
list.add(equalTo(ERROR_TYPE, errorType));
280+
}
281+
return list;
269282
}
270283

271284
@Test
@@ -883,11 +896,12 @@ void decrException() {
883896
.hasException(
884897
new IllegalArgumentException("Key is too long (maxlen = 250)"))
885898
.hasAttributesSatisfyingExactly(
886-
equalTo(
887-
maybeStable(DB_SYSTEM),
888-
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
889-
equalTo(maybeStable(DB_OPERATION), "decr"),
890-
equalTo(ERROR_TYPE, "java.lang.IllegalArgumentException"))));
899+
withErrorType(
900+
"java.lang.IllegalArgumentException",
901+
equalTo(
902+
maybeStable(DB_SYSTEM),
903+
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
904+
equalTo(maybeStable(DB_OPERATION), "decr")))));
891905
}
892906

893907
@Test
@@ -970,11 +984,12 @@ void incrException() {
970984
.hasException(
971985
new IllegalArgumentException("Key is too long (maxlen = 250)"))
972986
.hasAttributesSatisfyingExactly(
973-
equalTo(
974-
maybeStable(DB_SYSTEM),
975-
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
976-
equalTo(maybeStable(DB_OPERATION), "incr"),
977-
equalTo(ERROR_TYPE, "java.lang.IllegalArgumentException"))));
987+
withErrorType(
988+
"java.lang.IllegalArgumentException",
989+
equalTo(
990+
maybeStable(DB_SYSTEM),
991+
DbIncubatingAttributes.DbSystemIncubatingValues.MEMCACHED),
992+
equalTo(maybeStable(DB_OPERATION), "incr")))));
978993
}
979994

980995
private static String key(String k) {

0 commit comments

Comments
 (0)