Aws Sdk Opentelemetry TracingExecutionInterceptor can not be used with quarkus
See original GitHub issueDescription
With the configuration quarkus.*.interceptors
it should be possible to add aws ExecutionInterceptor
’s to aws sdk clients. However, the Opentelemetry TracingExecutionInterceptor can not be added this way, because of the follwing exception:
io.quarkus.deployment.configuration.ConfigurationError: quarkus.dynamodb.interceptors (Optional[[io.opentelemetry.instrumentation.awssdk.v2_2.TracingExecutionInterceptor]]) - must list only existing implementations of software.amazon.awssdk.core.interceptor.ExecutionInterceptor
see also #12842 for a similar issue.
Also, TracingExecutionInterceptor
does not have a default constructor and cannot be instantiated in the same way it is currently implemented. Normally one would create an instance of TracingExecutionInterceptor
using AwsSdkTracing.create(openTelemetry).newExecutionInterceptor()
.
Implementation ideas
ExecutionInterceptor
’s should be discoved and instanciated via CDI to allow the implementation of custom providers.
Also if both quarkus-opentelemetry-exporter-otlp
and any quarkus aws extension are included in a project, the Aws Sdk Opentelemetry TracingExecutionInterceptor should automatically be registered (should be configurable).
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:7 (3 by maintainers)
@luneo7 Now I had time to try your workaround and it works, thanks.
@kdubb given you have interest in the Amazon Services extensions, I wonder if you would be interested in working on this one? I think we should provide a way to contribute additional interceptors via CDI.