Skip to content

Commit 30852c8

Browse files
authored
Merge pull request #2677 from brunobat/bump-otel-instr-2-5
Bump OTel instrumentation to 2.5.0
2 parents f6588ed + 7375421 commit 30852c8

File tree

15 files changed

+244
-65
lines changed

15 files changed

+244
-65
lines changed

documentation/src/main/java/connectors/tracing/MyAttributesExtractor.java

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package connectors.tracing;
22

3+
import java.util.Collections;
4+
import java.util.List;
5+
36
import io.opentelemetry.api.common.AttributesBuilder;
47
import io.opentelemetry.context.Context;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
59
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
6-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
710

811
public class MyAttributesExtractor implements AttributesExtractor<MyTrace, Void> {
912
private final MessagingAttributesGetter<MyTrace, Void> messagingAttributesGetter;
@@ -66,5 +69,41 @@ public Long getMessagePayloadCompressedSize(final MyTrace myTrace) {
6669
public String getMessageId(final MyTrace myTrace, final Void unused) {
6770
return null;
6871
}
72+
73+
@Override
74+
public List<String> getMessageHeader(MyTrace myTrace, String name) {
75+
return Collections.emptyList();
76+
}
77+
78+
@Override
79+
public String getDestinationTemplate(MyTrace myTrace) {
80+
return null;
81+
}
82+
83+
@Override
84+
public boolean isAnonymousDestination(MyTrace myTrace) {
85+
return false;
86+
}
87+
88+
@Override
89+
public Long getMessageBodySize(MyTrace myTrace) {
90+
return null;
91+
}
92+
93+
@Override
94+
public Long getMessageEnvelopeSize(MyTrace myTrace) {
95+
return null;
96+
}
97+
98+
@Override
99+
public String getClientId(MyTrace myTrace) {
100+
return null;
101+
}
102+
103+
@Override
104+
public Long getBatchMessageCount(MyTrace myTrace, Void unused) {
105+
return null;
106+
}
107+
69108
}
70109
}

documentation/src/main/java/connectors/tracing/MyOpenTelemetryInstrumenter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
import org.eclipse.microprofile.reactive.messaging.Message;
44

55
import io.opentelemetry.api.GlobalOpenTelemetry;
6+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessageOperation;
7+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesExtractor;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
9+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingSpanNameExtractor;
610
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
711
import io.opentelemetry.instrumentation.api.instrumenter.InstrumenterBuilder;
8-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation;
9-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor;
10-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
11-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingSpanNameExtractor;
1212
import io.smallrye.reactive.messaging.tracing.TracingUtils;
1313

