elastic / elastic/apm-agent-java

Add support for javalin 5, currently the instrumentation crashes

Aperta
#3,908 0 commenti 0 reazioni 1 assegnatario Rivendicata da @LikeTheSalad Vedi su GitHub
agent-java
Lingua principale
Java
Stelle
594
Fork
338
Merge medio
1g 13h
PR unite (30g)
25

Descrizione

Per [report in the discussion forums](https://discuss.elastic.co/t/error-in-apm-java-agent-when-using-latest-javalin-versions/371702) our instrumentation currently doesn't support javalin 5:
```
java.lang.IncompatibleClassChangeError: Found interface io.javalin.http.Context, but class was expected
at co.elastic.apm.agent.javalin.JavalinInstrumentation$HandlerAdapterAdvice.setSpanAndTransactionName(JavalinInstrumentation.java:177) ~[elastic-apm-agent.jar:1.52.1]
at xx.xxxxx.xxxxxx.xxxxxxx.xxxxx.TestFilter.handle(TestFilter.java:40) ~[test-1.0.0-SNAPSHOT.jar:?]
at io.javalin.router.Endpoint.handle(Endpoint.kt:52) ~[javalin-6.1.3.jar:6.1.3]
at io.javalin.router.ParsedEndpoint.handle(ParsedEndpoint.kt:15) ~[javalin-6.1.3.jar:6.1.3]
```

We should
* add support for javalin 5
* Ensure that version 3.13.8, latest 3.x, latest 4.x and overall latest (currently 5.x) still work via tests (see [this](https://github.com/elastic/apm-agent-java/blob/main/apm-agent-plugins/apm-apache-httpclient/apm-apache-httpclient4-plugin/src/test/java/co/elastic/apm/agent/httpclient/v4/LegacyApacheHttpClientVersionIT.java) as an example)
* Add javalin to the dependabot config to ensure we don't miss future updates

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.