This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch fix/CAMEL-23709
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/fix/CAMEL-23709 by this push:
new e8fc5fad7552 CAMEL-23709: Add upgrade guide note for reduced span
verbosity
e8fc5fad7552 is described below
commit e8fc5fad7552e650b28c1f76b70307cb4992a951
Author: Claus Ibsen <[email protected]>
AuthorDate: Mon Jun 8 10:49:19 2026 +0200
CAMEL-23709: Add upgrade guide note for reduced span verbosity
Co-Authored-By: Claude <[email protected]>
Signed-off-by: Claus Ibsen <[email protected]>
---
.../ROOT/pages/camel-4x-upgrade-guide-4_21.adoc | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git
a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
index 5dc446b2d84c..953e931bf83e 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
@@ -485,6 +485,25 @@ extend from:
- `AbstractHttpSpanDecorator` (returns `CLIENT` for `EVENT_SENT`, `SERVER` for
`EVENT_RECEIVED`)
- `AbstractMessagingSpanDecorator` (returns `PRODUCER` for `EVENT_SENT`,
`CONSUMER` for `EVENT_RECEIVED`)
+==== Reduced span verbosity for endpoint-sending processors
+
+Processors that send to an endpoint (`to`, `toD`, `wireTap`, `enrich`) no
longer emit a redundant
+processor span (`EVENT_PROCESS`) wrapping the endpoint event span
(`EVENT_SENT`). Previously these
+EIPs produced two spans in a parent-child relationship — the processor span
added no value because
+the event span already captures the destination, timing, and status.
+
+A new `org.apache.camel.EndpointSending` marker interface in `camel-api`
identifies processors that
+will produce their own endpoint span via `ExchangeSendingEvent`. The telemetry
intercept strategy
+skips creating a processor span for these processors.
+
+This reduces span tree depth and total span count for routes that use `to`,
`toD`, `wireTap`, or
+`enrich`. Non-send EIPs (`log`, `bean`, `split`, `aggregate`, etc.) continue
to produce processor
+spans as before.
+
+If you have custom telemetry code that relies on the processor span existing
as a parent of the
+endpoint span for `to`, `toD`, `wireTap`, or `enrich`, you will need to adjust
your span hierarchy
+expectations.
+
=== camel-opentelemetry2
In order to prevent a potential leak when running asynchronous components we
need to rethink the implementation details of `camel-opentelemetry2` and remove
the `Scope` wrapping that, when asynchronous, was opening the `Scope` in a
thread and closing in another (what we had called "dirty" context). We are now
removing this wrapping and moving this part exclusively in the custom Camel
`Processors`. Here Camel will take care to open the Opentelemetry scope and
close it within the same thread.