Actual result, transaction name: GET (no url path)
also span is not working correctly - When I use @WithSpan in EJB - I got exception during deployment. When I use CDI class, then deployment works ok, but I see no span in APM for this annotation.
```
Exception while invoking class org.glassfish.ejb.startup.EjbApplication start method java.lang.IllegalStateException: org.glassfish.deployment.common.DeploymentException: A class fish.payara.microprofile.telemetry.tracing.WithSpanMethodInterceptorBean doesn't have any appropriate constructor
I have managed to reproduce the issue you have with the transaction name, I think it would be a good first step to focus on this for now.
Your sample application really made it quite easy to reproduce, however I still don’t know what is the cause of this.
What we can see already is that the instrumentation that is creating the transaction is `io.opentelemetry.grizzly-2.3` which means this behavior is probably specific to grizzly implementation and do not happen with other containers.
There is a very similar test setup in quarkus integration tests of the opentelemetry instrumentation, and the expected top span name is `GET /path/to/resource` so I would expect it to work here as well. The observed behavior is also consistent with the Grizzly instrumentation tests where the span name remains “GET” without the path.
I remember seeing a similar case with tomcat where we have:
tomcat instrumentation (non servlet) creating the transaction (top-level span)
servlet instrumentation that adds extra attributes and modifies transaction name
So, I will try to see if there is something missing in opentelemetry instrumentation for this use-case, with a bit of luck it should not be very hard to fix.
the expected/effective span name can be extraced from the agent logs when you set `OTEL_JAVAAGENT_DEBUG=true` environment variable, this allows to reproduce the issue without kibana (also upstream is vendor-agnostic so other contributors are unlikely to use the same backend as you here).
Given there is likely a gap/bug in the upstream opentelemetry instrumentation, the issue will need to be handled there anyway.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.