quarkus: Quarkus doesn’t send X-Ray traces to AWS for sub-segments in Native build while using RESTEasy “controller” based approach

Describe the bug

I an using “Controller” based approach using RESTEasy. I have added Quarkus AWS Xray dependency in my POM.xml…

And then we are instrumenting calls to AWS Services using below dependency: <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-xray-recorder-sdk-aws-sdk-v2-instrumentor</artifactId> <version>2.10.0</version> </dependency>

Also, we create manual sub-segment for external API calls…

However, Quarkus send sub-segment traces to XRay in the JVM build… But in Native build, it does not send any sub-segments… also, there is no error thrown. In cloudwatch logs, it says "TRACE_ID missing.

It works for native build in AWS Lambda “Handler” based approach but not in “Controller” based approach in RESTEasy. Attaching the screenshots of JVM and Native Build below:

Expected behavior

It should create and show sub-segments in the graph also.

Actual behavior

It does not show the sub-segments in Native build.

How to Reproduce?

https://github.com/amitkumar7566/xray-native-image-test

Output of uname -a or ver

No response

Output of java -version

java 11

GraalVM version (if different from Java)

21.3-java11

Quarkus version or git rev

2.6.1.Final

Build tool (ie. output of mvnw --version or gradlew --version)

maven

Additional information

No response

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 55 (36 by maintainers)

Most upvoted comments

I’ll revert it for now.