Skip to content

Commit 5712a1d

Browse files
committed
Export database query parameters
1 parent 52d9133 commit 5712a1d

File tree

1 file changed

+16
-0
lines changed
  • sdk/monitor/azure-monitor-opentelemetry-autoconfigure/src/main/java/com/azure/monitor/opentelemetry/autoconfigure/implementation

1 file changed

+16
-0
lines changed

sdk/monitor/azure-monitor-opentelemetry-autoconfigure/src/main/java/com/azure/monitor/opentelemetry/autoconfigure/implementation/SpanDataMapper.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ public final class SpanDataMapper {
7474
// this is needed until Azure SDK moves to latest OTel semantic conventions
7575
private static final String COSMOS = "Cosmos";
7676

77+
// this is needed until Azure SDK moves to latest OTel semantic conventions
78+
private static final String DB_QUERY_PARAMETER = "db.query.parameter";
79+
7780
private static final Mappings MAPPINGS;
7881

7982
// TODO (trask) add to generated ContextTagKeys class
@@ -427,6 +430,9 @@ private static void applyDatabaseClientSpan(RemoteDependencyTelemetryBuilder tel
427430
} else {
428431
type = dbSystem;
429432
}
433+
434+
addDbQueryParametersAsProperties(telemetryBuilder, attributes);
435+
430436
telemetryBuilder.setType(type);
431437
telemetryBuilder.setData(dbStatement);
432438

@@ -452,6 +458,16 @@ private static void applyDatabaseClientSpan(RemoteDependencyTelemetryBuilder tel
452458
telemetryBuilder.setTarget(target);
453459
}
454460

461+
private static void addDbQueryParametersAsProperties(RemoteDependencyTelemetryBuilder telemetryBuilder,
462+
Attributes attributes) {
463+
attributes.forEach((attributeKey, value) -> {
464+
String key = attributeKey.getKey();
465+
if (key != null && value != null && key.startsWith(DB_QUERY_PARAMETER)) {
466+
telemetryBuilder.addProperty(key, String.valueOf(value));
467+
}
468+
});
469+
}
470+
455471
private static void applyMessagingClientSpan(RemoteDependencyTelemetryBuilder telemetryBuilder, SpanKind spanKind,
456472
String messagingSystem, Attributes attributes) {
457473
if (spanKind == SpanKind.PRODUCER) {

0 commit comments

Comments
 (0)