diff --git a/dependencyManagement/build.gradle.kts b/dependencyManagement/build.gradle.kts index aa167df071c4..6c7d95fe10d0 100644 --- a/dependencyManagement/build.gradle.kts +++ b/dependencyManagement/build.gradle.kts @@ -44,7 +44,7 @@ val asmVersion = "9.8" val jmhVersion = "1.37" val mockitoVersion = "4.11.0" val slf4jVersion = "2.0.17" -val semConvVersion = "1.32.0" +val semConvVersion = "1.34.0" val semConvAlphaVersion = semConvVersion.replaceFirst("(-rc.*)?$".toRegex(), "-alpha$1") val CORE_DEPENDENCIES = listOf( diff --git a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractor.java b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractor.java index f7f2231ff1ec..5dd0b0e756f8 100644 --- a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractor.java +++ b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractor.java @@ -6,6 +6,8 @@ package io.opentelemetry.instrumentation.api.incubator.semconv.db; import static io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil.internalSet; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_QUERY_TEXT; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.AttributesBuilder; @@ -27,11 +29,7 @@ public final class DbClientAttributesExtractor // copied from DbIncubatingAttributes private static final AttributeKey DB_STATEMENT = AttributeKey.stringKey("db.statement"); - private static final AttributeKey DB_QUERY_TEXT = AttributeKey.stringKey("db.query.text"); static final AttributeKey DB_OPERATION = AttributeKey.stringKey("db.operation"); - static final AttributeKey DB_OPERATION_NAME = AttributeKey.stringKey("db.operation.name"); - static final AttributeKey DB_RESPONSE_STATUS_CODE = - AttributeKey.stringKey("db.response.status_code"); /** Creates the database client attributes extractor with default configuration. */ public static AttributesExtractor create( diff --git a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientCommonAttributesExtractor.java b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientCommonAttributesExtractor.java index fd01cde296db..ac7e6eb01317 100644 --- a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientCommonAttributesExtractor.java +++ b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientCommonAttributesExtractor.java @@ -6,6 +6,9 @@ package io.opentelemetry.instrumentation.api.incubator.semconv.db; import static io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil.internalSet; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_RESPONSE_STATUS_CODE; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.ErrorAttributes.ERROR_TYPE; import io.opentelemetry.api.common.AttributeKey; @@ -23,15 +26,10 @@ abstract class DbClientCommonAttributesExtractor< // copied from DbIncubatingAttributes private static final AttributeKey DB_NAME = AttributeKey.stringKey("db.name"); - static final AttributeKey DB_NAMESPACE = AttributeKey.stringKey("db.namespace"); static final AttributeKey DB_SYSTEM = AttributeKey.stringKey("db.system"); - public static final AttributeKey DB_SYSTEM_NAME = - AttributeKey.stringKey("db.system.name"); private static final AttributeKey DB_USER = AttributeKey.stringKey("db.user"); private static final AttributeKey DB_CONNECTION_STRING = AttributeKey.stringKey("db.connection_string"); - private static final AttributeKey DB_RESPONSE_STATUS_CODE = - AttributeKey.stringKey("db.response.status_code"); final GETTER getter; diff --git a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsAdvice.java b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsAdvice.java index 72f9b0a221f8..5d2b97b75574 100644 --- a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsAdvice.java +++ b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsAdvice.java @@ -10,6 +10,7 @@ import io.opentelemetry.api.incubator.metrics.ExtendedDoubleHistogramBuilder; import io.opentelemetry.api.metrics.DoubleHistogramBuilder; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.ErrorAttributes; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; @@ -28,11 +29,11 @@ static void applyClientDurationAdvice(DoubleHistogramBuilder builder) { ((ExtendedDoubleHistogramBuilder) builder) .setAttributesAdvice( asList( - DbClientCommonAttributesExtractor.DB_SYSTEM_NAME, - SqlClientAttributesExtractor.DB_COLLECTION_NAME, - DbClientCommonAttributesExtractor.DB_NAMESPACE, - DbClientAttributesExtractor.DB_OPERATION_NAME, - DbClientAttributesExtractor.DB_RESPONSE_STATUS_CODE, + DbAttributes.DB_SYSTEM_NAME, + DbAttributes.DB_COLLECTION_NAME, + DbAttributes.DB_NAMESPACE, + DbAttributes.DB_OPERATION_NAME, + DbAttributes.DB_RESPONSE_STATUS_CODE, ErrorAttributes.ERROR_TYPE, NetworkAttributes.NETWORK_PEER_ADDRESS, NetworkAttributes.NETWORK_PEER_PORT, diff --git a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractor.java b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractor.java index ca60e051f4eb..4cb1ae7fc8cc 100644 --- a/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractor.java +++ b/instrumentation-api-incubator/src/main/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractor.java @@ -6,6 +6,10 @@ package io.opentelemetry.instrumentation.api.incubator.semconv.db; import static io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil.internalSet; +import static io.opentelemetry.semconv.DbAttributes.DB_COLLECTION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_BATCH_SIZE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_QUERY_TEXT; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.AttributesBuilder; @@ -32,14 +36,7 @@ public final class SqlClientAttributesExtractor // copied from DbIncubatingAttributes private static final AttributeKey DB_OPERATION = AttributeKey.stringKey("db.operation"); - private static final AttributeKey DB_OPERATION_NAME = - AttributeKey.stringKey("db.operation.name"); private static final AttributeKey DB_STATEMENT = AttributeKey.stringKey("db.statement"); - private static final AttributeKey DB_QUERY_TEXT = AttributeKey.stringKey("db.query.text"); - static final AttributeKey DB_COLLECTION_NAME = - AttributeKey.stringKey("db.collection.name"); - private static final AttributeKey DB_OPERATION_BATCH_SIZE = - AttributeKey.longKey("db.operation.batch.size"); private static final AttributeKeyTemplate DB_QUERY_PARAMETER = AttributeKeyTemplate.stringKeyTemplate("db.query.parameter"); diff --git a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractorTest.java b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractorTest.java index ec8e7fc373c7..eb69b77c81be 100644 --- a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractorTest.java +++ b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientAttributesExtractorTest.java @@ -13,6 +13,7 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor; import io.opentelemetry.instrumentation.api.internal.SemconvStability; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import java.util.Collections; import java.util.HashMap; @@ -85,15 +86,15 @@ void shouldExtractAllAvailableAttributes() { assertThat(startAttributes.build()) .containsOnly( entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"), - entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"), + entry(DbAttributes.DB_SYSTEM_NAME, "myDb"), entry(DbIncubatingAttributes.DB_USER, "username"), entry(DbIncubatingAttributes.DB_NAME, "potatoes"), entry(DbIncubatingAttributes.DB_CONNECTION_STRING, "mydb:///potatoes"), entry(DbIncubatingAttributes.DB_STATEMENT, "SELECT * FROM potato"), entry(DbIncubatingAttributes.DB_OPERATION, "SELECT"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM potato"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT")); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM potato"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT")); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( @@ -106,10 +107,10 @@ void shouldExtractAllAvailableAttributes() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM potato"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT")); + entry(DbAttributes.DB_SYSTEM_NAME, "myDb"), + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM potato"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT")); } assertThat(endAttributes.build().isEmpty()).isTrue(); diff --git a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsTest.java b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsTest.java index a3769d68e07d..4c7e40e65cca 100644 --- a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsTest.java +++ b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/DbClientMetricsTest.java @@ -19,6 +19,7 @@ import io.opentelemetry.instrumentation.api.instrumenter.OperationListener; import io.opentelemetry.sdk.metrics.SdkMeterProvider; import io.opentelemetry.sdk.testing.exporter.InMemoryMetricReader; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.ErrorAttributes; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; @@ -42,17 +43,17 @@ void collectsMetrics() { Attributes operationAttributes = Attributes.builder() - .put(DbClientCommonAttributesExtractor.DB_SYSTEM_NAME, "myDb") - .put(SqlClientAttributesExtractor.DB_COLLECTION_NAME, "table") - .put(DbClientCommonAttributesExtractor.DB_NAMESPACE, "potatoes") - .put(DbClientAttributesExtractor.DB_OPERATION_NAME, "SELECT") + .put(DbAttributes.DB_SYSTEM_NAME, "myDb") + .put(DbAttributes.DB_COLLECTION_NAME, "table") + .put(DbAttributes.DB_NAMESPACE, "potatoes") + .put(DbAttributes.DB_OPERATION_NAME, "SELECT") .put(ServerAttributes.SERVER_ADDRESS, "localhost") .put(ServerAttributes.SERVER_PORT, 1234) .build(); Attributes responseAttributes = Attributes.builder() - .put(DbClientAttributesExtractor.DB_RESPONSE_STATUS_CODE, "200") + .put(DbAttributes.DB_RESPONSE_STATUS_CODE, "200") .put(ErrorAttributes.ERROR_TYPE, "400") .put(NetworkAttributes.NETWORK_PEER_ADDRESS, "1.2.3.4") .put(NetworkAttributes.NETWORK_PEER_PORT, 8080) @@ -88,23 +89,13 @@ void collectsMetrics() { point .hasSum(0.15 /* seconds */) .hasAttributesSatisfying( - equalTo( - DbClientCommonAttributesExtractor.DB_SYSTEM_NAME, - "myDb"), - equalTo( - DbClientCommonAttributesExtractor.DB_NAMESPACE, - "potatoes"), - equalTo( - DbClientAttributesExtractor.DB_OPERATION_NAME, - "SELECT"), - equalTo( - SqlClientAttributesExtractor.DB_COLLECTION_NAME, - "table"), + equalTo(DbAttributes.DB_SYSTEM_NAME, "myDb"), + equalTo(DbAttributes.DB_NAMESPACE, "potatoes"), + equalTo(DbAttributes.DB_OPERATION_NAME, "SELECT"), + equalTo(DbAttributes.DB_COLLECTION_NAME, "table"), equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), equalTo(ServerAttributes.SERVER_PORT, 1234), - equalTo( - DbClientAttributesExtractor.DB_RESPONSE_STATUS_CODE, - "200"), + equalTo(DbAttributes.DB_RESPONSE_STATUS_CODE, "200"), equalTo(ErrorAttributes.ERROR_TYPE, "400"), equalTo( NetworkAttributes.NETWORK_PEER_ADDRESS, "1.2.3.4"), diff --git a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractorTest.java b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractorTest.java index a8ae1c806240..e5dc0307cb95 100644 --- a/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractorTest.java +++ b/instrumentation-api-incubator/src/test/java/io/opentelemetry/instrumentation/api/incubator/semconv/db/SqlClientAttributesExtractorTest.java @@ -6,6 +6,7 @@ package io.opentelemetry.instrumentation.api.incubator.semconv.db; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_BATCH_SIZE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_QUERY_PARAMETER; import static java.util.Collections.emptySet; import static java.util.Collections.singleton; @@ -16,6 +17,7 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor; import io.opentelemetry.instrumentation.api.internal.SemconvStability; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import java.util.Arrays; import java.util.Collection; @@ -60,7 +62,7 @@ public String getConnectionString(Map map) { @Override public Long getBatchSize(Map map) { - return read(map, "db.operation.batch.size", Long.class); + return read(map, DB_OPERATION_BATCH_SIZE.getKey(), Long.class); } @SuppressWarnings("unchecked") @@ -118,17 +120,17 @@ void shouldExtractAllAttributes() { assertThat(startAttributes.build()) .containsOnly( entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"), - entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"), + entry(DbAttributes.DB_SYSTEM_NAME, "myDb"), entry(DbIncubatingAttributes.DB_USER, "username"), entry(DbIncubatingAttributes.DB_NAME, "potatoes"), entry(DbIncubatingAttributes.DB_CONNECTION_STRING, "mydb:///potatoes"), entry(DbIncubatingAttributes.DB_STATEMENT, "SELECT * FROM potato WHERE id=?"), entry(DbIncubatingAttributes.DB_OPERATION, "SELECT"), entry(DbIncubatingAttributes.DB_SQL_TABLE, "potato"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM potato WHERE id=?"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato")); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM potato WHERE id=?"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato")); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( @@ -142,11 +144,11 @@ void shouldExtractAllAttributes() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM potato WHERE id=?"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato")); + entry(DbAttributes.DB_SYSTEM_NAME, "myDb"), + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM potato WHERE id=?"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato")); } assertThat(endAttributes.build().isEmpty()).isTrue(); @@ -173,8 +175,8 @@ void shouldNotExtractTableIfAttributeIsNotSet() { .containsOnly( entry(DbIncubatingAttributes.DB_STATEMENT, "SELECT *"), entry(DbIncubatingAttributes.DB_OPERATION, "SELECT"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT *"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT")); + entry(DbAttributes.DB_QUERY_TEXT, "SELECT *"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT")); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(attributes.build()) .containsOnly( @@ -183,8 +185,8 @@ void shouldNotExtractTableIfAttributeIsNotSet() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(attributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT *"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT")); + entry(DbAttributes.DB_QUERY_TEXT, "SELECT *"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT")); } } @@ -213,9 +215,9 @@ void shouldExtractTableToSpecifiedKey() { entry(DbIncubatingAttributes.DB_STATEMENT, "SELECT * FROM table"), entry(DbIncubatingAttributes.DB_OPERATION, "SELECT"), entry(DbIncubatingAttributes.DB_CASSANDRA_TABLE, "table"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM table"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "table")); + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM table"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT"), + entry(DbAttributes.DB_COLLECTION_NAME, "table")); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(attributes.build()) .containsOnly( @@ -225,9 +227,9 @@ void shouldExtractTableToSpecifiedKey() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(attributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "SELECT * FROM table"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "SELECT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "table")); + entry(DbAttributes.DB_QUERY_TEXT, "SELECT * FROM table"), + entry(DbAttributes.DB_OPERATION_NAME, "SELECT"), + entry(DbAttributes.DB_COLLECTION_NAME, "table")); } } @@ -251,7 +253,7 @@ void shouldExtractSingleQueryBatchAttributes() { Map request = new HashMap<>(); request.put("db.name", "potatoes"); request.put("db.statements", singleton("INSERT INTO potato VALUES(?)")); - request.put("db.operation.batch.size", 2L); + request.put(DB_OPERATION_BATCH_SIZE.getKey(), 2L); Context context = Context.root(); @@ -273,11 +275,11 @@ void shouldExtractSingleQueryBatchAttributes() { entry(DbIncubatingAttributes.DB_STATEMENT, "INSERT INTO potato VALUES(?)"), entry(DbIncubatingAttributes.DB_OPERATION, "INSERT"), entry(DbIncubatingAttributes.DB_SQL_TABLE, "potato"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "BATCH INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato"), - entry(DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE, 2L)); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "BATCH INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato"), + entry(DB_OPERATION_BATCH_SIZE, 2L)); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( @@ -288,11 +290,11 @@ void shouldExtractSingleQueryBatchAttributes() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "BATCH INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato"), - entry(DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE, 2L)); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "BATCH INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato"), + entry(DB_OPERATION_BATCH_SIZE, 2L)); } assertThat(endAttributes.build().isEmpty()).isTrue(); @@ -306,7 +308,7 @@ void shouldExtractMultiQueryBatchAttributes() { request.put( "db.statements", Arrays.asList("INSERT INTO potato VALUES(1)", "INSERT INTO potato VALUES(2)")); - request.put("db.operation.batch.size", 2L); + request.put(DB_OPERATION_BATCH_SIZE.getKey(), 2L); Context context = Context.root(); @@ -325,22 +327,22 @@ void shouldExtractMultiQueryBatchAttributes() { assertThat(startAttributes.build()) .containsOnly( entry(DbIncubatingAttributes.DB_NAME, "potatoes"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "BATCH INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato"), - entry(DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE, 2L)); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "BATCH INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato"), + entry(DB_OPERATION_BATCH_SIZE, 2L)); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly(entry(DbIncubatingAttributes.DB_NAME, "potatoes")); } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "BATCH INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato"), - entry(DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE, 2L)); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "BATCH INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato"), + entry(DB_OPERATION_BATCH_SIZE, 2L)); } assertThat(endAttributes.build().isEmpty()).isTrue(); @@ -352,7 +354,7 @@ void shouldIgnoreBatchSizeOne() { Map request = new HashMap<>(); request.put("db.name", "potatoes"); request.put("db.statements", singleton("INSERT INTO potato VALUES(?)")); - request.put("db.operation.batch.size", 1L); + request.put(DB_OPERATION_BATCH_SIZE.getKey(), 1L); Context context = Context.root(); @@ -374,10 +376,10 @@ void shouldIgnoreBatchSizeOne() { entry(DbIncubatingAttributes.DB_STATEMENT, "INSERT INTO potato VALUES(?)"), entry(DbIncubatingAttributes.DB_OPERATION, "INSERT"), entry(DbIncubatingAttributes.DB_SQL_TABLE, "potato"), - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato")); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato")); } else if (SemconvStability.emitOldDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( @@ -388,10 +390,10 @@ void shouldIgnoreBatchSizeOne() { } else if (SemconvStability.emitStableDatabaseSemconv()) { assertThat(startAttributes.build()) .containsOnly( - entry(DbIncubatingAttributes.DB_NAMESPACE, "potatoes"), - entry(DbIncubatingAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), - entry(DbIncubatingAttributes.DB_OPERATION_NAME, "INSERT"), - entry(DbIncubatingAttributes.DB_COLLECTION_NAME, "potato")); + entry(DbAttributes.DB_NAMESPACE, "potatoes"), + entry(DbAttributes.DB_QUERY_TEXT, "INSERT INTO potato VALUES(?)"), + entry(DbAttributes.DB_OPERATION_NAME, "INSERT"), + entry(DbAttributes.DB_COLLECTION_NAME, "potato")); } assertThat(endAttributes.build().isEmpty()).isTrue(); @@ -445,7 +447,7 @@ void shouldNotExtractQueryParametersForBatch() { Map request = new HashMap<>(); request.put("db.name", "potatoes"); request.put("db.statements", singleton("INSERT INTO potato VALUES(?)")); - request.put("db.operation.batch.size", 2L); + request.put(DB_OPERATION_BATCH_SIZE.getKey(), 2L); request.put("db.query.parameter", Collections.singletonMap("0", "1")); Context context = Context.root(); diff --git a/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/DynamoDbAttributesExtractor.java b/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/DynamoDbAttributesExtractor.java index 09098be32d76..e81cb5c83e3b 100644 --- a/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/DynamoDbAttributesExtractor.java +++ b/instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/DynamoDbAttributesExtractor.java @@ -5,6 +5,9 @@ package io.opentelemetry.instrumentation.awssdk.v1_11; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; + import com.amazonaws.Request; import com.amazonaws.Response; import io.opentelemetry.api.common.AttributeKey; @@ -21,11 +24,7 @@ class DynamoDbAttributesExtractor implements AttributesExtractor, Res // copied from DbIncubatingAttributes private static final AttributeKey DB_OPERATION = AttributeKey.stringKey("db.operation"); - private static final AttributeKey DB_OPERATION_NAME = - AttributeKey.stringKey("db.operation.name"); private static final AttributeKey DB_SYSTEM = AttributeKey.stringKey("db.system"); - private static final AttributeKey DB_SYSTEM_NAME = - AttributeKey.stringKey("db.system.name"); // copied from AwsIncubatingAttributes private static final AttributeKey> AWS_DYNAMODB_TABLE_NAMES = AttributeKey.stringArrayKey("aws.dynamodb.table_names"); diff --git a/instrumentation/aws-sdk/aws-sdk-1.11/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/AbstractDynamoDbClientTest.java b/instrumentation/aws-sdk/aws-sdk-1.11/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/AbstractDynamoDbClientTest.java index 6263ed2ff89d..4296100e2eb9 100644 --- a/instrumentation/aws-sdk/aws-sdk-1.11/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/AbstractDynamoDbClientTest.java +++ b/instrumentation/aws-sdk/aws-sdk-1.11/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/AbstractDynamoDbClientTest.java @@ -9,13 +9,13 @@ import static io.opentelemetry.instrumentation.testing.junit.db.DbClientMetricsTestUtil.assertDurationMetric; import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_DYNAMODB_TABLE_NAMES; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DbSystemNameIncubatingValues.AWS_DYNAMODB; import static java.util.Collections.singletonList; diff --git a/instrumentation/aws-sdk/aws-sdk-2.2/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/internal/DynamoDbAttributesExtractor.java b/instrumentation/aws-sdk/aws-sdk-2.2/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/internal/DynamoDbAttributesExtractor.java index e4dee3f40f1f..171aa02f801b 100644 --- a/instrumentation/aws-sdk/aws-sdk-2.2/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/internal/DynamoDbAttributesExtractor.java +++ b/instrumentation/aws-sdk/aws-sdk-2.2/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/internal/DynamoDbAttributesExtractor.java @@ -5,6 +5,9 @@ package io.opentelemetry.instrumentation.awssdk.v2_2.internal; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; + import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.AttributesBuilder; import io.opentelemetry.context.Context; @@ -19,11 +22,7 @@ class DynamoDbAttributesExtractor implements AttributesExtractor DB_OPERATION = AttributeKey.stringKey("db.operation"); - private static final AttributeKey DB_OPERATION_NAME = - AttributeKey.stringKey("db.operation.name"); private static final AttributeKey DB_SYSTEM = AttributeKey.stringKey("db.system"); - private static final AttributeKey DB_SYSTEM_NAME = - AttributeKey.stringKey("db.system.name"); // copied from DbIncubatingAttributes.DbSystemIncubatingValues private static final String DYNAMODB = "dynamodb"; diff --git a/instrumentation/aws-sdk/aws-sdk-2.2/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/AbstractAws2ClientCoreTest.java b/instrumentation/aws-sdk/aws-sdk-2.2/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/AbstractAws2ClientCoreTest.java index c6cde851deb8..891188438c5b 100644 --- a/instrumentation/aws-sdk/aws-sdk-2.2/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/AbstractAws2ClientCoreTest.java +++ b/instrumentation/aws-sdk/aws-sdk-2.2/testing/src/main/java/io/opentelemetry/instrumentation/awssdk/v2_2/AbstractAws2ClientCoreTest.java @@ -10,6 +10,8 @@ import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStableDbSystemName; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD; import static io.opentelemetry.semconv.HttpAttributes.HTTP_RESPONSE_STATUS_CODE; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; @@ -17,9 +19,7 @@ import static io.opentelemetry.semconv.UrlAttributes.URL_FULL; import static io.opentelemetry.semconv.incubating.AwsIncubatingAttributes.AWS_REQUEST_ID; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.incubating.RpcIncubatingAttributes.RPC_METHOD; import static io.opentelemetry.semconv.incubating.RpcIncubatingAttributes.RPC_SERVICE; import static io.opentelemetry.semconv.incubating.RpcIncubatingAttributes.RPC_SYSTEM; diff --git a/instrumentation/camel-2.20/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/apachecamel/decorators/DbSpanDecorator.java b/instrumentation/camel-2.20/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/apachecamel/decorators/DbSpanDecorator.java index 421800519c8f..5146ef2d30a8 100644 --- a/instrumentation/camel-2.20/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/apachecamel/decorators/DbSpanDecorator.java +++ b/instrumentation/camel-2.20/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/apachecamel/decorators/DbSpanDecorator.java @@ -28,6 +28,7 @@ import io.opentelemetry.instrumentation.api.internal.SemconvStability; import io.opentelemetry.javaagent.bootstrap.internal.AgentCommonConfig; import io.opentelemetry.javaagent.instrumentation.apachecamel.CamelDirection; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import java.net.URI; import java.util.Map; @@ -125,7 +126,7 @@ public void pre( super.pre(attributes, exchange, endpoint, camelDirection); if (SemconvStability.emitStableDatabaseSemconv()) { - attributes.put(DbIncubatingAttributes.DB_SYSTEM_NAME, system); + attributes.put(DbAttributes.DB_SYSTEM_NAME, system); } if (SemconvStability.emitOldDatabaseSemconv()) { attributes.put(DbIncubatingAttributes.DB_SYSTEM, system); @@ -133,7 +134,7 @@ public void pre( String statement = getStatement(exchange, endpoint); if (statement != null) { if (SemconvStability.emitStableDatabaseSemconv()) { - attributes.put(DbIncubatingAttributes.DB_QUERY_TEXT, statement); + attributes.put(DbAttributes.DB_QUERY_TEXT, statement); } if (SemconvStability.emitOldDatabaseSemconv()) { attributes.put(DbIncubatingAttributes.DB_STATEMENT, statement); @@ -142,7 +143,7 @@ public void pre( String dbName = getDbName(endpoint); if (dbName != null) { if (SemconvStability.emitStableDatabaseSemconv()) { - attributes.put(DbIncubatingAttributes.DB_NAMESPACE, dbName); + attributes.put(DbAttributes.DB_NAMESPACE, dbName); } if (SemconvStability.emitOldDatabaseSemconv()) { attributes.put(DbIncubatingAttributes.DB_NAME, dbName); diff --git a/instrumentation/clickhouse-client-0.5/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/clickhouse/ClickHouseClientTest.java b/instrumentation/clickhouse-client-0.5/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/clickhouse/ClickHouseClientTest.java index 6df88cf73d60..deb9fcda73c2 100644 --- a/instrumentation/clickhouse-client-0.5/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/clickhouse/ClickHouseClientTest.java +++ b/instrumentation/clickhouse-client-0.5/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/clickhouse/ClickHouseClientTest.java @@ -7,12 +7,12 @@ import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_RESPONSE_STATUS_CODE; import static io.opentelemetry.semconv.ErrorAttributes.ERROR_TYPE; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_RESPONSE_STATUS_CODE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; import static java.util.Arrays.asList; diff --git a/instrumentation/jdbc/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jdbc/test/JdbcInstrumentationTest.java b/instrumentation/jdbc/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jdbc/test/JdbcInstrumentationTest.java index 2050cef44978..ce1597a57b63 100644 --- a/instrumentation/jdbc/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jdbc/test/JdbcInstrumentationTest.java +++ b/instrumentation/jdbc/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jdbc/test/JdbcInstrumentationTest.java @@ -11,18 +11,18 @@ import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStableDbSystemName; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_COLLECTION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_BATCH_SIZE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_COLLECTION_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAME; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAMESPACE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SQL_TABLE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_USER; import static java.util.Arrays.asList; import static org.junit.jupiter.api.Assumptions.assumeTrue; diff --git a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/DataSourceDbAttributesExtractor.java b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/DataSourceDbAttributesExtractor.java index b601e4b4aa8a..58c184def1f5 100644 --- a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/DataSourceDbAttributesExtractor.java +++ b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/DataSourceDbAttributesExtractor.java @@ -6,6 +6,8 @@ package io.opentelemetry.instrumentation.jdbc.internal; import static io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil.internalSet; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.AttributesBuilder; @@ -21,10 +23,7 @@ enum DataSourceDbAttributesExtractor implements AttributesExtractor DB_NAME = AttributeKey.stringKey("db.name"); - private static final AttributeKey DB_NAMESPACE = AttributeKey.stringKey("db.namespace"); private static final AttributeKey DB_SYSTEM = AttributeKey.stringKey("db.system"); - private static final AttributeKey DB_SYSTEM_NAME = - AttributeKey.stringKey("db.system.name"); private static final AttributeKey DB_USER = AttributeKey.stringKey("db.user"); private static final AttributeKey DB_CONNECTION_STRING = AttributeKey.stringKey("db.connection_string"); diff --git a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/TransactionAttributeExtractor.java b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/TransactionAttributeExtractor.java index cb3553b1e7cc..f601f8a0a86d 100644 --- a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/TransactionAttributeExtractor.java +++ b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/TransactionAttributeExtractor.java @@ -6,6 +6,7 @@ package io.opentelemetry.instrumentation.jdbc.internal; import static io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil.internalSet; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.AttributesBuilder; @@ -19,8 +20,6 @@ enum TransactionAttributeExtractor implements AttributesExtractor DB_OPERATION = AttributeKey.stringKey("db.operation"); - private static final AttributeKey DB_OPERATION_NAME = - AttributeKey.stringKey("db.operation.name"); @Override public void onStart(AttributesBuilder attributes, Context parentContext, DbRequest request) { diff --git a/instrumentation/jdbc/library/src/test/java/io/opentelemetry/instrumentation/jdbc/datasource/JdbcTelemetryTest.java b/instrumentation/jdbc/library/src/test/java/io/opentelemetry/instrumentation/jdbc/datasource/JdbcTelemetryTest.java index 145f8e07df7d..752f8028a9b1 100644 --- a/instrumentation/jdbc/library/src/test/java/io/opentelemetry/instrumentation/jdbc/datasource/JdbcTelemetryTest.java +++ b/instrumentation/jdbc/library/src/test/java/io/opentelemetry/instrumentation/jdbc/datasource/JdbcTelemetryTest.java @@ -8,19 +8,19 @@ import static io.opentelemetry.instrumentation.testing.junit.db.DbClientMetricsTestUtil.assertDurationMetric; import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_BATCH_SIZE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_QUERY_TEXT; +import static io.opentelemetry.semconv.DbAttributes.DB_RESPONSE_STATUS_CODE; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.ErrorAttributes.ERROR_TYPE; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAME; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAMESPACE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_BATCH_SIZE; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_QUERY_TEXT; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_RESPONSE_STATUS_CODE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SQL_TABLE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; import static org.junit.jupiter.api.Assumptions.assumeTrue; diff --git a/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java b/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java index f8fb3b2d5fdd..cd66b86ca897 100644 --- a/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java +++ b/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java @@ -9,16 +9,16 @@ import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.satisfies; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_ADDRESS; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_PORT; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_TYPE; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static org.assertj.core.api.Assertions.assertThat; import io.opentelemetry.api.trace.SpanKind; diff --git a/instrumentation/lettuce/lettuce-4.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/lettuce/v4_0/LettuceConnectAttributesExtractor.java b/instrumentation/lettuce/lettuce-4.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/lettuce/v4_0/LettuceConnectAttributesExtractor.java index e54700344b79..de23c06bbd46 100644 --- a/instrumentation/lettuce/lettuce-4.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/lettuce/v4_0/LettuceConnectAttributesExtractor.java +++ b/instrumentation/lettuce/lettuce-4.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/lettuce/v4_0/LettuceConnectAttributesExtractor.java @@ -10,6 +10,7 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor; import io.opentelemetry.instrumentation.api.internal.SemconvStability; +import io.opentelemetry.semconv.DbAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import javax.annotation.Nullable; @@ -20,8 +21,7 @@ final class LettuceConnectAttributesExtractor implements AttributesExtractor DB_SYSTEM = AttributeKey.stringKey("db.system"); - private static final AttributeKey DB_SYSTEM_NAME = - AttributeKey.stringKey("db.system.name"); private static final AttributeKey DB_STATEMENT = AttributeKey.stringKey("db.statement"); - private static final AttributeKey DB_QUERY_TEXT = AttributeKey.stringKey("db.query.text"); private static final AttributeKey DB_REDIS_DATABASE_INDEX = AttributeKey.longKey("db.redis.database_index"); // copied from DbIncubatingAttributes.DbSystemIncubatingValues diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java index 56573539a278..41f1258b0837 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java @@ -6,7 +6,7 @@ package io.opentelemetry.instrumentation.lettuce.v5_1; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_REDIS_DATABASE_INDEX; import io.lettuce.core.RedisClient; diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java index 2011a35a525b..29e17ea1e1ba 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java @@ -9,15 +9,15 @@ import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.satisfies; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_ADDRESS; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_PORT; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_TYPE; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAMESPACE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.Arrays.asList; import static org.assertj.core.api.Assertions.assertThat; diff --git a/instrumentation/mongo/mongo-3.1/library/src/main/java/io/opentelemetry/instrumentation/mongo/v3_1/MongoAttributesExtractor.java b/instrumentation/mongo/mongo-3.1/library/src/main/java/io/opentelemetry/instrumentation/mongo/v3_1/MongoAttributesExtractor.java index 75254966739e..1d1cf58f2e0a 100644 --- a/instrumentation/mongo/mongo-3.1/library/src/main/java/io/opentelemetry/instrumentation/mongo/v3_1/MongoAttributesExtractor.java +++ b/instrumentation/mongo/mongo-3.1/library/src/main/java/io/opentelemetry/instrumentation/mongo/v3_1/MongoAttributesExtractor.java @@ -7,6 +7,7 @@ import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitOldDatabaseSemconv; import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv; +import static io.opentelemetry.semconv.DbAttributes.DB_COLLECTION_NAME; import static java.util.Arrays.asList; import com.mongodb.event.CommandStartedEvent; @@ -21,8 +22,6 @@ class MongoAttributesExtractor implements AttributesExtractor { // copied from DbIncubatingAttributes - private static final AttributeKey DB_COLLECTION_NAME = - AttributeKey.stringKey("db.collection.name"); private static final AttributeKey DB_MONGODB_COLLECTION = AttributeKey.stringKey("db.mongodb.collection"); diff --git a/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java b/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java index 214bed2cfe5f..e58ba72ddc1e 100644 --- a/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java +++ b/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java @@ -7,18 +7,18 @@ import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_QUERY_TEXT; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_ADDRESS; import static io.opentelemetry.semconv.NetworkAttributes.NETWORK_PEER_PORT; import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS; import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_NAMESPACE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPERATION_NAME; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_QUERY_TEXT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_REDIS_DATABASE_INDEX; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import static org.assertj.core.api.Assertions.assertThat; import io.opentelemetry.api.trace.SpanKind; diff --git a/licenses/licenses.md b/licenses/licenses.md index 5687895c245a..877c997e50f8 100644 --- a/licenses/licenses.md +++ b/licenses/licenses.md @@ -174,11 +174,11 @@ > - **POM Project URL**: [https://github.com/open-telemetry/opentelemetry-java-contrib](https://github.com/open-telemetry/opentelemetry-java-contrib) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**40** **Group:** `io.opentelemetry.semconv` **Name:** `opentelemetry-semconv` **Version:** `1.32.0` +**40** **Group:** `io.opentelemetry.semconv` **Name:** `opentelemetry-semconv` **Version:** `1.34.0` > - **POM Project URL**: [https://github.com/open-telemetry/semantic-conventions-java](https://github.com/open-telemetry/semantic-conventions-java) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) -**41** **Group:** `io.opentelemetry.semconv` **Name:** `opentelemetry-semconv-incubating` **Version:** `1.32.0-alpha` +**41** **Group:** `io.opentelemetry.semconv` **Name:** `opentelemetry-semconv-incubating` **Version:** `1.34.0-alpha` > - **POM Project URL**: [https://github.com/open-telemetry/semantic-conventions-java](https://github.com/open-telemetry/semantic-conventions-java) > - **POM License**: Apache License, Version 2.0 - [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0) diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/DbClientMetricsTestUtil.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/DbClientMetricsTestUtil.java index ba8c8843d1c3..c604943f755f 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/DbClientMetricsTestUtil.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/DbClientMetricsTestUtil.java @@ -7,7 +7,7 @@ import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv; import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension; diff --git a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/SemconvStabilityUtil.java b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/SemconvStabilityUtil.java index c5b83a80cabf..b316e24bc019 100644 --- a/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/SemconvStabilityUtil.java +++ b/testing-common/src/main/java/io/opentelemetry/instrumentation/testing/junit/db/SemconvStabilityUtil.java @@ -5,6 +5,11 @@ package io.opentelemetry.instrumentation.testing.junit.db; +import static io.opentelemetry.semconv.DbAttributes.DB_COLLECTION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_NAMESPACE; +import static io.opentelemetry.semconv.DbAttributes.DB_OPERATION_NAME; +import static io.opentelemetry.semconv.DbAttributes.DB_QUERY_TEXT; +import static io.opentelemetry.semconv.DbAttributes.DB_SYSTEM_NAME; import static io.opentelemetry.semconv.incubating.CassandraIncubatingAttributes.CASSANDRA_CONSISTENCY_LEVEL; import static io.opentelemetry.semconv.incubating.CassandraIncubatingAttributes.CASSANDRA_COORDINATOR_DC; import static io.opentelemetry.semconv.incubating.CassandraIncubatingAttributes.CASSANDRA_COORDINATOR_ID; @@ -24,7 +29,6 @@ import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SQL_TABLE; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_STATEMENT; import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM; -import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SYSTEM_NAME; import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.instrumentation.api.internal.SemconvStability; @@ -34,13 +38,6 @@ // until old database semconv are dropped in 3.0 public class SemconvStabilityUtil { - private static final AttributeKey DB_NAMESPACE = AttributeKey.stringKey("db.namespace"); - private static final AttributeKey DB_QUERY_TEXT = AttributeKey.stringKey("db.query.text"); - private static final AttributeKey DB_OPERATION_NAME = - AttributeKey.stringKey("db.operation.name"); - private static final AttributeKey DB_COLLECTION_NAME = - AttributeKey.stringKey("db.collection.name"); - private static final Map, AttributeKey> oldToNewMap = buildMap(); @SuppressWarnings("deprecation") // using deprecated semconv