This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-4.8.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.8.x by this push:
new a60e9b6f419 CAMEL-21622: Adds route id in the span tags (#17363)
a60e9b6f419 is described below
commit a60e9b6f419961d7b3b0b62cfef7b315fdbc4575
Author: Marco Carletti <[email protected]>
AuthorDate: Thu Mar 6 07:33:41 2025 +0100
CAMEL-21622: Adds route id in the span tags (#17363)
---
.../src/main/java/org/apache/camel/tracing/TagConstants.java | 1 +
.../org/apache/camel/tracing/decorators/AbstractSpanDecorator.java | 5 +++++
.../apache/camel/tracing/decorators/AbstractSpanDecoratorTest.java | 6 +++++-
3 files changed, 11 insertions(+), 1 deletion(-)
diff --git
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/TagConstants.java
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/TagConstants.java
index d8a0b40a104..bddf41954f4 100644
---
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/TagConstants.java
+++
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/TagConstants.java
@@ -20,6 +20,7 @@ public class TagConstants {
public static final String ERROR = "error";
public static final String COMPONENT = "component";
+ public static final String ROUTE_ID = "camel.route.id";
// General attributes
public static final String SERVER_ADDRESS = "server.address";
diff --git
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/decorators/AbstractSpanDecorator.java
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/decorators/AbstractSpanDecorator.java
index 9cd7def4da6..f54d88a0697 100644
---
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/decorators/AbstractSpanDecorator.java
+++
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/decorators/AbstractSpanDecorator.java
@@ -103,6 +103,11 @@ public abstract class AbstractSpanDecorator implements
SpanDecorator {
String scheme = getSchemeName(endpoint);
span.setTag(TagConstants.URL_SCHEME, scheme);
+ final String routeId;
+ if (exchange != null && (routeId = exchange.getFromRouteId()) != null)
{
+ span.setTag(TagConstants.ROUTE_ID, routeId);
+ }
+
// Including the endpoint URI provides access to any options that may
// have been provided, for subsequent analysis
String uri = endpoint.toString(); // toString will sanitize
diff --git
a/components/camel-tracing/src/test/java/org/apache/camel/tracing/decorators/AbstractSpanDecoratorTest.java
b/components/camel-tracing/src/test/java/org/apache/camel/tracing/decorators/AbstractSpanDecoratorTest.java
index d017a210cb6..616ad491b23 100644
---
a/components/camel-tracing/src/test/java/org/apache/camel/tracing/decorators/AbstractSpanDecoratorTest.java
+++
b/components/camel-tracing/src/test/java/org/apache/camel/tracing/decorators/AbstractSpanDecoratorTest.java
@@ -74,12 +74,16 @@ public class AbstractSpanDecoratorTest {
MockSpanAdapter span = new MockSpanAdapter();
- decorator.pre(span, null, endpoint);
+ Exchange exchange = Mockito.mock(Exchange.class);
+ Mockito.when(exchange.getFromRouteId()).thenReturn("myRouteId");
+
+ decorator.pre(span, exchange, endpoint);
assertEquals("camel-test", span.tags().get(TagConstants.COMPONENT));
assertEquals("test", span.tags().get(TagConstants.URL_SCHEME));
assertEquals("uri", span.tags().get(TagConstants.URL_PATH));
assertEquals("query=hello", span.tags().get(TagConstants.URL_QUERY));
+ assertEquals("myRouteId", span.tags().get(TagConstants.ROUTE_ID));
}
@Test