2626import io .opentelemetry .instrumentation .api .internal .InstrumenterUtil ;
2727import io .opentelemetry .instrumentation .api .internal .PropagatorBasedSpanLinksExtractor ;
2828import io .opentelemetry .instrumentation .api .internal .Timer ;
29+ import io .opentelemetry .instrumentation .api .semconv .network .ServerAttributesExtractor ;
2930import io .opentelemetry .javaagent .bootstrap .internal .AgentInstrumentationConfig ;
3031import io .opentelemetry .javaagent .bootstrap .internal .ExperimentalConfig ;
3132import io .opentelemetry .javaagent .instrumentation .pulsar .v2_8 .VirtualFieldStore ;
@@ -77,7 +78,9 @@ private static Instrumenter<PulsarRequest, Void> createConsumerReceiveInstrument
7778 MessagingSpanNameExtractor .create (getter , MessageOperation .RECEIVE ))
7879 .addAttributesExtractor (
7980 createMessagingAttributesExtractor (getter , MessageOperation .RECEIVE ))
80- .addOperationMetrics (MessagingConsumerMetrics .get ());
81+ .addOperationMetrics (MessagingConsumerMetrics .get ())
82+ .addAttributesExtractor (
83+ ServerAttributesExtractor .create (new PulsarNetClientAttributesGetter ()));
8184
8285 if (receiveInstrumentationEnabled || emitStableMessagingSemconv ()) {
8386 return instrumenterBuilder
@@ -97,6 +100,8 @@ private static Instrumenter<PulsarBatchRequest, Void> createConsumerBatchReceive
97100 MessagingSpanNameExtractor .create (getter , MessageOperation .RECEIVE ))
98101 .addAttributesExtractor (
99102 createMessagingAttributesExtractor (getter , MessageOperation .RECEIVE ))
103+ .addAttributesExtractor (
104+ ServerAttributesExtractor .create (new PulsarNetClientAttributesGetter ()))
100105 .addSpanLinksExtractor (new PulsarBatchRequestSpanLinksExtractor (PROPAGATOR ))
101106 .addOperationMetrics (MessagingConsumerMetrics .get ())
102107 .buildInstrumenter (SpanKindExtractor .alwaysConsumer ());
@@ -134,6 +139,8 @@ private static Instrumenter<PulsarRequest, Void> createProducerInstrumenter() {
134139 INSTRUMENTATION_NAME ,
135140 MessagingSpanNameExtractor .create (getter , operation ))
136141 .addAttributesExtractor (createMessagingAttributesExtractor (getter , operation ))
142+ .addAttributesExtractor (
143+ ServerAttributesExtractor .create (new PulsarNetClientAttributesGetter ()))
137144 .addOperationMetrics (MessagingProducerMetrics .get ());
138145
139146 if (AgentInstrumentationConfig .get ()
0 commit comments