From 527ae8aa9cf00cd4cc929dc2ec94426b3ed63290 Mon Sep 17 00:00:00 2001 From: alliasgher Date: Tue, 14 Apr 2026 22:21:07 +0500 Subject: [PATCH 1/2] fix(confluent-kafka): use PUBLISH operation for producer spans wrap_produce was setting messaging.operation=RECEIVE on producer spans. The correct OTel semantic value for a send/produce operation is PUBLISH. Fixes #4292 Signed-off-by: alliasgher --- .../opentelemetry/instrumentation/confluent_kafka/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py index ed390d7006..8c0fde7688 100644 --- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py @@ -370,8 +370,8 @@ def wrap_produce(func, instance, tracer, args, kwargs): _enrich_span( span, topic, - operation=MessagingOperationTypeValues.RECEIVE, - ) # Replace + operation=MessagingOperationTypeValues.PUBLISH, + ) propagate.inject( headers, setter=_kafka_setter, From e81f46d0f1500bea601482c315df534df782a250 Mon Sep 17 00:00:00 2001 From: Ali Date: Thu, 16 Apr 2026 01:20:46 +0500 Subject: [PATCH 2/2] chore: add CHANGELOG entry for #4435 Signed-off-by: Ali --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8818f8b070..5ca46e3458 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bump `pylint` to `4.0.5` ([#4244](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4244)) +### Fixed + +- `opentelemetry-instrumentation-confluent-kafka`: Use `PUBLISH` messaging operation name for producer spans (was incorrectly `CREATE`), aligning with the semantic conventions + ([#4435](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4435)) + ### Breaking changes - Drop Python 3.9 support