fix(confluent-kafka): populate bootstrap.servers span attributes (#4423)
* fix(confluent-kafka): populate bootstrap.servers span attributes
KafkaPropertiesExtractor.extract_bootstrap_servers was defined but
never called, so confluent-kafka spans were missing messaging.url,
server.address, and server.port even though the extraction helper
existed for it.
- Capture the config dict in AutoInstrumentedProducer/Consumer and
surface it on the Proxied{Producer,Consumer} wrappers.
- extract_bootstrap_servers now accepts both the "bootstrap.servers"
dotted key (confluent-kafka standard) and "bootstrap_servers", and
safely handles list-valued configs and instances without a config
attribute.
- wrap_produce / wrap_poll / wrap_consume pull the config and pass
it through _enrich_span, which sets messaging.url, server.address,
and server.port (parsing host:port from the first broker).
Closes #4104
Signed-off-by: alliasgher <alliasgher123@gmail.com>
* fix(confluent-kafka): remove deprecated messaging.url, fix CHANGELOG link
Signed-off-by: alliasgher <alliasgher123@gmail.com>
* fix(confluent-kafka): use PUBLISH for second produce path per review
The second _enrich_span call in wrap_produce also runs inside a producer
span but used RECEIVE. Align with the first path and with the semantic
conventions.
Signed-off-by: Ali <alliasgher123@gmail.com>
---------
Signed-off-by: alliasgher <alliasgher123@gmail.com>
Signed-off-by: Ali <alliasgher123@gmail.com> A
Ali Asghar committed
17006d75ae1f2580479a214b0d48491432c61441
Parent: a3d38a7
Committed by GitHub <noreply@github.com>
on 5/11/2026, 7:11:46 PM