Add `HttpServerResponseCustomizer` support for Servlet 2.2/3.0/5.0 and Jetty 8/11 instrumentations. Enabled testing for it in JaxRs tests as well since those should now all be covered due to servlet instrumentations. Fixed Jetty 11 test source set directory name. Known limitation - response headers do not work on Jetty 8 for internal exception pages caused by throwing an exception that is handled outside of instrumentation scope, working around this would require an additional instrumentation and/or keeping an expired `Context` instance referenced by the response object. This does not appear to be an issue on Jetty 11. Additionally, calling `ServletResponse#reset` can wipe headers as well, for which there is no workaround (yet?) in this PR. |
||
|---|---|---|
| .. | ||
| jetty-8.0/javaagent | ||
| jetty-11.0/javaagent | ||
| jetty-common/javaagent | ||
| README.md | ||
README.md
Instrumentation for Jetty request handlers
Jetty support is divided into the following sub-modules:
jetty-common:javaagentcontains common type instrumentation and advice helper classes used by thejavaagentmodules of all supported Jetty versionsjetty-8.0:javaagentapplies Jetty request handler instrumentation for versions[8, 11)jetty-11.0:javaagentapplies Jetty request handler instrumentation for versions[11,)
Instrumentations in jetty-8.0 and jetty-11.0 are mutually exclusive, this is guaranteed by the
instrumentation requiring parameters with types from packages javax.servlet or jakarta.servlet
respectively.