fix(deps): update dependency io.opentelemetry.semconv:opentelemetry-semconv to v1.30.0-rc.1 (#13116)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Lauri Tulmin <ltulmin@splunk.com>
This commit is contained in:
parent
e65366b860
commit
b1eb1fd3d9
|
@ -18,11 +18,10 @@ dependencies {
|
|||
// Get the semconv version from :dependencyManagement
|
||||
val semconvConstraint = project.project(project(":dependencyManagement").path).configurations["api"].allDependencyConstraints
|
||||
.find { it.group.equals("io.opentelemetry.semconv")
|
||||
&& it.name.equals("opentelemetry-semconv") }
|
||||
&& it.name.equals("opentelemetry-semconv-incubating") }
|
||||
?: throw Exception("semconv constraint not found")
|
||||
val semconvVersion = semconvConstraint.version ?: throw Exception("missing version")
|
||||
otelBom.addExtra(semconvConstraint.group, semconvConstraint.name, semconvVersion)
|
||||
otelBom.addExtra(semconvConstraint.group, "opentelemetry-semconv-incubating", semconvVersion)
|
||||
val semconvAlphaVersion = semconvConstraint.version ?: throw Exception("missing version")
|
||||
otelBom.addExtra(semconvConstraint.group, "opentelemetry-semconv-incubating", semconvAlphaVersion)
|
||||
}
|
||||
|
||||
otelBom.projectFilter.set { it.findProperty("otel.stable") != "true" }
|
||||
|
|
|
@ -12,6 +12,14 @@ javaPlatform {
|
|||
|
||||
dependencies {
|
||||
api(platform("io.opentelemetry:opentelemetry-bom"))
|
||||
|
||||
// Get the semconv version from :dependencyManagement
|
||||
val semconvConstraint = project.project(project(":dependencyManagement").path).configurations["api"].allDependencyConstraints
|
||||
.find { it.group.equals("io.opentelemetry.semconv")
|
||||
&& it.name.equals("opentelemetry-semconv") }
|
||||
?: throw Exception("semconv constraint not found")
|
||||
val semconvVersion = semconvConstraint.version ?: throw Exception("missing version")
|
||||
otelBom.addExtra(semconvConstraint.group, semconvConstraint.name, semconvVersion)
|
||||
}
|
||||
|
||||
otelBom.projectFilter.set { it.findProperty("otel.stable") == "true" }
|
||||
|
|
|
@ -46,11 +46,12 @@ val asmVersion = "9.7.1"
|
|||
val jmhVersion = "1.37"
|
||||
val mockitoVersion = "4.11.0"
|
||||
val slf4jVersion = "2.0.16"
|
||||
val semConvVersion = "1.29.0-alpha"
|
||||
val semConvVersion = "1.30.0-rc.1"
|
||||
val semConvAlphaVersion = semConvVersion.replaceFirst("(-rc.*)?$".toRegex(), "-alpha$1")
|
||||
|
||||
val CORE_DEPENDENCIES = listOf(
|
||||
"io.opentelemetry.semconv:opentelemetry-semconv:${semConvVersion}",
|
||||
"io.opentelemetry.semconv:opentelemetry-semconv-incubating:${semConvVersion}",
|
||||
"io.opentelemetry.semconv:opentelemetry-semconv-incubating:${semConvAlphaVersion}",
|
||||
"com.google.auto.service:auto-service:${autoServiceVersion}",
|
||||
"com.google.auto.service:auto-service-annotations:${autoServiceVersion}",
|
||||
"com.google.auto.value:auto-value:${autoValueVersion}",
|
||||
|
|
|
@ -19,6 +19,7 @@ import io.opentelemetry.sdk.trace.data.StatusData;
|
|||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
|
||||
@SuppressWarnings("deprecation") // CodeIncubatingAttributes.CODE_FUNCTION is deprecated
|
||||
public abstract class AbstractWithSpanTest<T extends U, U> {
|
||||
|
||||
@RegisterExtension
|
||||
|
|
|
@ -24,6 +24,8 @@ abstract class DbClientCommonAttributesExtractor<
|
|||
private static final AttributeKey<String> DB_NAME = AttributeKey.stringKey("db.name");
|
||||
static final AttributeKey<String> DB_NAMESPACE = AttributeKey.stringKey("db.namespace");
|
||||
static final AttributeKey<String> DB_SYSTEM = AttributeKey.stringKey("db.system");
|
||||
public static final AttributeKey<String> DB_SYSTEM_NAME =
|
||||
AttributeKey.stringKey("db.system.name");
|
||||
private static final AttributeKey<String> DB_USER = AttributeKey.stringKey("db.user");
|
||||
private static final AttributeKey<String> DB_CONNECTION_STRING =
|
||||
AttributeKey.stringKey("db.connection_string");
|
||||
|
@ -37,11 +39,15 @@ abstract class DbClientCommonAttributesExtractor<
|
|||
@SuppressWarnings("deprecation") // until old db semconv are dropped
|
||||
@Override
|
||||
public void onStart(AttributesBuilder attributes, Context parentContext, REQUEST request) {
|
||||
internalSet(attributes, DB_SYSTEM, getter.getDbSystem(request));
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
internalSet(
|
||||
attributes,
|
||||
DB_SYSTEM_NAME,
|
||||
SemconvStability.stableDbSystemName(getter.getDbSystem(request)));
|
||||
internalSet(attributes, DB_NAMESPACE, getter.getDbNamespace(request));
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
internalSet(attributes, DB_SYSTEM, getter.getDbSystem(request));
|
||||
internalSet(attributes, DB_USER, getter.getUser(request));
|
||||
internalSet(attributes, DB_NAME, getter.getDbNamespace(request));
|
||||
internalSet(attributes, DB_CONNECTION_STRING, getter.getConnectionString(request));
|
||||
|
|
|
@ -28,7 +28,7 @@ final class DbClientMetricsAdvice {
|
|||
((ExtendedDoubleHistogramBuilder) builder)
|
||||
.setAttributesAdvice(
|
||||
asList(
|
||||
DbClientCommonAttributesExtractor.DB_SYSTEM,
|
||||
DbClientCommonAttributesExtractor.DB_SYSTEM_NAME,
|
||||
SqlClientAttributesExtractor.DB_COLLECTION_NAME,
|
||||
DbClientCommonAttributesExtractor.DB_NAMESPACE,
|
||||
DbClientAttributesExtractor.DB_OPERATION_NAME,
|
||||
|
|
|
@ -37,6 +37,7 @@ class CodeAttributesExtractorTest {
|
|||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Test
|
||||
void shouldExtractAllAttributes() {
|
||||
// given
|
||||
|
|
|
@ -84,6 +84,7 @@ class DbClientAttributesExtractorTest {
|
|||
assertThat(startAttributes.build())
|
||||
.containsOnly(
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"),
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"),
|
||||
entry(DbIncubatingAttributes.DB_USER, "username"),
|
||||
entry(DbIncubatingAttributes.DB_NAME, "potatoes"),
|
||||
entry(DbIncubatingAttributes.DB_CONNECTION_STRING, "mydb:///potatoes"),
|
||||
|
@ -104,7 +105,7 @@ class DbClientAttributesExtractorTest {
|
|||
} else if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
assertThat(startAttributes.build())
|
||||
.containsOnly(
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"),
|
||||
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"));
|
||||
|
|
|
@ -42,7 +42,7 @@ class DbClientMetricsTest {
|
|||
|
||||
Attributes operationAttributes =
|
||||
Attributes.builder()
|
||||
.put(DbClientCommonAttributesExtractor.DB_SYSTEM, "myDb")
|
||||
.put(DbClientCommonAttributesExtractor.DB_SYSTEM_NAME, "myDb")
|
||||
.put(SqlClientAttributesExtractor.DB_COLLECTION_NAME, "table")
|
||||
.put(DbClientCommonAttributesExtractor.DB_NAMESPACE, "potatoes")
|
||||
.put(DbClientAttributesExtractor.DB_OPERATION_NAME, "SELECT")
|
||||
|
@ -89,7 +89,7 @@ class DbClientMetricsTest {
|
|||
.hasSum(0.15 /* seconds */)
|
||||
.hasAttributesSatisfying(
|
||||
equalTo(
|
||||
DbClientCommonAttributesExtractor.DB_SYSTEM,
|
||||
DbClientCommonAttributesExtractor.DB_SYSTEM_NAME,
|
||||
"myDb"),
|
||||
equalTo(
|
||||
DbClientCommonAttributesExtractor.DB_NAMESPACE,
|
||||
|
|
|
@ -108,6 +108,7 @@ class SqlClientAttributesExtractorTest {
|
|||
assertThat(startAttributes.build())
|
||||
.containsOnly(
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"),
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM_NAME, "myDb"),
|
||||
entry(DbIncubatingAttributes.DB_USER, "username"),
|
||||
entry(DbIncubatingAttributes.DB_NAME, "potatoes"),
|
||||
entry(DbIncubatingAttributes.DB_CONNECTION_STRING, "mydb:///potatoes"),
|
||||
|
@ -131,7 +132,7 @@ class SqlClientAttributesExtractorTest {
|
|||
} else if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
assertThat(startAttributes.build())
|
||||
.containsOnly(
|
||||
entry(DbIncubatingAttributes.DB_SYSTEM, "myDb"),
|
||||
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"),
|
||||
|
|
|
@ -7,7 +7,9 @@ package io.opentelemetry.instrumentation.api.internal;
|
|||
|
||||
import static java.util.Arrays.asList;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
|
@ -50,5 +52,30 @@ public final class SemconvStability {
|
|||
return emitStableDatabaseSemconv;
|
||||
}
|
||||
|
||||
private static final Map<String, String> dbSystemNameMap = new HashMap<>();
|
||||
|
||||
static {
|
||||
dbSystemNameMap.put("adabas", "softwareag.adabas");
|
||||
dbSystemNameMap.put("intersystems_cache", "intersystems.cache");
|
||||
dbSystemNameMap.put("cosmosdb", "azure.cosmosdb");
|
||||
dbSystemNameMap.put("db2", "ibm.db2");
|
||||
dbSystemNameMap.put("dynamodb", "aws.dynamodb");
|
||||
dbSystemNameMap.put("h2", "h2database");
|
||||
dbSystemNameMap.put("hanadb", "sap.hana");
|
||||
dbSystemNameMap.put("informix", "ibm.informix");
|
||||
dbSystemNameMap.put("ingres", "actian.ingres");
|
||||
dbSystemNameMap.put("maxdb", "sap.maxdb");
|
||||
dbSystemNameMap.put("mssql", "microsoft.sql_server");
|
||||
dbSystemNameMap.put("netezza", "ibm.netezza");
|
||||
dbSystemNameMap.put("oracle", "oracle.db");
|
||||
dbSystemNameMap.put("redshift", "aws.redshift");
|
||||
dbSystemNameMap.put("spanner", "gcp.spanner");
|
||||
}
|
||||
|
||||
public static String stableDbSystemName(String oldDbSystem) {
|
||||
String dbSystemName = dbSystemNameMap.get(oldDbSystem);
|
||||
return dbSystemName != null ? dbSystemName : oldDbSystem;
|
||||
}
|
||||
|
||||
private SemconvStability() {}
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@ import io.opentelemetry.api.common.AttributesBuilder;
|
|||
import io.opentelemetry.context.Context;
|
||||
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
|
||||
import io.opentelemetry.instrumentation.api.internal.AttributesExtractorUtil;
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import javax.annotation.Nullable;
|
||||
|
@ -20,16 +21,24 @@ public class DynamoDbAttributesExtractor implements AttributesExtractor<Request<
|
|||
|
||||
// copied from DbIncubatingAttributes
|
||||
private static final AttributeKey<String> DB_SYSTEM = AttributeKey.stringKey("db.system");
|
||||
private static final AttributeKey<String> DB_SYSTEM_NAME =
|
||||
AttributeKey.stringKey("db.system.name");
|
||||
// copied from AwsIncubatingAttributes
|
||||
private static final AttributeKey<List<String>> AWS_DYNAMODB_TABLE_NAMES =
|
||||
AttributeKey.stringArrayKey("aws.dynamodb.table_names");
|
||||
|
||||
// copied from DbIncubatingAttributes.DbSystemIncubatingValues
|
||||
private static final String DYNAMODB = "dynamodb";
|
||||
// copied from DbIncubatingAttributes.DbSystemNameIncubatingValues
|
||||
private static final String AWS_DYNAMODB = "aws.dynamodb";
|
||||
|
||||
@Override
|
||||
public void onStart(AttributesBuilder attributes, Context parentContext, Request<?> request) {
|
||||
AttributesExtractorUtil.internalSet(attributes, DB_SYSTEM, DYNAMODB);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
AttributesExtractorUtil.internalSet(attributes, DB_SYSTEM_NAME, AWS_DYNAMODB);
|
||||
} else {
|
||||
AttributesExtractorUtil.internalSet(attributes, DB_SYSTEM, DYNAMODB);
|
||||
}
|
||||
String tableName = RequestAccess.getTableName(request.getOriginalRequest());
|
||||
AttributesExtractorUtil.internalSet(
|
||||
attributes, AWS_DYNAMODB_TABLE_NAMES, Collections.singletonList(tableName));
|
||||
|
|
|
@ -7,18 +7,22 @@ package io.opentelemetry.instrumentation.awssdk.v1_11;
|
|||
|
||||
import static io.opentelemetry.api.common.AttributeKey.stringKey;
|
||||
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.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_SYSTEM;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DbSystemIncubatingValues.DYNAMODB;
|
||||
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;
|
||||
|
||||
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
|
||||
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
|
||||
import com.amazonaws.services.dynamodbv2.model.CreateTableRequest;
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
|
||||
import io.opentelemetry.sdk.testing.assertj.AttributeAssertion;
|
||||
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
|
||||
import io.opentelemetry.testing.internal.armeria.common.HttpResponse;
|
||||
import io.opentelemetry.testing.internal.armeria.common.HttpStatus;
|
||||
import io.opentelemetry.testing.internal.armeria.common.MediaType;
|
||||
|
@ -35,6 +39,7 @@ public abstract class AbstractDynamoDbClientTest extends AbstractBaseAwsClientTe
|
|||
return false;
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Test
|
||||
public void sendRequestWithMockedResponse() throws Exception {
|
||||
AmazonDynamoDBClientBuilder clientBuilder = AmazonDynamoDBClientBuilder.standard();
|
||||
|
@ -49,7 +54,11 @@ public abstract class AbstractDynamoDbClientTest extends AbstractBaseAwsClientTe
|
|||
List<AttributeAssertion> additionalAttributes =
|
||||
Arrays.asList(
|
||||
equalTo(stringKey("aws.table.name"), "sometable"),
|
||||
equalTo(DB_SYSTEM, DYNAMODB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
SemconvStability.emitStableDatabaseSemconv()
|
||||
? AWS_DYNAMODB
|
||||
: DbIncubatingAttributes.DbSystemIncubatingValues.DYNAMODB),
|
||||
equalTo(AWS_DYNAMODB_TABLE_NAMES, singletonList("sometable")));
|
||||
|
||||
Object response = client.createTable(new CreateTableRequest("sometable", null));
|
||||
|
@ -57,6 +66,6 @@ public abstract class AbstractDynamoDbClientTest extends AbstractBaseAwsClientTe
|
|||
response, client, "DynamoDBv2", "CreateTable", "POST", additionalAttributes);
|
||||
|
||||
assertDurationMetric(
|
||||
testing(), "io.opentelemetry.aws-sdk-1.11", DB_SYSTEM, SERVER_ADDRESS, SERVER_PORT);
|
||||
testing(), "io.opentelemetry.aws-sdk-1.11", DB_SYSTEM_NAME, SERVER_ADDRESS, SERVER_PORT);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,8 +54,12 @@ public final class TracingExecutionInterceptor implements ExecutionInterceptor {
|
|||
private static final AttributeKey<String> DB_OPERATION_NAME =
|
||||
AttributeKey.stringKey("db.operation.name");
|
||||
private static final AttributeKey<String> DB_SYSTEM = AttributeKey.stringKey("db.system");
|
||||
private static final AttributeKey<String> DB_SYSTEM_NAME =
|
||||
AttributeKey.stringKey("db.system.name");
|
||||
// copied from DbIncubatingAttributes.DbSystemIncubatingValues
|
||||
private static final String DB_SYSTEM_DYNAMODB = "dynamodb";
|
||||
// copied from DbIncubatingAttributes.DbSystemNameIncubatingValues
|
||||
private static final String DB_SYSTEM_AWS_DYNAMODB = "aws.dynamodb";
|
||||
// copied from AwsIncubatingAttributes
|
||||
private static final AttributeKey<String> AWS_REQUEST_ID =
|
||||
AttributeKey.stringKey("aws.request_id");
|
||||
|
@ -348,7 +352,12 @@ public final class TracingExecutionInterceptor implements ExecutionInterceptor {
|
|||
fieldMapper.mapToAttributes(sdkRequest, awsSdkRequest, span);
|
||||
|
||||
if (awsSdkRequest.type() == DYNAMODB) {
|
||||
span.setAttribute(DB_SYSTEM, DB_SYSTEM_DYNAMODB);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
span.setAttribute(DB_SYSTEM_NAME, DB_SYSTEM_AWS_DYNAMODB);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
span.setAttribute(DB_SYSTEM, DB_SYSTEM_DYNAMODB);
|
||||
}
|
||||
String operation = attributes.getAttribute(SdkExecutionAttribute.OPERATION_NAME);
|
||||
if (operation != null) {
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.instrumentation.awssdk.v2_2;
|
|||
|
||||
import static io.opentelemetry.api.common.AttributeKey.stringKey;
|
||||
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.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_RESPONSE_STATUS_CODE;
|
||||
|
@ -170,7 +171,7 @@ public abstract class AbstractAws2ClientCoreTest {
|
|||
equalTo(stringKey("aws.agent"), "java-aws-sdk"),
|
||||
equalTo(AWS_REQUEST_ID, "UNKNOWN"),
|
||||
equalTo(stringKey("aws.table.name"), "sometable"),
|
||||
equalTo(DB_SYSTEM, "dynamodb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("dynamodb")),
|
||||
equalTo(maybeStable(DB_OPERATION), "CreateTable"),
|
||||
equalTo(
|
||||
stringKey("aws.dynamodb.global_secondary_indexes"),
|
||||
|
@ -196,7 +197,7 @@ public abstract class AbstractAws2ClientCoreTest {
|
|||
equalTo(stringKey("aws.agent"), "java-aws-sdk"),
|
||||
equalTo(AWS_REQUEST_ID, "UNKNOWN"),
|
||||
equalTo(stringKey("aws.table.name"), "sometable"),
|
||||
equalTo(DB_SYSTEM, "dynamodb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("dynamodb")),
|
||||
equalTo(maybeStable(DB_OPERATION), "Query"),
|
||||
equalTo(stringKey("aws.dynamodb.limit"), "10"),
|
||||
equalTo(stringKey("aws.dynamodb.select"), "ALL_ATTRIBUTES"));
|
||||
|
@ -219,7 +220,7 @@ public abstract class AbstractAws2ClientCoreTest {
|
|||
equalTo(stringKey("aws.agent"), "java-aws-sdk"),
|
||||
equalTo(AWS_REQUEST_ID, "UNKNOWN"),
|
||||
equalTo(stringKey("aws.table.name"), "sometable"),
|
||||
equalTo(DB_SYSTEM, "dynamodb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("dynamodb")),
|
||||
equalTo(maybeStable(DB_OPERATION), operation));
|
||||
}
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.instrumentation.awssdk.v2_2;
|
|||
|
||||
import static io.opentelemetry.api.common.AttributeKey.stringKey;
|
||||
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.assertThat;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
|
@ -184,7 +185,7 @@ public abstract class AbstractAws2ClientRecordHttpErrorTest {
|
|||
equalTo(stringKey("aws.agent"), "java-aws-sdk"),
|
||||
equalTo(AWS_REQUEST_ID, requestId),
|
||||
equalTo(stringKey("aws.table.name"), "sometable"),
|
||||
equalTo(DB_SYSTEM, "dynamodb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("dynamodb")),
|
||||
equalTo(maybeStable(DB_OPERATION), operation));
|
||||
if (isRecordIndividualHttpErrorEnabled()) {
|
||||
span.hasEventsSatisfyingExactly(
|
||||
|
|
|
@ -124,7 +124,12 @@ class DbSpanDecorator extends BaseSpanDecorator {
|
|||
CamelDirection camelDirection) {
|
||||
super.pre(attributes, exchange, endpoint, camelDirection);
|
||||
|
||||
attributes.put(DbIncubatingAttributes.DB_SYSTEM, system);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_SYSTEM_NAME, system);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_SYSTEM, system);
|
||||
}
|
||||
String statement = getStatement(exchange, endpoint);
|
||||
if (statement != null) {
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
|
|
|
@ -15,8 +15,8 @@ public class DecoratorRegistry {
|
|||
private static final SpanDecorator DEFAULT = new BaseSpanDecorator();
|
||||
private static final Map<String, SpanDecorator> DECORATORS = loadDecorators();
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
private static Map<String, SpanDecorator> loadDecorators() {
|
||||
|
||||
Map<String, SpanDecorator> result = new HashMap<>();
|
||||
result.put("ahc", new HttpSpanDecorator());
|
||||
result.put("ampq", new MessagingSpanDecorator("ampq"));
|
||||
|
|
|
@ -124,6 +124,6 @@ class CassandraTest extends AbstractHttpServerUsingTest<ConfigurableApplicationC
|
|||
equalTo(
|
||||
maybeStable(DB_STATEMENT),
|
||||
"select * from test.users where id=? ALLOW FILTERING"),
|
||||
equalTo(DB_SYSTEM, "cassandra"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"))));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,6 +14,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class CassandraSqlAttributesGetter implements SqlClientAttributesGetter<CassandraRequest> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(CassandraRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.CASSANDRA;
|
||||
|
|
|
@ -107,7 +107,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "USE " + parameter.keyspace))),
|
||||
trace ->
|
||||
trace.hasSpansSatisfyingExactly(
|
||||
|
@ -121,7 +121,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_NAME), parameter.keyspace),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
|
@ -140,7 +140,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
equalTo(maybeStable(DB_CASSANDRA_TABLE), parameter.table))));
|
||||
|
@ -179,7 +179,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "USE " + parameter.keyspace))),
|
||||
trace ->
|
||||
trace.hasSpansSatisfyingExactly(
|
||||
|
@ -194,7 +194,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_NAME), parameter.keyspace),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
|
@ -218,7 +218,7 @@ class CassandraClientTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
equalTo(maybeStable(DB_CASSANDRA_TABLE), parameter.table)),
|
||||
|
|
|
@ -112,20 +112,20 @@ public abstract class AbstractCassandraTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_NAME), parameter.keyspace),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
equalTo(DB_CASSANDRA_CONSISTENCY_LEVEL, "LOCAL_ONE"),
|
||||
equalTo(DB_CASSANDRA_COORDINATOR_DC, "datacenter1"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_CONSISTENCY_LEVEL), "LOCAL_ONE"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_COORDINATOR_DC), "datacenter1"),
|
||||
satisfies(
|
||||
DB_CASSANDRA_COORDINATOR_ID,
|
||||
maybeStable(DB_CASSANDRA_COORDINATOR_ID),
|
||||
val -> val.isInstanceOf(String.class)),
|
||||
satisfies(
|
||||
DB_CASSANDRA_IDEMPOTENCE,
|
||||
maybeStable(DB_CASSANDRA_IDEMPOTENCE),
|
||||
val -> val.isInstanceOf(Boolean.class)),
|
||||
equalTo(DB_CASSANDRA_PAGE_SIZE, 5000),
|
||||
equalTo(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT, 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_PAGE_SIZE), 5000),
|
||||
equalTo(maybeStable(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT), 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_TABLE), parameter.table))));
|
||||
|
||||
session.close();
|
||||
|
@ -166,20 +166,20 @@ public abstract class AbstractCassandraTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_NAME), parameter.keyspace),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
equalTo(DB_CASSANDRA_CONSISTENCY_LEVEL, "LOCAL_ONE"),
|
||||
equalTo(DB_CASSANDRA_COORDINATOR_DC, "datacenter1"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_CONSISTENCY_LEVEL), "LOCAL_ONE"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_COORDINATOR_DC), "datacenter1"),
|
||||
satisfies(
|
||||
DB_CASSANDRA_COORDINATOR_ID,
|
||||
maybeStable(DB_CASSANDRA_COORDINATOR_ID),
|
||||
val -> val.isInstanceOf(String.class)),
|
||||
satisfies(
|
||||
DB_CASSANDRA_IDEMPOTENCE,
|
||||
maybeStable(DB_CASSANDRA_IDEMPOTENCE),
|
||||
val -> val.isInstanceOf(Boolean.class)),
|
||||
equalTo(DB_CASSANDRA_PAGE_SIZE, 5000),
|
||||
equalTo(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT, 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_PAGE_SIZE), 5000),
|
||||
equalTo(maybeStable(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT), 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_TABLE), parameter.table)),
|
||||
span ->
|
||||
span.hasName("child")
|
||||
|
|
|
@ -13,7 +13,9 @@ import com.datastax.oss.driver.api.core.metadata.Node;
|
|||
import io.opentelemetry.api.common.AttributesBuilder;
|
||||
import io.opentelemetry.context.Context;
|
||||
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
|
||||
import io.opentelemetry.semconv.ServerAttributes;
|
||||
import io.opentelemetry.semconv.incubating.CassandraIncubatingAttributes;
|
||||
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
|
||||
import java.net.InetSocketAddress;
|
||||
import java.net.SocketAddress;
|
||||
|
@ -26,6 +28,7 @@ final class CassandraAttributesExtractor
|
|||
public void onStart(
|
||||
AttributesBuilder attributes, Context parentContext, CassandraRequest request) {}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
public void onEnd(
|
||||
AttributesBuilder attributes,
|
||||
|
@ -46,17 +49,38 @@ final class CassandraAttributesExtractor
|
|||
attributes.put(ServerAttributes.SERVER_PORT, ((InetSocketAddress) address).getPort());
|
||||
}
|
||||
if (coordinator.getDatacenter() != null) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
CassandraIncubatingAttributes.CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
}
|
||||
}
|
||||
if (coordinator.getHostId() != null) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_COORDINATOR_ID, coordinator.getHostId().toString());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
CassandraIncubatingAttributes.CASSANDRA_COORDINATOR_ID,
|
||||
coordinator.getHostId().toString());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_COORDINATOR_ID,
|
||||
coordinator.getHostId().toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT,
|
||||
executionInfo.getSpeculativeExecutionCount());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
CassandraIncubatingAttributes.CASSANDRA_SPECULATIVE_EXECUTION_COUNT,
|
||||
executionInfo.getSpeculativeExecutionCount());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT,
|
||||
executionInfo.getSpeculativeExecutionCount());
|
||||
}
|
||||
|
||||
Statement<?> statement = executionInfo.getStatement();
|
||||
String consistencyLevel;
|
||||
|
@ -67,14 +91,29 @@ final class CassandraAttributesExtractor
|
|||
} else {
|
||||
consistencyLevel = config.getString(DefaultDriverOption.REQUEST_CONSISTENCY);
|
||||
}
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CassandraIncubatingAttributes.CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
}
|
||||
|
||||
if (statement.getPageSize() > 0) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CassandraIncubatingAttributes.CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
}
|
||||
} else {
|
||||
int pageSize = config.getInt(DefaultDriverOption.REQUEST_PAGE_SIZE);
|
||||
if (pageSize > 0) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_PAGE_SIZE, pageSize);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CassandraIncubatingAttributes.CASSANDRA_PAGE_SIZE, pageSize);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_PAGE_SIZE, pageSize);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -82,6 +121,11 @@ final class CassandraAttributesExtractor
|
|||
if (idempotent == null) {
|
||||
idempotent = config.getBoolean(DefaultDriverOption.REQUEST_DEFAULT_IDEMPOTENCE);
|
||||
}
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_IDEMPOTENCE, idempotent);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CassandraIncubatingAttributes.CASSANDRA_QUERY_IDEMPOTENT, idempotent);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DbIncubatingAttributes.DB_CASSANDRA_IDEMPOTENCE, idempotent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class CassandraSqlAttributesGetter implements SqlClientAttributesGetter<CassandraRequest> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(CassandraRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.CASSANDRA;
|
||||
|
|
|
@ -17,6 +17,7 @@ import io.opentelemetry.api.common.AttributeKey;
|
|||
import io.opentelemetry.api.common.AttributesBuilder;
|
||||
import io.opentelemetry.context.Context;
|
||||
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
|
||||
import io.opentelemetry.semconv.ServerAttributes;
|
||||
import java.lang.reflect.Field;
|
||||
import java.net.InetSocketAddress;
|
||||
|
@ -44,6 +45,20 @@ final class CassandraAttributesExtractor
|
|||
private static final AttributeKey<Long> DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT =
|
||||
AttributeKey.longKey("db.cassandra.speculative_execution_count");
|
||||
|
||||
// copied from CassandraIncubatingAttributes
|
||||
private static final AttributeKey<String> CASSANDRA_CONSISTENCY_LEVEL =
|
||||
AttributeKey.stringKey("cassandra.consistency.level");
|
||||
private static final AttributeKey<String> CASSANDRA_COORDINATOR_DC =
|
||||
AttributeKey.stringKey("cassandra.coordinator.dc");
|
||||
private static final AttributeKey<String> CASSANDRA_COORDINATOR_ID =
|
||||
AttributeKey.stringKey("cassandra.coordinator.id");
|
||||
private static final AttributeKey<Long> CASSANDRA_PAGE_SIZE =
|
||||
AttributeKey.longKey("cassandra.page.size");
|
||||
private static final AttributeKey<Boolean> CASSANDRA_QUERY_IDEMPOTENT =
|
||||
AttributeKey.booleanKey("cassandra.query.idempotent");
|
||||
private static final AttributeKey<Long> CASSANDRA_SPECULATIVE_EXECUTION_COUNT =
|
||||
AttributeKey.longKey("cassandra.speculative_execution.count");
|
||||
|
||||
private static final Field proxyAddressField = getProxyAddressField();
|
||||
|
||||
@Override
|
||||
|
@ -66,14 +81,30 @@ final class CassandraAttributesExtractor
|
|||
updateServerAddressAndPort(attributes, coordinator);
|
||||
|
||||
if (coordinator.getDatacenter() != null) {
|
||||
attributes.put(DB_CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_COORDINATOR_DC, coordinator.getDatacenter());
|
||||
}
|
||||
}
|
||||
if (coordinator.getHostId() != null) {
|
||||
attributes.put(DB_CASSANDRA_COORDINATOR_ID, coordinator.getHostId().toString());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_COORDINATOR_ID, coordinator.getHostId().toString());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_COORDINATOR_ID, coordinator.getHostId().toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
attributes.put(
|
||||
DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT, executionInfo.getSpeculativeExecutionCount());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
CASSANDRA_SPECULATIVE_EXECUTION_COUNT, executionInfo.getSpeculativeExecutionCount());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT, executionInfo.getSpeculativeExecutionCount());
|
||||
}
|
||||
|
||||
Statement<?> statement = (Statement<?>) executionInfo.getRequest();
|
||||
String consistencyLevel;
|
||||
|
@ -84,14 +115,29 @@ final class CassandraAttributesExtractor
|
|||
} else {
|
||||
consistencyLevel = config.getString(DefaultDriverOption.REQUEST_CONSISTENCY);
|
||||
}
|
||||
attributes.put(DB_CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_CONSISTENCY_LEVEL, consistencyLevel);
|
||||
}
|
||||
|
||||
if (statement.getPageSize() > 0) {
|
||||
attributes.put(DB_CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_PAGE_SIZE, statement.getPageSize());
|
||||
}
|
||||
} else {
|
||||
int pageSize = config.getInt(DefaultDriverOption.REQUEST_PAGE_SIZE);
|
||||
if (pageSize > 0) {
|
||||
attributes.put(DB_CASSANDRA_PAGE_SIZE, pageSize);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_PAGE_SIZE, pageSize);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_PAGE_SIZE, pageSize);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -99,7 +145,12 @@ final class CassandraAttributesExtractor
|
|||
if (idempotent == null) {
|
||||
idempotent = config.getBoolean(DefaultDriverOption.REQUEST_DEFAULT_IDEMPOTENCE);
|
||||
}
|
||||
attributes.put(DB_CASSANDRA_IDEMPOTENCE, idempotent);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(CASSANDRA_QUERY_IDEMPOTENT, idempotent);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(DB_CASSANDRA_IDEMPOTENCE, idempotent);
|
||||
}
|
||||
}
|
||||
|
||||
private static void updateServerAddressAndPort(AttributesBuilder attributes, Node coordinator) {
|
||||
|
|
|
@ -72,20 +72,20 @@ public abstract class AbstractCassandra44Test extends AbstractCassandraTest {
|
|||
equalTo(SERVER_PORT, cassandraPort),
|
||||
equalTo(NETWORK_PEER_ADDRESS, cassandraIp),
|
||||
equalTo(NETWORK_PEER_PORT, cassandraPort),
|
||||
equalTo(DB_SYSTEM, "cassandra"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "cassandra"),
|
||||
equalTo(maybeStable(DB_NAME), parameter.keyspace),
|
||||
equalTo(maybeStable(DB_STATEMENT), parameter.expectedStatement),
|
||||
equalTo(maybeStable(DB_OPERATION), parameter.operation),
|
||||
equalTo(DB_CASSANDRA_CONSISTENCY_LEVEL, "LOCAL_ONE"),
|
||||
equalTo(DB_CASSANDRA_COORDINATOR_DC, "datacenter1"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_CONSISTENCY_LEVEL), "LOCAL_ONE"),
|
||||
equalTo(maybeStable(DB_CASSANDRA_COORDINATOR_DC), "datacenter1"),
|
||||
satisfies(
|
||||
DB_CASSANDRA_COORDINATOR_ID,
|
||||
maybeStable(DB_CASSANDRA_COORDINATOR_ID),
|
||||
val -> val.isInstanceOf(String.class)),
|
||||
satisfies(
|
||||
DB_CASSANDRA_IDEMPOTENCE,
|
||||
maybeStable(DB_CASSANDRA_IDEMPOTENCE),
|
||||
val -> val.isInstanceOf(Boolean.class)),
|
||||
equalTo(DB_CASSANDRA_PAGE_SIZE, 5000),
|
||||
equalTo(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT, 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_PAGE_SIZE), 5000),
|
||||
equalTo(maybeStable(DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT), 0),
|
||||
equalTo(maybeStable(DB_CASSANDRA_TABLE), parameter.table)),
|
||||
span ->
|
||||
span.hasName("child")
|
||||
|
|
|
@ -29,7 +29,7 @@ final class ClickHouseAttributesGetter implements DbClientAttributesGetter<Click
|
|||
return request.getSqlStatementInfo().getOperation();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(ClickHouseDbRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.CLICKHOUSE;
|
||||
|
|
|
@ -377,7 +377,7 @@ class ClickHouseClientTest {
|
|||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
private static List<AttributeAssertion> attributeAssertions(String statement, String operation) {
|
||||
return asList(
|
||||
equalTo(DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.CLICKHOUSE),
|
||||
equalTo(maybeStable(DB_SYSTEM), DbIncubatingAttributes.DbSystemIncubatingValues.CLICKHOUSE),
|
||||
equalTo(maybeStable(DB_NAME), dbName),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
|
|
|
@ -11,6 +11,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class CouchbaseAttributesGetter implements DbClientAttributesGetter<CouchbaseRequestInfo> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(CouchbaseRequestInfo couchbaseRequest) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE;
|
||||
|
|
|
@ -116,7 +116,7 @@ public abstract class AbstractCouchbaseAsyncClientTest extends AbstractCouchbase
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket")),
|
||||
span ->
|
||||
|
@ -157,7 +157,7 @@ public abstract class AbstractCouchbaseAsyncClientTest extends AbstractCouchbase
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket")),
|
||||
span ->
|
||||
|
@ -205,7 +205,7 @@ public abstract class AbstractCouchbaseAsyncClientTest extends AbstractCouchbase
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket")),
|
||||
span ->
|
||||
|
@ -250,7 +250,7 @@ public abstract class AbstractCouchbaseAsyncClientTest extends AbstractCouchbase
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket")),
|
||||
span ->
|
||||
|
|
|
@ -110,7 +110,7 @@ public abstract class AbstractCouchbaseClientTest extends AbstractCouchbaseTest
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket"))),
|
||||
trace ->
|
||||
|
@ -146,7 +146,7 @@ public abstract class AbstractCouchbaseClientTest extends AbstractCouchbaseTest
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE),
|
||||
equalTo(maybeStable(DB_OPERATION), "Cluster.openBucket"))),
|
||||
trace ->
|
||||
|
|
|
@ -125,7 +125,8 @@ public abstract class AbstractCouchbaseTest {
|
|||
span.hasName(spanName).hasKind(SpanKind.CLIENT);
|
||||
|
||||
List<AttributeAssertion> assertions = new ArrayList<>();
|
||||
assertions.add(equalTo(DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE));
|
||||
assertions.add(
|
||||
equalTo(maybeStable(DB_SYSTEM), DbIncubatingAttributes.DbSystemIncubatingValues.COUCHBASE));
|
||||
if (operation != null) {
|
||||
assertions.add(equalTo(maybeStable(DB_OPERATION), operation));
|
||||
}
|
||||
|
|
|
@ -94,7 +94,7 @@ class ElasticsearchClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(maybeStable(DB_OPERATION), "info"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(URL_FULL, httpHost.toURI() + "/"),
|
||||
|
@ -130,7 +130,7 @@ class ElasticsearchClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(maybeStable(DB_OPERATION), "index"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
@ -188,7 +188,7 @@ class ElasticsearchClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(maybeStable(DB_OPERATION), "info"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
package io.opentelemetry.javaagent.instrumentation.elasticsearch.rest.v5_0;
|
||||
|
||||
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_RESPONSE_STATUS_CODE;
|
||||
|
@ -32,6 +33,7 @@ import org.junit.jupiter.api.Test;
|
|||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
import org.testcontainers.elasticsearch.ElasticsearchContainer;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
class ElasticsearchRest5Test {
|
||||
|
||||
@RegisterExtension
|
||||
|
@ -98,7 +100,7 @@ class ElasticsearchRest5Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
@ -174,7 +176,7 @@ class ElasticsearchRest5Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
package io.opentelemetry.javaagent.instrumentation.elasticsearch.rest.v6_4;
|
||||
|
||||
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_RESPONSE_STATUS_CODE;
|
||||
|
@ -89,7 +90,7 @@ class ElasticsearchRest6Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
@ -164,7 +165,7 @@ class ElasticsearchRest6Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
package io.opentelemetry.javaagent.instrumentation.elasticsearch.rest.v7_0;
|
||||
|
||||
import static io.opentelemetry.instrumentation.testing.GlobalTraceUtil.runWithSpan;
|
||||
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_RESPONSE_STATUS_CODE;
|
||||
|
@ -34,6 +35,7 @@ import org.junit.jupiter.api.extension.RegisterExtension;
|
|||
import org.testcontainers.elasticsearch.ElasticsearchContainer;
|
||||
import org.testcontainers.shaded.com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
class ElasticsearchRest7Test {
|
||||
@RegisterExtension
|
||||
static final InstrumentationExtension testing = AgentInstrumentationExtension.create();
|
||||
|
@ -87,7 +89,7 @@ class ElasticsearchRest7Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
@ -157,7 +159,7 @@ class ElasticsearchRest7Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
package io.opentelemetry.instrumentation.elasticsearch.rest.v7_0;
|
||||
|
||||
import static io.opentelemetry.instrumentation.testing.GlobalTraceUtil.runWithSpan;
|
||||
import static io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.HttpAttributes.HTTP_REQUEST_METHOD;
|
||||
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
|
||||
|
@ -32,6 +33,7 @@ import org.junit.jupiter.api.extension.RegisterExtension;
|
|||
import org.testcontainers.elasticsearch.ElasticsearchContainer;
|
||||
import org.testcontainers.shaded.com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
class ElasticsearchRest7Test {
|
||||
@RegisterExtension
|
||||
static final InstrumentationExtension testing = LibraryInstrumentationExtension.create();
|
||||
|
@ -86,7 +88,7 @@ class ElasticsearchRest7Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
@ -145,7 +147,7 @@ class ElasticsearchRest7Test {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "elasticsearch"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "elasticsearch"),
|
||||
equalTo(HTTP_REQUEST_METHOD, "GET"),
|
||||
equalTo(SERVER_ADDRESS, httpHost.getHostName()),
|
||||
equalTo(SERVER_PORT, httpHost.getPort()),
|
||||
|
|
|
@ -90,7 +90,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "SearchAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "SearchAction"),
|
||||
|
@ -124,7 +124,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "IndexAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "IndexAction"),
|
||||
|
@ -142,7 +142,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "RefreshAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "RefreshAction"),
|
||||
|
@ -173,7 +173,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "GetAction"),
|
||||
|
@ -207,7 +207,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "IndexAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "IndexAction"),
|
||||
|
@ -225,7 +225,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "RefreshAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "RefreshAction"),
|
||||
|
@ -251,7 +251,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "GetAction"),
|
||||
|
@ -283,7 +283,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "DeleteAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "DeleteAction"),
|
||||
|
@ -300,7 +300,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "RefreshAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "RefreshAction"),
|
||||
|
@ -326,7 +326,7 @@ class Elasticsearch53SpringRepositoryTest {
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "SearchAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "SearchAction"),
|
||||
|
|
|
@ -174,7 +174,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasException(expectedException)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "RefreshAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "RefreshAction"),
|
||||
|
@ -229,7 +229,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "CreateIndexAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "CreateIndexAction"),
|
||||
|
@ -243,7 +243,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "ClusterHealthAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "ClusterHealthAction"),
|
||||
|
@ -256,7 +256,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "SearchAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "SearchAction"),
|
||||
|
@ -271,7 +271,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "IndexAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "IndexAction"),
|
||||
|
@ -291,7 +291,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "RefreshAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "RefreshAction"),
|
||||
|
@ -308,7 +308,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "SearchAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "SearchAction"),
|
||||
|
@ -392,7 +392,7 @@ class Elasticsearch53SpringTemplateTest {
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "SearchAction"),
|
||||
equalTo(stringKey("elasticsearch.action"), "SearchAction"),
|
||||
|
|
|
@ -12,6 +12,7 @@ import javax.annotation.Nullable;
|
|||
final class ElasticsearchTransportAttributesGetter
|
||||
implements DbClientAttributesGetter<ElasticTransportRequest> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(ElasticTransportRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH;
|
||||
|
|
|
@ -71,7 +71,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "ClusterHealthAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "ClusterHealthAction"),
|
||||
|
@ -120,7 +120,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasException(expectedException)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
@ -182,7 +182,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "CreateIndexAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "CreateIndexAction"),
|
||||
|
@ -196,7 +196,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "ClusterHealthAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "ClusterHealthAction"),
|
||||
|
@ -209,7 +209,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
@ -227,7 +227,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasAttributesSatisfyingExactly(
|
||||
addIndexActionAttributes(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "IndexAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "IndexAction"),
|
||||
|
@ -246,7 +246,7 @@ public abstract class AbstractElasticsearchNodeClientTest extends AbstractElasti
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
|
|
@ -86,7 +86,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
equalTo(NETWORK_PEER_ADDRESS, getAddress()),
|
||||
equalTo(NETWORK_PEER_PORT, getPort()),
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "ClusterHealthAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "ClusterHealthAction"),
|
||||
|
@ -142,7 +142,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
RemoteTransportException.class.getName())))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
@ -203,7 +203,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
equalTo(NETWORK_PEER_ADDRESS, getAddress()),
|
||||
equalTo(NETWORK_PEER_PORT, getPort()),
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "CreateIndexAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "CreateIndexAction"),
|
||||
|
@ -217,7 +217,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
.hasNoParent()
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), getPutMappingActionName()),
|
||||
equalTo(ELASTICSEARCH_ACTION, getPutMappingActionName()),
|
||||
|
@ -233,7 +233,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
equalTo(NETWORK_PEER_ADDRESS, getAddress()),
|
||||
equalTo(NETWORK_PEER_PORT, getPort()),
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "IndexAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "IndexAction"),
|
||||
|
@ -256,7 +256,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
equalTo(NETWORK_PEER_ADDRESS, getAddress()),
|
||||
equalTo(NETWORK_PEER_PORT, getPort()),
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
@ -276,7 +276,7 @@ public abstract class AbstractElasticsearchTransportClientTest
|
|||
equalTo(NETWORK_PEER_ADDRESS, getAddress()),
|
||||
equalTo(NETWORK_PEER_PORT, getPort()),
|
||||
equalTo(
|
||||
DB_SYSTEM,
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.ELASTICSEARCH),
|
||||
equalTo(maybeStable(DB_OPERATION), "GetAction"),
|
||||
equalTo(ELASTICSEARCH_ACTION, "GetAction"),
|
||||
|
|
|
@ -26,6 +26,7 @@ class ConfiguredTraceAnnotationsTest {
|
|||
assertThat(testing.spans()).isEmpty();
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Test
|
||||
void testMethodWithAnnotationShouldBeTraced() {
|
||||
assertThat(new AnnotationTracedCallable().call()).isEqualTo("Hello!");
|
||||
|
|
|
@ -18,6 +18,7 @@ import java.util.concurrent.Callable;
|
|||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
class TraceAnnotationsTest {
|
||||
|
||||
@RegisterExtension
|
||||
|
|
|
@ -22,6 +22,7 @@ class TraceProvidersTest {
|
|||
@RegisterExtension
|
||||
static final InstrumentationExtension testing = AgentInstrumentationExtension.create();
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@EnumSource(TraceProvider.class)
|
||||
void testShouldSupportProvider(TraceProvider provider) {
|
||||
|
|
|
@ -20,6 +20,7 @@ class TracedMethodsExclusionTest {
|
|||
@RegisterExtension
|
||||
static final InstrumentationExtension testing = AgentInstrumentationExtension.create();
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Test
|
||||
void testCallingTheseMethodsShouldBeTraced() {
|
||||
// Baseline and assumption validation
|
||||
|
|
|
@ -16,6 +16,7 @@ final class GeodeDbAttributesGetter implements DbClientAttributesGetter<GeodeReq
|
|||
private static final SqlStatementSanitizer sanitizer =
|
||||
SqlStatementSanitizer.create(AgentCommonConfig.get().isStatementSanitizationEnabled());
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(GeodeRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.GEODE;
|
||||
|
|
|
@ -137,21 +137,21 @@ class PutGetTest {
|
|||
span.hasName("clear test-region")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "geode"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "geode"),
|
||||
equalTo(maybeStable(DB_NAME), "test-region"),
|
||||
equalTo(maybeStable(DB_OPERATION), "clear")),
|
||||
span ->
|
||||
span.hasName("put test-region")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "geode"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "geode"),
|
||||
equalTo(maybeStable(DB_NAME), "test-region"),
|
||||
equalTo(maybeStable(DB_OPERATION), "put")),
|
||||
span ->
|
||||
span.hasName(verb.concat(" test-region"))
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "geode"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "geode"),
|
||||
equalTo(maybeStable(DB_NAME), "test-region"),
|
||||
equalTo(maybeStable(DB_OPERATION), verb),
|
||||
equalTo(maybeStable(DB_STATEMENT), query))));
|
||||
|
|
|
@ -161,6 +161,7 @@ public class GrailsTest extends AbstractHttpServerTest<ConfigurableApplicationCo
|
|||
return span;
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
public SpanDataAssert assertResponseSpan(
|
||||
SpanDataAssert span, String method, ServerEndpoint endpoint) {
|
||||
|
@ -180,6 +181,7 @@ public class GrailsTest extends AbstractHttpServerTest<ConfigurableApplicationCo
|
|||
return span;
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
public List<Consumer<SpanDataAssert>> errorPageSpanAssertions(
|
||||
String method, ServerEndpoint endpoint) {
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.javaagent.instrumentation.hibernate.v3_3;
|
|||
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -69,7 +70,7 @@ abstract class AbstractHibernateTest {
|
|||
return span.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
@ -84,7 +85,7 @@ abstract class AbstractHibernateTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
|
|
@ -10,6 +10,7 @@ import static io.opentelemetry.api.trace.SpanKind.CLIENT;
|
|||
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -74,7 +75,7 @@ class CriteriaTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -10,6 +10,7 @@ import static io.opentelemetry.api.trace.SpanKind.CLIENT;
|
|||
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -113,7 +114,7 @@ class EntityManagerTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(2))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -144,7 +145,7 @@ class EntityManagerTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -230,7 +231,7 @@ class EntityManagerTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -256,7 +257,7 @@ class EntityManagerTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(3))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -305,7 +306,7 @@ class EntityManagerTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -10,6 +10,7 @@ import static io.opentelemetry.api.trace.SpanKind.CLIENT;
|
|||
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -69,7 +70,7 @@ class QueryTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -127,7 +128,7 @@ class QueryTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -201,7 +202,7 @@ class QueryTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -10,6 +10,7 @@ import static io.opentelemetry.api.trace.SpanKind.CLIENT;
|
|||
import static io.opentelemetry.api.trace.SpanKind.INTERNAL;
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -72,7 +73,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -183,7 +184,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -330,7 +331,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -356,7 +357,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(3))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -490,7 +491,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(2))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -669,7 +670,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -770,7 +771,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(2))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -816,7 +817,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(6))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -832,7 +833,7 @@ class SessionTest extends AbstractHibernateTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(6))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -74,7 +74,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -131,7 +131,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -176,7 +176,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -202,7 +202,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(3))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -251,7 +251,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -281,7 +281,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(3))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -321,7 +321,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -361,7 +361,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -395,7 +395,7 @@ class SpringJpaTest {
|
|||
span.hasName("DELETE test.Customer")
|
||||
.hasKind(CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -428,7 +428,7 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -470,7 +470,7 @@ class SpringJpaTest {
|
|||
span.hasName("DELETE test.Customer")
|
||||
.hasKind(CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.javaagent.instrumentation.hibernate.v6_0;
|
|||
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -84,7 +85,7 @@ public class CriteriaTest extends AbstractHibernateTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.javaagent.instrumentation.hibernate.v6_0;
|
|||
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -151,7 +152,7 @@ public class EntityManagerTest extends AbstractHibernateTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -330,7 +331,7 @@ public class EntityManagerTest extends AbstractHibernateTest {
|
|||
return span.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
@ -346,7 +347,7 @@ public class EntityManagerTest extends AbstractHibernateTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
|
|
@ -109,7 +109,7 @@ public class ProcedureCallTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -7,6 +7,7 @@ package io.opentelemetry.javaagent.instrumentation.hibernate.v6_0;
|
|||
|
||||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
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.sdk.testing.assertj.OpenTelemetryAssertions.satisfies;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_CONNECTION_STRING;
|
||||
|
@ -251,7 +252,7 @@ public class SessionTest extends AbstractHibernateTest {
|
|||
span.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -817,7 +818,7 @@ public class SessionTest extends AbstractHibernateTest {
|
|||
return span.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
@ -833,7 +834,7 @@ public class SessionTest extends AbstractHibernateTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(parent)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "h2"),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName("h2")),
|
||||
equalTo(maybeStable(DB_NAME), "db1"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : "h2:mem:"),
|
||||
|
|
|
@ -19,13 +19,13 @@ import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_SQL_
|
|||
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_USER;
|
||||
import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB;
|
||||
import static java.util.Arrays.asList;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
import io.opentelemetry.api.common.Attributes;
|
||||
import io.opentelemetry.instrumentation.testing.junit.AgentInstrumentationExtension;
|
||||
import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
|
||||
import io.opentelemetry.semconv.incubating.DbIncubatingAttributes;
|
||||
import org.junit.jupiter.api.AfterAll;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
@ -81,7 +81,9 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -133,7 +135,9 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "call next value for Customer_SEQ"),
|
||||
|
@ -157,7 +161,9 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(3))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -196,7 +202,9 @@ class SpringJpaTest {
|
|||
span.hasName("SELECT test.Customer")
|
||||
.hasKind(CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -224,7 +232,9 @@ class SpringJpaTest {
|
|||
span.hasName("UPDATE test.Customer")
|
||||
.hasKind(CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -267,7 +277,9 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -308,7 +320,9 @@ class SpringJpaTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
@ -349,7 +363,9 @@ class SpringJpaTest {
|
|||
span.hasName("DELETE test.Customer")
|
||||
.hasKind(CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, HSQLDB),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
DbIncubatingAttributes.DbSystemIncubatingValues.HSQLDB),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(
|
||||
|
|
|
@ -121,7 +121,7 @@ class ProcedureCallTest {
|
|||
.hasKind(CLIENT)
|
||||
.hasParent(trace.getSpan(1))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), "test"),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "sa"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "{call TEST_PROC()}"),
|
||||
|
|
|
@ -323,7 +323,7 @@ class InfluxDbClientTest {
|
|||
List<AttributeAssertion> result = new ArrayList<>();
|
||||
result.addAll(
|
||||
asList(
|
||||
equalTo(DB_SYSTEM, "influxdb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "influxdb"),
|
||||
equalTo(maybeStable(DB_NAME), databaseName),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
|
|
|
@ -152,7 +152,7 @@ class InfluxDbClient24Test {
|
|||
List<AttributeAssertion> result = new ArrayList<>();
|
||||
result.addAll(
|
||||
asList(
|
||||
equalTo(DB_SYSTEM, "influxdb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "influxdb"),
|
||||
equalTo(maybeStable(DB_NAME), databaseName),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
|
|
|
@ -104,6 +104,7 @@ class JaxRsAnnotations1InstrumentationTest {
|
|||
Arguments.of("/child/call", new JavaInterfaces.DefaultChildClassOnInterface()));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@MethodSource("provideArguments")
|
||||
void createSpanForAnnotatedMethod(String path, Jax action) {
|
||||
|
|
|
@ -93,6 +93,7 @@ class JerseyTest extends AbstractHttpServerUsingTest<Server> {
|
|||
Arguments.of("test3/nested", "/test3/nested", "Test3", "nested", "Test3 nested!"));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@MethodSource("provideArguments")
|
||||
void request(
|
||||
|
|
|
@ -104,6 +104,7 @@ class JaxRs2AnnotationsInstrumentationTest {
|
|||
Arguments.of("/child/call", new JavaInterfaces.DefaultChildClassOnInterface()));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@MethodSource("provideArguments")
|
||||
void createSpanForAnnotatedMethod(String path, Jax action) {
|
||||
|
|
|
@ -104,6 +104,7 @@ class JaxRs3AnnotationsInstrumentationTest {
|
|||
Arguments.of("/child/call", new JavaInterfaces.DefaultChildClassOnInterface()));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@MethodSource("provideArguments")
|
||||
void createSpanForAnnotatedMethod(String path, Jax action) {
|
||||
|
|
|
@ -25,6 +25,7 @@ import org.junit.jupiter.params.ParameterizedTest;
|
|||
import org.junit.jupiter.params.provider.Arguments;
|
||||
import org.junit.jupiter.params.provider.MethodSource;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
public abstract class AbstractJaxRsFilterTest<SERVER> extends AbstractHttpServerUsingTest<SERVER> {
|
||||
|
||||
protected static class TestResponse {
|
||||
|
|
|
@ -33,6 +33,7 @@ import org.junit.jupiter.api.Test;
|
|||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.EnumSource;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
public abstract class AbstractJaxRsHttpServerTest<SERVER> extends AbstractHttpServerTest<SERVER> {
|
||||
|
||||
protected abstract void awaitBarrier(int amount, TimeUnit timeUnit) throws Exception;
|
||||
|
|
|
@ -118,6 +118,7 @@ public abstract class AbstractArquillianJaxWsTest {
|
|||
return span.hasName(service + "/" + methodName).hasKind(SpanKind.INTERNAL);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
private static SpanDataAssert assertAnnotationHandlerSpan(
|
||||
SpanDataAssert span, String service, String methodName) {
|
||||
return span.hasName(service + "Impl." + methodName)
|
||||
|
|
|
@ -40,6 +40,7 @@ import org.springframework.util.ClassUtils;
|
|||
import org.springframework.ws.client.core.WebServiceTemplate;
|
||||
import org.springframework.ws.soap.client.SoapFaultClientException;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
public class AbstractJaxWs2Test extends AbstractHttpServerUsingTest<Server> {
|
||||
@RegisterExtension
|
||||
public static final InstrumentationExtension testing =
|
||||
|
|
|
@ -18,6 +18,7 @@ class JaxWsAnnotationsTest {
|
|||
@RegisterExtension
|
||||
static InstrumentationExtension testing = AgentInstrumentationExtension.create();
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Test
|
||||
void webServiceProviderSpan() {
|
||||
new SoapProvider().invoke(null);
|
||||
|
|
|
@ -16,6 +16,7 @@ import org.junit.jupiter.api.DisplayName;
|
|||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
class JwsAnnotationsTest {
|
||||
@RegisterExtension
|
||||
static InstrumentationExtension testing = AgentInstrumentationExtension.create();
|
||||
|
|
|
@ -8,6 +8,7 @@ package io.opentelemetry.javaagent.instrumentation.jdbc.test;
|
|||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
import static io.opentelemetry.instrumentation.testing.junit.db.DbClientMetricsTestUtil.assertDurationMetric;
|
||||
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.assertThat;
|
||||
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.equalTo;
|
||||
import static io.opentelemetry.semconv.ServerAttributes.SERVER_ADDRESS;
|
||||
|
@ -21,6 +22,7 @@ import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPER
|
|||
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;
|
||||
|
||||
|
@ -371,7 +373,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -383,13 +385,13 @@ class JdbcInstrumentationTest {
|
|||
assertDurationMetric(
|
||||
testing,
|
||||
"io.opentelemetry.jdbc",
|
||||
DB_SYSTEM,
|
||||
DB_SYSTEM_NAME,
|
||||
DB_COLLECTION_NAME,
|
||||
DB_NAMESPACE,
|
||||
DB_OPERATION_NAME);
|
||||
} else {
|
||||
assertDurationMetric(
|
||||
testing, "io.opentelemetry.jdbc", DB_SYSTEM, DB_OPERATION_NAME, DB_NAMESPACE);
|
||||
testing, "io.opentelemetry.jdbc", DB_SYSTEM_NAME, DB_OPERATION_NAME, DB_NAMESPACE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -503,7 +505,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -540,7 +542,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -577,7 +579,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -713,7 +715,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -815,7 +817,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -922,7 +924,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -992,7 +994,7 @@ class JdbcInstrumentationTest {
|
|||
CodeIncubatingAttributes.CODE_NAMESPACE,
|
||||
datasource.getClass().getName()),
|
||||
equalTo(CodeIncubatingAttributes.CODE_FUNCTION, "getConnection"),
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : user),
|
||||
equalTo(maybeStable(DB_NAME), "jdbcunittest"),
|
||||
equalTo(
|
||||
|
@ -1009,7 +1011,7 @@ class JdbcInstrumentationTest {
|
|||
CodeIncubatingAttributes.CODE_NAMESPACE,
|
||||
datasource.getClass().getName()),
|
||||
equalTo(CodeIncubatingAttributes.CODE_FUNCTION, "getConnection"),
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : user),
|
||||
equalTo(maybeStable(DB_NAME), "jdbcunittest"),
|
||||
equalTo(
|
||||
|
@ -1047,7 +1049,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "other_sql"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "other_sql"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "testing ?"),
|
||||
equalTo(
|
||||
DB_CONNECTION_STRING,
|
||||
|
@ -1130,7 +1132,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "other_sql"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "other_sql"),
|
||||
equalTo(maybeStable(DB_NAME), databaseName),
|
||||
equalTo(
|
||||
DB_CONNECTION_STRING,
|
||||
|
@ -1180,7 +1182,7 @@ class JdbcInstrumentationTest {
|
|||
span.hasName("SELECT INFORMATION_SCHEMA.SYSTEM_USERS")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "hsqldb"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "hsqldb"),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : "SA"),
|
||||
equalTo(
|
||||
|
@ -1254,7 +1256,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "other_sql"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "other_sql"),
|
||||
equalTo(
|
||||
DB_CONNECTION_STRING,
|
||||
emitStableDatabaseSemconv() ? null : "testdb://localhost"),
|
||||
|
@ -1360,7 +1362,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -1417,7 +1419,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -1463,7 +1465,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
@ -1511,7 +1513,7 @@ class JdbcInstrumentationTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, system),
|
||||
equalTo(maybeStable(DB_SYSTEM), maybeStableDbSystemName(system)),
|
||||
equalTo(maybeStable(DB_NAME), dbNameLower),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : username),
|
||||
equalTo(DB_CONNECTION_STRING, emitStableDatabaseSemconv() ? null : url),
|
||||
|
|
|
@ -7,7 +7,10 @@ package io.opentelemetry.javaagent.instrumentation.scalaexecutors
|
|||
|
||||
import io.opentelemetry.api.trace.{SpanKind, Tracer}
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv
|
||||
import io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.maybeStable
|
||||
import io.opentelemetry.instrumentation.testing.junit.db.SemconvStabilityUtil.{
|
||||
maybeStable,
|
||||
maybeStableDbSystemName
|
||||
}
|
||||
import io.opentelemetry.instrumentation.testing.junit.{
|
||||
AgentInstrumentationExtension,
|
||||
InstrumentationExtension
|
||||
|
@ -81,7 +84,10 @@ class SlickTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, DbSystemIncubatingValues.H2),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
maybeStableDbSystemName(DbSystemIncubatingValues.H2)
|
||||
),
|
||||
equalTo(maybeStable(DB_NAME), Db),
|
||||
equalTo(
|
||||
DB_USER,
|
||||
|
|
|
@ -23,6 +23,8 @@ enum DataSourceDbAttributesExtractor implements AttributesExtractor<DataSource,
|
|||
private static final AttributeKey<String> DB_NAME = AttributeKey.stringKey("db.name");
|
||||
private static final AttributeKey<String> DB_NAMESPACE = AttributeKey.stringKey("db.namespace");
|
||||
private static final AttributeKey<String> DB_SYSTEM = AttributeKey.stringKey("db.system");
|
||||
private static final AttributeKey<String> DB_SYSTEM_NAME =
|
||||
AttributeKey.stringKey("db.system.name");
|
||||
private static final AttributeKey<String> DB_USER = AttributeKey.stringKey("db.user");
|
||||
private static final AttributeKey<String> DB_CONNECTION_STRING =
|
||||
AttributeKey.stringKey("db.connection_string");
|
||||
|
@ -43,13 +45,15 @@ enum DataSourceDbAttributesExtractor implements AttributesExtractor<DataSource,
|
|||
}
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
internalSet(attributes, DB_NAMESPACE, getName(dbInfo));
|
||||
internalSet(
|
||||
attributes, DB_SYSTEM_NAME, SemconvStability.stableDbSystemName(dbInfo.getSystem()));
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
internalSet(attributes, DB_USER, dbInfo.getUser());
|
||||
internalSet(attributes, DB_NAME, getName(dbInfo));
|
||||
internalSet(attributes, DB_CONNECTION_STRING, dbInfo.getShortUrl());
|
||||
internalSet(attributes, DB_SYSTEM, dbInfo.getSystem());
|
||||
}
|
||||
internalSet(attributes, DB_SYSTEM, dbInfo.getSystem());
|
||||
}
|
||||
|
||||
private static String getName(DbInfo dbInfo) {
|
||||
|
|
|
@ -17,7 +17,7 @@ import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPER
|
|||
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 org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
import io.opentelemetry.instrumentation.api.internal.SemconvStability;
|
||||
|
@ -61,7 +61,7 @@ class JdbcTelemetryTest {
|
|||
"io.opentelemetry.jdbc",
|
||||
DB_NAMESPACE,
|
||||
DB_OPERATION_NAME,
|
||||
DB_SYSTEM,
|
||||
DB_SYSTEM_NAME,
|
||||
SERVER_ADDRESS,
|
||||
SERVER_PORT);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ class OpenTelemetryDataSourceTest {
|
|||
@RegisterExtension
|
||||
static final InstrumentationExtension testing = LibraryInstrumentationExtension.create();
|
||||
|
||||
@SuppressWarnings("deprecation") // TODO DB_CONNECTION_STRING deprecation
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@ParameterizedTest
|
||||
@ArgumentsSource(GetConnectionMethods.class)
|
||||
void shouldEmitGetConnectionSpans(GetConnectionFunction getConnection) throws SQLException {
|
||||
|
@ -59,7 +59,7 @@ class OpenTelemetryDataSourceTest {
|
|||
CodeIncubatingAttributes.CODE_NAMESPACE,
|
||||
TestDataSource.class.getName()),
|
||||
equalTo(CodeIncubatingAttributes.CODE_FUNCTION, "getConnection"),
|
||||
equalTo(DB_SYSTEM, "postgresql"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "postgresql"),
|
||||
equalTo(maybeStable(DB_NAME), "dbname"),
|
||||
equalTo(
|
||||
DB_CONNECTION_STRING,
|
||||
|
|
|
@ -8,6 +8,7 @@ package io.opentelemetry.instrumentation.jdbc.internal;
|
|||
import static io.opentelemetry.instrumentation.api.internal.SemconvStability.emitStableDatabaseSemconv;
|
||||
import static io.opentelemetry.instrumentation.jdbc.internal.JdbcInstrumenterFactory.createStatementInstrumenter;
|
||||
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.ServerAttributes.SERVER_ADDRESS;
|
||||
import static io.opentelemetry.semconv.ServerAttributes.SERVER_PORT;
|
||||
|
@ -196,7 +197,9 @@ class OpenTelemetryConnectionTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, dbInfo.getSystem()),
|
||||
equalTo(
|
||||
maybeStable(DB_SYSTEM),
|
||||
maybeStableDbSystemName(dbInfo.getSystem())),
|
||||
equalTo(maybeStable(DB_NAME), dbInfo.getName()),
|
||||
equalTo(DB_USER, emitStableDatabaseSemconv() ? null : dbInfo.getUser()),
|
||||
equalTo(
|
||||
|
|
|
@ -18,7 +18,7 @@ final class JedisDbAttributesGetter implements DbClientAttributesGetter<JedisReq
|
|||
|
||||
@Override
|
||||
public String getDbSystem(JedisRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.REDIS;
|
||||
return DbIncubatingAttributes.DbSystemNameIncubatingValues.REDIS;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
|
|
|
@ -69,7 +69,7 @@ public abstract class AbstractJedisTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -90,7 +90,7 @@ public abstract class AbstractJedisTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -101,7 +101,7 @@ public abstract class AbstractJedisTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET foo"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -122,7 +122,7 @@ public abstract class AbstractJedisTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -133,7 +133,7 @@ public abstract class AbstractJedisTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
|
|
@ -11,6 +11,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class JedisDbAttributesGetter implements DbClientAttributesGetter<JedisRequest> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(JedisRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.REDIS;
|
||||
|
|
|
@ -18,6 +18,7 @@ import static io.opentelemetry.semconv.incubating.DbIncubatingAttributes.DB_OPER
|
|||
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;
|
||||
|
@ -82,7 +83,7 @@ class Jedis30ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -95,7 +96,7 @@ class Jedis30ClientTest {
|
|||
testing,
|
||||
"io.opentelemetry.jedis-3.0",
|
||||
DB_OPERATION_NAME,
|
||||
DB_SYSTEM,
|
||||
DB_SYSTEM_NAME,
|
||||
SERVER_ADDRESS,
|
||||
SERVER_PORT,
|
||||
NETWORK_PEER_ADDRESS,
|
||||
|
@ -116,7 +117,7 @@ class Jedis30ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -130,7 +131,7 @@ class Jedis30ClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET foo"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -154,7 +155,7 @@ class Jedis30ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
@ -168,7 +169,7 @@ class Jedis30ClientTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
|
|
|
@ -11,6 +11,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class JedisDbAttributesGetter implements DbClientAttributesGetter<JedisRequest> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(JedisRequest request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.REDIS;
|
||||
|
|
|
@ -73,7 +73,7 @@ class Jedis40ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(NETWORK_TYPE, "ipv4"),
|
||||
|
@ -95,7 +95,7 @@ class Jedis40ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(NETWORK_TYPE, "ipv4"),
|
||||
|
@ -107,7 +107,7 @@ class Jedis40ClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET foo"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"),
|
||||
equalTo(NETWORK_TYPE, "ipv4"),
|
||||
|
@ -129,7 +129,7 @@ class Jedis40ClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET foo ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"),
|
||||
equalTo(NETWORK_TYPE, "ipv4"),
|
||||
|
@ -141,7 +141,7 @@ class Jedis40ClientTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"),
|
||||
equalTo(NETWORK_TYPE, "ipv4"),
|
||||
|
|
|
@ -84,6 +84,7 @@ class JettyHandlerTest extends AbstractHttpServerTest<Server> {
|
|||
options.setHasResponseCustomizer(endpoint -> true);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
protected SpanDataAssert assertResponseSpan(
|
||||
SpanDataAssert span, String method, ServerEndpoint endpoint) {
|
||||
|
|
|
@ -64,6 +64,7 @@ class Jetty12HandlerTest extends AbstractHttpServerTest<Server> {
|
|||
options.setHasResponseCustomizer(endpoint -> endpoint != EXCEPTION);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
protected SpanDataAssert assertResponseSpan(
|
||||
SpanDataAssert span, String method, ServerEndpoint endpoint) {
|
||||
|
|
|
@ -84,6 +84,7 @@ class JettyHandlerTest extends AbstractHttpServerTest<Server> {
|
|||
options.setHasResponseCustomizer(endpoint -> endpoint != EXCEPTION);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
protected SpanDataAssert assertResponseSpan(
|
||||
SpanDataAssert span, String method, ServerEndpoint endpoint) {
|
||||
|
|
|
@ -18,8 +18,15 @@ final class LettuceConnectAttributesExtractor implements AttributesExtractor<Red
|
|||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
public void onStart(AttributesBuilder attributes, Context parentContext, RedisURI redisUri) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.REDIS);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM_NAME,
|
||||
DbIncubatingAttributes.DbSystemNameIncubatingValues.REDIS);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.REDIS);
|
||||
}
|
||||
|
||||
int database = redisUri.getDatabase();
|
||||
if (database != 0) {
|
||||
|
|
|
@ -12,6 +12,7 @@ import javax.annotation.Nullable;
|
|||
|
||||
final class LettuceDbAttributesGetter implements DbClientAttributesGetter<RedisCommand<?, ?, ?>> {
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(RedisCommand<?, ?, ?> request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.REDIS;
|
||||
|
|
|
@ -148,7 +148,7 @@ class LettuceAsyncClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -176,7 +176,7 @@ class LettuceAsyncClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, incorrectPort),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -194,7 +194,7 @@ class LettuceAsyncClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"))));
|
||||
}
|
||||
|
||||
|
@ -224,7 +224,8 @@ class LettuceAsyncClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"), equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
span ->
|
||||
span.hasName("callback")
|
||||
.hasKind(SpanKind.INTERNAL)
|
||||
|
@ -285,7 +286,8 @@ class LettuceAsyncClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"), equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
span ->
|
||||
span.hasName("callback1")
|
||||
.hasKind(SpanKind.INTERNAL)
|
||||
|
@ -325,7 +327,7 @@ class LettuceAsyncClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY")),
|
||||
span ->
|
||||
span.hasName("callback")
|
||||
|
@ -369,7 +371,7 @@ class LettuceAsyncClientTest {
|
|||
span.hasName("HMSET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HMSET"))),
|
||||
trace ->
|
||||
trace.hasSpansSatisfyingExactly(
|
||||
|
@ -377,7 +379,7 @@ class LettuceAsyncClientTest {
|
|||
span.hasName("HGETALL")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HGETALL"))));
|
||||
}
|
||||
|
||||
|
@ -419,7 +421,7 @@ class LettuceAsyncClientTest {
|
|||
.hasStatus(StatusData.error())
|
||||
.hasException(new IllegalStateException("TestException"))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEL"))));
|
||||
}
|
||||
|
||||
|
@ -456,7 +458,7 @@ class LettuceAsyncClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SADD"),
|
||||
equalTo(booleanKey("lettuce.command.cancelled"), true)),
|
||||
span ->
|
||||
|
@ -493,7 +495,7 @@ class LettuceAsyncClientTest {
|
|||
span.hasName("DEBUG")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEBUG"))));
|
||||
}
|
||||
|
||||
|
@ -527,7 +529,7 @@ class LettuceAsyncClientTest {
|
|||
span.hasName("SHUTDOWN")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SHUTDOWN"))));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -126,7 +126,7 @@ class LettuceSyncClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -149,7 +149,7 @@ class LettuceSyncClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, incorrectPort),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -164,7 +164,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"))));
|
||||
}
|
||||
|
||||
|
@ -180,7 +180,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
||||
|
@ -196,7 +196,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
||||
|
@ -212,7 +212,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"))));
|
||||
}
|
||||
|
||||
|
@ -228,7 +228,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("LPUSH")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "LPUSH"))));
|
||||
}
|
||||
|
||||
|
@ -244,7 +244,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("HMSET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HMSET"))));
|
||||
}
|
||||
|
||||
|
@ -260,7 +260,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("HGETALL")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HGETALL"))));
|
||||
}
|
||||
|
||||
|
@ -292,7 +292,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("DEBUG")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEBUG"))));
|
||||
}
|
||||
|
||||
|
@ -326,7 +326,7 @@ class LettuceSyncClientTest {
|
|||
span.hasName("SHUTDOWN")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SHUTDOWN"))));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,8 +18,15 @@ final class LettuceConnectAttributesExtractor implements AttributesExtractor<Red
|
|||
@SuppressWarnings("deprecation") // using deprecated semconv
|
||||
@Override
|
||||
public void onStart(AttributesBuilder attributes, Context parentContext, RedisURI redisUri) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.REDIS);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM_NAME,
|
||||
DbIncubatingAttributes.DbSystemNameIncubatingValues.REDIS);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributes.put(
|
||||
DbIncubatingAttributes.DB_SYSTEM, DbIncubatingAttributes.DbSystemIncubatingValues.REDIS);
|
||||
}
|
||||
|
||||
int database = redisUri.getDatabase();
|
||||
if (database != 0) {
|
||||
|
|
|
@ -20,6 +20,7 @@ final class LettuceDbAttributesGetter implements DbClientAttributesGetter<RedisC
|
|||
private static final RedisCommandSanitizer sanitizer =
|
||||
RedisCommandSanitizer.create(AgentCommonConfig.get().isStatementSanitizationEnabled());
|
||||
|
||||
@SuppressWarnings("deprecation") // using deprecated DbSystemIncubatingValues
|
||||
@Override
|
||||
public String getDbSystem(RedisCommand<?, ?, ?> request) {
|
||||
return DbIncubatingAttributes.DbSystemIncubatingValues.REDIS;
|
||||
|
|
|
@ -121,7 +121,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation") // RedisURI constructor
|
||||
|
@ -152,7 +152,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, incorrectPort),
|
||||
equalTo(DB_SYSTEM, "redis"))
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event ->
|
||||
event
|
||||
|
@ -189,7 +189,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET TESTSETKEY ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"))));
|
||||
}
|
||||
|
@ -221,7 +221,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET TESTKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
span ->
|
||||
|
@ -278,7 +278,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET NON_EXISTENT_KEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
span ->
|
||||
|
@ -321,7 +321,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY")),
|
||||
span ->
|
||||
|
@ -367,7 +367,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("HMSET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(
|
||||
maybeStable(DB_STATEMENT),
|
||||
"HMSET TESTHM firstname ? lastname ? age ?"),
|
||||
|
@ -378,7 +378,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("HGETALL")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "HGETALL TESTHM"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HGETALL"))));
|
||||
}
|
||||
|
@ -421,7 +421,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasStatus(StatusData.error())
|
||||
.hasException(new IllegalStateException("TestException"))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "DEL key1 key2"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEL"))));
|
||||
}
|
||||
|
@ -459,7 +459,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SADD SKEY ? ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SADD"),
|
||||
equalTo(booleanKey("lettuce.command.cancelled"), true)),
|
||||
|
@ -484,7 +484,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("DEBUG")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "DEBUG SEGFAULT"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEBUG"))));
|
||||
}
|
||||
|
@ -504,7 +504,7 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("SHUTDOWN")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SHUTDOWN NOSAVE"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SHUTDOWN"))));
|
||||
}
|
||||
|
|
|
@ -95,7 +95,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET TESTSETKEY ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET")),
|
||||
span ->
|
||||
|
@ -126,7 +126,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET TESTKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
@ -165,7 +165,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET NON_EXISTENT_KEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET")),
|
||||
span ->
|
||||
|
@ -195,7 +195,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"))));
|
||||
}
|
||||
|
@ -211,7 +211,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("COMMAND")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "COMMAND"),
|
||||
equalTo(maybeStable(DB_OPERATION), "COMMAND"),
|
||||
satisfies(
|
||||
|
@ -230,7 +230,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("COMMAND")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "COMMAND"),
|
||||
equalTo(maybeStable(DB_OPERATION), "COMMAND"),
|
||||
satisfies(
|
||||
|
@ -264,7 +264,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("DEBUG")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "DEBUG SEGFAULT"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEBUG"))));
|
||||
}
|
||||
|
@ -284,7 +284,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("SHUTDOWN")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SHUTDOWN NOSAVE"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SHUTDOWN"))));
|
||||
}
|
||||
|
@ -304,7 +304,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET a ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET")),
|
||||
span ->
|
||||
|
@ -312,7 +312,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET a"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
@ -332,7 +332,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET a ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET")),
|
||||
span ->
|
||||
|
@ -340,7 +340,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET a"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
@ -365,7 +365,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET a ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET")),
|
||||
span ->
|
||||
|
@ -373,7 +373,7 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest {
|
|||
.hasKind(SpanKind.CLIENT)
|
||||
.hasParent(trace.getSpan(0))
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET a"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
|
|
@ -96,7 +96,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"))));
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -118,7 +118,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, incorrectPort),
|
||||
equalTo(DB_SYSTEM, "redis"))
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event ->
|
||||
event
|
||||
|
@ -152,7 +152,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("SET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET TESTSETKEY ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SET"))));
|
||||
}
|
||||
|
@ -169,7 +169,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET TESTKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
@ -186,7 +186,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("GET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET NON_EXISTENT_KEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "GET"))));
|
||||
}
|
||||
|
@ -203,7 +203,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("RANDOMKEY")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY"),
|
||||
equalTo(maybeStable(DB_OPERATION), "RANDOMKEY"))));
|
||||
}
|
||||
|
@ -220,7 +220,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("LPUSH")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "LPUSH TESTLIST ?"),
|
||||
equalTo(maybeStable(DB_OPERATION), "LPUSH"))));
|
||||
}
|
||||
|
@ -237,7 +237,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("HMSET")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(
|
||||
maybeStable(DB_STATEMENT),
|
||||
"HMSET user firstname ? lastname ? age ?"),
|
||||
|
@ -256,7 +256,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("HGETALL")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "HGETALL TESTHM"),
|
||||
equalTo(maybeStable(DB_OPERATION), "HGETALL"))));
|
||||
}
|
||||
|
@ -276,7 +276,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("DEBUG")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "DEBUG SEGFAULT"),
|
||||
equalTo(maybeStable(DB_OPERATION), "DEBUG"))));
|
||||
}
|
||||
|
@ -296,7 +296,7 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest {
|
|||
span.hasName("SHUTDOWN")
|
||||
.hasKind(SpanKind.CLIENT)
|
||||
.hasAttributesSatisfyingExactly(
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SHUTDOWN NOSAVE"),
|
||||
equalTo(maybeStable(DB_OPERATION), "SHUTDOWN"))));
|
||||
}
|
||||
|
|
|
@ -64,7 +64,7 @@ class LettuceReactiveClientTest extends AbstractLettuceReactiveClientTest {
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET a ?")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
@ -80,7 +80,7 @@ class LettuceReactiveClientTest extends AbstractLettuceReactiveClientTest {
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET a")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
|
|
@ -42,6 +42,8 @@ final class OpenTelemetryTracing implements Tracing {
|
|||
|
||||
// copied from DbIncubatingAttributes
|
||||
private static final AttributeKey<String> DB_SYSTEM = AttributeKey.stringKey("db.system");
|
||||
private static final AttributeKey<String> DB_SYSTEM_NAME =
|
||||
AttributeKey.stringKey("db.system.name");
|
||||
private static final AttributeKey<String> DB_STATEMENT = AttributeKey.stringKey("db.statement");
|
||||
private static final AttributeKey<String> DB_QUERY_TEXT = AttributeKey.stringKey("db.query.text");
|
||||
private static final AttributeKey<Long> DB_REDIS_DATABASE_INDEX =
|
||||
|
@ -171,11 +173,13 @@ final class OpenTelemetryTracing implements Tracing {
|
|||
// Name will be updated later, we create with an arbitrary one here to store other data before
|
||||
// the span starts.
|
||||
SpanBuilder spanBuilder =
|
||||
tracer
|
||||
.spanBuilder("redis")
|
||||
.setSpanKind(SpanKind.CLIENT)
|
||||
.setParent(context)
|
||||
.setAttribute(DB_SYSTEM, REDIS);
|
||||
tracer.spanBuilder("redis").setSpanKind(SpanKind.CLIENT).setParent(context);
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
spanBuilder.setAttribute(DB_SYSTEM_NAME, REDIS);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
spanBuilder.setAttribute(DB_SYSTEM, REDIS);
|
||||
}
|
||||
return new OpenTelemetrySpan(context, spanBuilder, sanitizer, metrics);
|
||||
}
|
||||
}
|
||||
|
@ -196,7 +200,7 @@ final class OpenTelemetryTracing implements Tracing {
|
|||
@Nullable private Throwable error;
|
||||
@Nullable private Span span;
|
||||
private long spanStartNanos;
|
||||
private final AttributesBuilder attributesBuilder = Attributes.builder().put(DB_SYSTEM, REDIS);
|
||||
private final AttributesBuilder attributesBuilder;
|
||||
@Nullable private List<String> argsList;
|
||||
@Nullable private String argsString;
|
||||
|
||||
|
@ -209,6 +213,13 @@ final class OpenTelemetryTracing implements Tracing {
|
|||
this.spanBuilder = spanBuilder;
|
||||
this.sanitizer = sanitizer;
|
||||
this.metrics = metrics;
|
||||
this.attributesBuilder = Attributes.builder();
|
||||
if (SemconvStability.emitStableDatabaseSemconv()) {
|
||||
attributesBuilder.put(DB_SYSTEM_NAME, REDIS);
|
||||
}
|
||||
if (SemconvStability.emitOldDatabaseSemconv()) {
|
||||
attributesBuilder.put(DB_SYSTEM, REDIS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -166,7 +166,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "SET TESTSETKEY ?")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
@ -212,7 +212,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "GET TESTKEY")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
@ -291,7 +291,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(
|
||||
maybeStable(DB_STATEMENT), "GET NON_EXISTENT_KEY")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
|
@ -358,7 +358,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "RANDOMKEY")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
@ -418,7 +418,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(
|
||||
maybeStable(DB_STATEMENT),
|
||||
"HMSET TESTHM firstname ? lastname ? age ?")))
|
||||
|
@ -437,7 +437,7 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie
|
|||
equalTo(NETWORK_PEER_PORT, port),
|
||||
equalTo(SERVER_ADDRESS, host),
|
||||
equalTo(SERVER_PORT, port),
|
||||
equalTo(DB_SYSTEM, "redis"),
|
||||
equalTo(maybeStable(DB_SYSTEM), "redis"),
|
||||
equalTo(maybeStable(DB_STATEMENT), "HGETALL TESTHM")))
|
||||
.hasEventsSatisfyingExactly(
|
||||
event -> event.hasName("redis.encode.start"),
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue