This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git


The following commit(s) were added to refs/heads/main by this push:
     new c003c564be Add test for opentelemetry2 route id span attribute
c003c564be is described below

commit c003c564bee39a7c11b40dbabd7c650c4c81e92c
Author: James Netherton <[email protected]>
AuthorDate: Mon Aug 10 11:00:27 2026 +0100

    Add test for opentelemetry2 route id span attribute
---
 .../it/OpenTelemetry2RouteBuilder.java              |  1 +
 .../opentelemetry2/it/Opentelemetry2Test.java       | 21 +++++++++++++++++++++
 2 files changed, 22 insertions(+)

diff --git 
a/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
 
b/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
index 6da3617310..54f9d1a262 100644
--- 
a/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
+++ 
b/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
@@ -32,6 +32,7 @@ public class OpenTelemetry2RouteBuilder extends RouteBuilder {
                 .setBody(constant("GET: /opentelemetry2/test/trace/filtered"));
 
         from("direct:start")
+                .routeId("tracedRoute")
                 .setBody().constant("Traced direct:start");
 
         // NOTE: when we call the bean in this way, the resulting inner span 
will depends directly on the
diff --git 
a/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
 
b/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
index a900ab63d0..7083e46100 100644
--- 
a/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
+++ 
b/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
@@ -203,6 +203,27 @@ class Opentelemetry2Test {
                 spans.get(4).get(CODE_FUNCTION_NAME.getKey()));
     }
 
+    @Test
+    void routeIdSpanAttribute() {
+        int spanPerTrace = 4;
+        RestAssured.get("/opentelemetry2/trace")
+                .then()
+                .statusCode(200)
+                .body(equalTo("Traced direct:start"));
+
+        await().atMost(30, TimeUnit.SECONDS).pollDelay(50, 
TimeUnit.MILLISECONDS)
+                .until(() -> getSpans().size() == spanPerTrace);
+        List<Map<String, String>> spans = getSpans();
+
+        // The route id is only known once the exchange is being routed, so it 
is present on the EVENT_RECEIVED span
+        Map<String, String> span = spans.stream()
+                .filter(s -> "direct://start".equals(s.get("camel.uri")) && 
"EVENT_RECEIVED".equals(s.get("op")))
+                .findFirst()
+                .orElseThrow(() -> new AssertionError("No EVENT_RECEIVED span 
found for direct://start"));
+
+        assertEquals("tracedRoute", span.get("camel.route.id"));
+    }
+
     @Test
     void traceHeaderInclusion() {
         RestAssured.get("/opentelemetry2/trace/headers")

Reply via email to