Hi Jason,

You did not mention what app you are deploying there. Is it the same as before? I.e. https://github.com/jasondlee/multiservice-otel-demo?

With that one, I am not seeing the failure and I did the following:
* Built your branch of SR OT
* Built your branch of WFLY
* Enable the subsystem in WFLY as per https://github.com/jasondlee/multiservice-otel-demo/blob/master/deploy.sh#L4-L18
* Deploy service1 WAR onto (non-preview) WFLY version

What am I missing?

Matej

On Thu, Nov 17, 2022 at 6:05 PM Jason Lee <jasondlee@redhat.com> wrote:
I'm trying to add a module for MP Telemetry support, and I'm running into a CDI injection issue that is identical, at least in terms of error reporting, to the issue that I ran into with the OpenTelemetry module. One would think that I could just do to this module what I did to the other and the problem would be solved, but, sadly, that has not been the case so far. I'm asking here to help with both visibility (external and internal) and archiving. :)

Before I get into describing the problem, the code can be found at https://github.com/jasondlee/wildfly/tree/WFLY-17156. Note that I'm using a local build of smallrye-opentelemetry as I have some changes that are needed and for which a PR has been opened (https://github.com/smallrye/smallrye-opentelemetry/pull/174).

With that, here's the error message:

{"WFLYCTL0062: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"service1-1.0-SNAPSHOT.war\".WeldStartService" => "Failed to start service
    Caused by: org.jboss.weld.exceptions.
DeploymentException: WELD-001408: Unsatisfied dependencies for type OpenTelemetryConfig with qualifiers @Default
  at injection point [UnbackedAnnotatedField] @Inject io.smallrye.opentelemetry.
implementation.cdi.OpenTelemetryProducer.config
  at io.smallrye.opentelemetry.
implementation.cdi.OpenTelemetryProducer.config(OpenTelemetryProducer.java:0)
"}}}}

I've gone so far as to copy and paste the module definitions from opentelemetry to microprofile-telemetry, with those definitions being here:

OpenTelemetry:

MicroProfile Telemetry:

I've also compared the modules exported in my dependency processor DPU:

The CDI Extension (https://github.com/jasondlee/wildfly/blob/WFLY-17156/microprofile/microprofile-telemetry-api/src/main/java/org/wildfly/extension/microprofile/telemetry/cdi/MicroProfileTelemetryCdiExtension.java) is actually running and the bean is added, but there's something not quite right about (I'm guessing) the module dependencies and/or exports that I'm just not seeing. I spent pretty much all of yesterday and all of today so far digging and comparing, but I'm not finding anying, so here I am once again asking for help. :)

I really need two things: 1) A solution to the problem, and 2) Any tips on tracking down these kinds of issues would be GREAT! :) Matej, in helping me last time, said I'd need "a magic wand, a CDI scrying orb, and at least two rubber ducks". If any of you have spares lying around, I can give you my shipping address. :)

Thanks.

Jason Lee

Principal Software Engineer

Red Hat JBoss EAP


_______________________________________________
wildfly-dev mailing list -- wildfly-dev@lists.jboss.org
To unsubscribe send an email to wildfly-dev-leave@lists.jboss.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s