opentelemetry-java-instrume.../instrumentation/jetty
Ago Allikmaa e466dc439a
Add HttpServerResponseCustomizer support for Servlet and Jetty (#8095)
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.
2023-03-23 12:01:07 +01:00
..
jetty-8.0/javaagent Add HttpServerResponseCustomizer support for Servlet and Jetty (#8095) 2023-03-23 12:01:07 +01:00
jetty-11.0/javaagent Add HttpServerResponseCustomizer support for Servlet and Jetty (#8095) 2023-03-23 12:01:07 +01:00
jetty-common/javaagent Deprecate the 2-arg variant of HttpCommonAttributesGeter#statusCode() (#6466) 2022-08-12 17:11:11 -07:00
README.md Introduce markdown lint check (#7175) 2022-11-16 20:48:42 -08:00

README.md

Instrumentation for Jetty request handlers

Jetty support is divided into the following sub-modules:

  • jetty-common:javaagent contains common type instrumentation and advice helper classes used by the javaagent modules of all supported Jetty versions
  • jetty-8.0:javaagent applies Jetty request handler instrumentation for versions [8, 11)
  • jetty-11.0:javaagent applies 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.