11package io .vertx .sqlclient .impl .tracing ;
22
33import io .vertx .core .AsyncResult ;
4+ import io .vertx .core .internal .ContextInternal ;
45import io .vertx .core .spi .metrics .ClientMetrics ;
56import io .vertx .core .spi .tracing .SpanKind ;
67import io .vertx .core .spi .tracing .TagExtractor ;
78import io .vertx .core .spi .tracing .VertxTracer ;
89import io .vertx .core .tracing .TracingPolicy ;
9- import io .vertx .core .internal .ContextInternal ;
1010import io .vertx .sqlclient .Tuple ;
11- import io .vertx .sqlclient .internal .Connection ;
1211import io .vertx .sqlclient .impl .QueryResultBuilder ;
12+ import io .vertx .sqlclient .internal .Connection ;
1313import io .vertx .sqlclient .internal .command .ExtendedQueryCommand ;
1414import io .vertx .sqlclient .internal .command .QueryCommandBase ;
1515import io .vertx .sqlclient .internal .command .SimpleQueryCommand ;
@@ -26,17 +26,16 @@ public class QueryReporter {
2626 enum RequestTags {
2727
2828 // Generic
29- PEER_ADDRESS ("peer.address" , q -> q .tracer .address ),
29+ PEER_ADDRESS ("network. peer.address" , q -> q .tracer .address ),
3030 SPAN_KIND ("span.kind" , q -> "client" ),
3131
3232 // DB
33- // See https://github.com/open-telemetry/ opentelemetry-specification/blob/v1.18.0/specification/trace/semantic_conventions /database.md#connection-level-attributes
33+ // See https://opentelemetry.io/docs/specs/semconv /database/
3434
3535 DB_USER ("db.user" , q -> q .tracer .user ),
36- DB_INSTANCE ("db.instance" , q -> q .tracer .database ),
37- DB_STATEMENT ("db.statement" , QueryRequest ::sql ),
38- DB_TYPE ("db.type" , q -> "sql" ),
39- DB_NAME ("db.system" , q -> q .tracer .system ),
36+ DB_NAMESPACE ("db.namespace" , q -> q .tracer .database ),
37+ DB_QUERY_TEXT ("db.query.text" , QueryRequest ::sql ),
38+ DB_SYSTEM ("db.system" , q -> q .tracer .system ),
4039 ;
4140
4241 final String name ;
@@ -48,18 +47,20 @@ enum RequestTags {
4847 }
4948 }
5049
51- private static final TagExtractor <QueryRequest > REQUEST_TAG_EXTRACTOR = new TagExtractor <QueryRequest >() {
50+ private static final TagExtractor <QueryRequest > REQUEST_TAG_EXTRACTOR = new TagExtractor <>() {
5251
5352 private final RequestTags [] TAGS = RequestTags .values ();
5453
5554 @ Override
5655 public int len (QueryRequest obj ) {
5756 return TAGS .length ;
5857 }
58+
5959 @ Override
6060 public String name (QueryRequest obj , int index ) {
6161 return TAGS [index ].name ;
6262 }
63+
6364 @ Override
6465 public String value (QueryRequest obj , int index ) {
6566 return TAGS [index ].fn .apply (obj );
0 commit comments