diff --git a/instrumentation/jdbc/README.md b/instrumentation/jdbc/README.md index fd048534bb4d..428c78075f11 100644 --- a/instrumentation/jdbc/README.md +++ b/instrumentation/jdbc/README.md @@ -1,7 +1,7 @@ # Settings for the JDBC instrumentation -| System property | Type | Default | Description | -|--------------------------------------------------------------|---------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `otel.instrumentation.jdbc.statement-sanitizer.enabled` | Boolean | `true` | Enables the DB statement sanitization. | -| `otel.instrumentation.jdbc.capture-query-parameters` | Boolean | `false` | Enable the capture of query parameters as span attributes. Enabling this option disables the statement sanitization.

WARNING: captured query parameters may contain sensitive information such as passwords, personally identifiable information or protected health info. | -| `otel.instrumentation.jdbc.experimental.transaction.enabled` | Boolean | `false` | Enables experimental instrumentation to create spans for COMMIT and ROLLBACK operations. | +| System property | Type | Default | Description | +|-------------------------------------------------------------------|---------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `otel.instrumentation.jdbc.statement-sanitizer.enabled` | Boolean | `true` | Enables the DB statement sanitization. | +| `otel.instrumentation.jdbc.experimental.capture-query-parameters` | Boolean | `false` | Enable the capture of query parameters as span attributes. Enabling this option disables the statement sanitization.

WARNING: captured query parameters may contain sensitive information such as passwords, personally identifiable information or protected health info. | +| `otel.instrumentation.jdbc.experimental.transaction.enabled` | Boolean | `false` | Enables experimental instrumentation to create spans for COMMIT and ROLLBACK operations. | diff --git a/instrumentation/jdbc/javaagent/build.gradle.kts b/instrumentation/jdbc/javaagent/build.gradle.kts index 07e99b8d110e..213dc1718f55 100644 --- a/instrumentation/jdbc/javaagent/build.gradle.kts +++ b/instrumentation/jdbc/javaagent/build.gradle.kts @@ -91,7 +91,7 @@ tasks { filter { includeTestsMatching("PreparedStatementParametersTest") } - jvmArgs("-Dotel.instrumentation.jdbc.capture-query-parameters=true") + jvmArgs("-Dotel.instrumentation.jdbc.experimental.capture-query-parameters=true") } check { diff --git a/instrumentation/jdbc/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jdbc/JdbcSingletons.java b/instrumentation/jdbc/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jdbc/JdbcSingletons.java index bff92fc9a5ef..5a76dff89e1e 100644 --- a/instrumentation/jdbc/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jdbc/JdbcSingletons.java +++ b/instrumentation/jdbc/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jdbc/JdbcSingletons.java @@ -35,7 +35,7 @@ public final class JdbcSingletons { CAPTURE_QUERY_PARAMETERS = AgentInstrumentationConfig.get() - .getBoolean("otel.instrumentation.jdbc.capture-query-parameters", false); + .getBoolean("otel.instrumentation.jdbc.experimental.capture-query-parameters", false); STATEMENT_INSTRUMENTER = JdbcInstrumenterFactory.createStatementInstrumenter( diff --git a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcInstrumenterFactory.java b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcInstrumenterFactory.java index a81dfde1993a..ce9bd75a0bdc 100644 --- a/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcInstrumenterFactory.java +++ b/instrumentation/jdbc/library/src/main/java/io/opentelemetry/instrumentation/jdbc/internal/JdbcInstrumenterFactory.java @@ -34,7 +34,7 @@ public final class JdbcInstrumenterFactory { public static boolean captureQueryParameters() { return ConfigPropertiesUtil.getBoolean( - "otel.instrumentation.jdbc.capture-query-parameters", false); + "otel.instrumentation.jdbc.experimental.capture-query-parameters", false); } public static Instrumenter createStatementInstrumenter( diff --git a/instrumentation/jdbc/metadata.yaml b/instrumentation/jdbc/metadata.yaml index 7dd9f28340d7..6a48849337a6 100644 --- a/instrumentation/jdbc/metadata.yaml +++ b/instrumentation/jdbc/metadata.yaml @@ -22,7 +22,7 @@ configurations: description: Used to specify a mapping from host names or IP addresses to peer services. type: map default: "" - - name: otel.instrumentation.jdbc.capture-query-parameters + - name: otel.instrumentation.jdbc.experimental.capture-query-parameters description: > Sets whether the query parameters should be captured as span attributes named db.query.parameter.<key>. Enabling this option disables the statement diff --git a/instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/internal/instrumentation/jdbc/DataSourcePostProcessor.java b/instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/internal/instrumentation/jdbc/DataSourcePostProcessor.java index c3d93c1ed44f..2435fbc2ba90 100644 --- a/instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/internal/instrumentation/jdbc/DataSourcePostProcessor.java +++ b/instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/internal/instrumentation/jdbc/DataSourcePostProcessor.java @@ -58,7 +58,8 @@ public Object postProcessAfterInitialization(Object bean, String beanName) { .setCaptureQueryParameters( configPropertiesProvider .getObject() - .getBoolean("otel.instrumentation.jdbc.capture-query-parameters", false)) + .getBoolean( + "otel.instrumentation.jdbc.experimental.capture-query-parameters", false)) .setTransactionInstrumenterEnabled( configPropertiesProvider .getObject() diff --git a/instrumentation/spring/spring-boot-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/instrumentation/spring/spring-boot-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 1bf97200ccad..75d3ef14f304 100644 --- a/instrumentation/spring/spring-boot-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/instrumentation/spring/spring-boot-autoconfigure/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -352,7 +352,7 @@ "defaultValue": true }, { - "name": "otel.instrumentation.jdbc.capture-query-parameters", + "name": "otel.instrumentation.jdbc.experimental.capture-query-parameters", "type": "java.lang.Boolean", "description": "Sets whether the query parameters should be captured as span attributes named db.query.parameter.<key>. Enabling this option disables the statement sanitization.

WARNING: captured query parameters may contain sensitive information such as passwords, personally identifiable information or protected health info.", "defaultValue": false