1414
/**

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,8 @@
9090

9191
<kafka.version>3.7.1</kafka.version>
9292

93-
<opentelemetry.version>1.32.0-alpha</opentelemetry.version>
94-
<opentelemetry-semconv.version>1.21.0-alpha</opentelemetry-semconv.version>
93+
<opentelemetry.instrumentation.version>2.5.0-alpha</opentelemetry.instrumentation.version>
94+
<opentelemetry-semconv.version>1.25.0-alpha</opentelemetry-semconv.version>
9595

9696
<smallrye-vertx-mutiny-clients.version>3.13.0</smallrye-vertx-mutiny-clients.version>
9797
<smallrye-reactive-converters.version>3.0.0</smallrye-reactive-converters.version>
@@ -282,7 +282,7 @@
282282
<dependency>
283283
<groupId>io.opentelemetry.instrumentation</groupId>
284284
<artifactId>opentelemetry-instrumentation-bom-alpha</artifactId>
285-
<version>${opentelemetry.version}</version>
285+
<version>${opentelemetry.instrumentation.version}</version>
286286
<type>pom</type>
287287
<scope>import</scope>
288288
</dependency>

smallrye-reactive-messaging-amqp/src/main/java/io/smallrye/reactive/messaging/amqp/tracing/AmqpAttributesExtractor.java

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package io.smallrye.reactive.messaging.amqp.tracing;
22

3+
import java.util.Collections;
4+
import java.util.List;
5+
36
import io.opentelemetry.api.common.AttributesBuilder;
47
import io.opentelemetry.context.Context;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
59
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
6-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
710
import io.smallrye.reactive.messaging.amqp.AmqpMessage;
811

912
public class AmqpAttributesExtractor implements AttributesExtractor<AmqpMessage<?>, Void> {
@@ -61,21 +64,44 @@ public String getConversationId(final AmqpMessage<?> amqpMessage) {
6164

6265
// Recommended
6366
@Override
64-
public Long getMessagePayloadSize(final AmqpMessage<?> amqpMessage) {
67+
public String getMessageId(final AmqpMessage<?> amqpMessage, final Void unused) {
68+
Object messageId = amqpMessage.getMessageId();
69+
return messageId instanceof String ? (String) messageId : null;
70+
}
71+
72+
@Override
73+
public List<String> getMessageHeader(AmqpMessage<?> amqpMessage, String name) {
74+
return Collections.emptyList();
75+
}
76+
77+
@Override
78+
public String getDestinationTemplate(AmqpMessage<?> amqpMessage) {
6579
return null;
6680
}
6781

68-
// Recommended
6982
@Override
70-
public Long getMessagePayloadCompressedSize(final AmqpMessage<?> amqpMessage) {
83+
public boolean isAnonymousDestination(AmqpMessage<?> amqpMessage) {
84+
return false;
85+
}
86+
87+
@Override
88+
public Long getMessageBodySize(AmqpMessage<?> amqpMessage) {
7189
return null;
7290
}
7391

74-
// Recommended
7592
@Override
76-
public String getMessageId(final AmqpMessage<?> amqpMessage, final Void unused) {
77-
Object messageId = amqpMessage.getMessageId();
78-
return messageId instanceof String ? (String) messageId : null;
93+
public Long getMessageEnvelopeSize(AmqpMessage<?> amqpMessage) {
94+
return null;
95+
}
96+
97+
@Override
98+
public String getClientId(AmqpMessage<?> amqpMessage) {
99+
return null;
100+
}
101+
102+
@Override
103+
public Long getBatchMessageCount(AmqpMessage<?> amqpMessage, Void unused) {
104+
return null;
79105
}
80106
}
81107
}

smallrye-reactive-messaging-amqp/src/main/java/io/smallrye/reactive/messaging/amqp/tracing/AmqpOpenTelemetryInstrumenter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
import org.eclipse.microprofile.reactive.messaging.Message;
66

77
import io.opentelemetry.api.OpenTelemetry;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessageOperation;
9+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesExtractor;
10+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
11+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingSpanNameExtractor;
812
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
913
import io.opentelemetry.instrumentation.api.instrumenter.InstrumenterBuilder;
10-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation;
11-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor;
12-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
13-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingSpanNameExtractor;
1414
import io.smallrye.reactive.messaging.amqp.AmqpMessage;
1515
import io.smallrye.reactive.messaging.tracing.TracingUtils;
1616

smallrye-reactive-messaging-connector-archetype/src/main/resources/archetype-resources/src/main/java/tracing/__connectorPrefix__AttributesExtractor.java

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33
import io.opentelemetry.api.common.AttributesBuilder;
44
import io.opentelemetry.context.Context;
55
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
6-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
6+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
7+
8+
import java.util.Collections;
9+
import java.util.List;
710

811
public class ${connectorPrefix}AttributesExtractor implements AttributesExtractor<${connectorPrefix}Trace, Void> {
912
private final MessagingAttributesGetter<${connectorPrefix}Trace, Void> messagingAttributesGetter;
@@ -53,17 +56,42 @@ public String getConversationId(final ${connectorPrefix}Trace myTrace) {
5356
}
5457

5558
@Override
56-
public Long getMessagePayloadSize(final ${connectorPrefix}Trace myTrace) {
59+
public String getMessageId(final ${connectorPrefix}Trace myTrace, final Void unused) {
5760
return null;
5861
}
5962

6063
@Override
61-
public Long getMessagePayloadCompressedSize(final ${connectorPrefix}Trace myTrace) {
64+
public List<String> getMessageHeader(final ${connectorPrefix}Trace myTrace, final String name) {
65+
return Collections.emptyList();
66+
}
67+
68+
@Override
69+
public String getDestinationTemplate(final ${connectorPrefix}Trace myTrace) {
6270
return null;
6371
}
6472

6573
@Override
66-
public String getMessageId(final ${connectorPrefix}Trace myTrace, final Void unused) {
74+
public boolean isAnonymousDestination(final ${connectorPrefix}Trace myTrace) {
75+
return false;
76+
}
77+
78+
@Override
79+
public Long getMessageBodySize(final ${connectorPrefix}Trace myTrace) {
80+
return null;
81+
}
82+
83+
@Override
84+
public Long getMessageEnvelopeSize(final ${connectorPrefix}Trace myTrace) {
85+
return null;
86+
}
87+
88+
@Override
89+
public String getClientId(final ${connectorPrefix}Trace myTrace) {
90+
return null;
91+
}
92+
93+
@Override
94+
public Long getBatchMessageCount(final ${connectorPrefix}Trace myTrace, final Void unused) {
6795
return null;
6896
}
6997
}

smallrye-reactive-messaging-connector-archetype/src/main/resources/archetype-resources/src/main/java/tracing/__connectorPrefix__OpenTelemetryInstrumenter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
import io.opentelemetry.api.GlobalOpenTelemetry;
66
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
77
import io.opentelemetry.instrumentation.api.instrumenter.InstrumenterBuilder;
8-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation;
9-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor;
10-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
11-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingSpanNameExtractor;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessageOperation;
9+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
10+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingSpanNameExtractor;
11+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesExtractor;
1212
import io.smallrye.reactive.messaging.tracing.TracingUtils;
1313

1414
/**

smallrye-reactive-messaging-kafka/src/main/java/io/smallrye/reactive/messaging/kafka/tracing/KafkaAttributesExtractor.java

Lines changed: 35 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
package io.smallrye.reactive.messaging.kafka.tracing;
22

33
import static io.opentelemetry.semconv.SemanticAttributes.MESSAGING_CONSUMER_ID;
4-
import static io.opentelemetry.semconv.SemanticAttributes.MESSAGING_KAFKA_CLIENT_ID;
54
import static io.opentelemetry.semconv.SemanticAttributes.MESSAGING_KAFKA_CONSUMER_GROUP;
65
import static io.opentelemetry.semconv.SemanticAttributes.MESSAGING_KAFKA_MESSAGE_OFFSET;
76
import static io.opentelemetry.semconv.SemanticAttributes.MESSAGING_KAFKA_PARTITION;
87

8+
import java.util.Collections;
9+
import java.util.List;
10+
911
import io.opentelemetry.api.common.AttributesBuilder;
1012
import io.opentelemetry.context.Context;
13+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
1114
import io.opentelemetry.instrumentation.api.instrumenter.AttributesExtractor;
12-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
1315

1416
public class KafkaAttributesExtractor implements AttributesExtractor<KafkaTrace, Void> {
1517
private final MessagingAttributesGetter<KafkaTrace, Void> messagingAttributesGetter;
@@ -39,9 +41,6 @@ public void onStart(final AttributesBuilder attributes, final Context parentCont
3941
if (groupId != null) {
4042
attributes.put(MESSAGING_KAFKA_CONSUMER_GROUP, groupId);
4143
}
42-
if (clientId != null) {
43-
attributes.put(MESSAGING_KAFKA_CLIENT_ID, clientId);
44-
}
4544
}
4645

4746
@Override
@@ -80,17 +79,45 @@ public String getConversationId(final KafkaTrace kafkaTrace) {
8079
}
8180

8281
@Override
83-
public Long getMessagePayloadSize(final KafkaTrace kafkaTrace) {
82+
public String getMessageId(final KafkaTrace kafkaTrace, final Void unused) {
8483
return null;
8584
}
8685

8786
@Override
88-
public Long getMessagePayloadCompressedSize(final KafkaTrace kafkaTrace) {
87+
public List<String> getMessageHeader(KafkaTrace kafkaTrace, String name) {
88+
return Collections.emptyList();
89+
}
90+
91+
@Override
92+
public String getDestinationTemplate(KafkaTrace kafkaTrace) {
8993
return null;
9094
}
9195

9296
@Override
93-
public String getMessageId(final KafkaTrace kafkaTrace, final Void unused) {
97+
public boolean isAnonymousDestination(KafkaTrace kafkaTrace) {
98+
return false;
99+
}
100+
101+
@Override
102+
public Long getMessageBodySize(KafkaTrace kafkaTrace) {
103+
return null;
104+
}
105+
106+
@Override
107+
public Long getMessageEnvelopeSize(KafkaTrace kafkaTrace) {
108+
return null;
109+
}
110+
111+
@Override
112+
public String getClientId(KafkaTrace kafkaTrace) {
113+
if (kafkaTrace.getClientId() == null) {
114+
return null;
115+
}
116+
return kafkaTrace.getClientId();
117+
}
118+
119+
@Override
120+
public Long getBatchMessageCount(KafkaTrace kafkaTrace, Void unused) {
94121
return null;
95122
}
96123
}

smallrye-reactive-messaging-kafka/src/main/java/io/smallrye/reactive/messaging/kafka/tracing/KafkaOpenTelemetryInstrumenter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
import org.eclipse.microprofile.reactive.messaging.Message;
66

77
import io.opentelemetry.api.OpenTelemetry;
8+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessageOperation;
9+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesExtractor;
10+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingAttributesGetter;
11+
import io.opentelemetry.instrumentation.api.incubator.semconv.messaging.MessagingSpanNameExtractor;
812
import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter;
913
import io.opentelemetry.instrumentation.api.instrumenter.InstrumenterBuilder;
10-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessageOperation;
11-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesExtractor;
12-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingAttributesGetter;
13-
import io.opentelemetry.instrumentation.api.instrumenter.messaging.MessagingSpanNameExtractor;
1414
import io.smallrye.reactive.messaging.tracing.TracingUtils;
1515

1616
/**

0 commit comments

Comments
 (0)