opentelemetry-java-instrume.../instrumentation/tomcat
Lauri Tulmin 15277cf8f5
Convert servlet instrumentation to instrumenter api (#4078)
* Convert servlet to instrumenter api

* make classes final

* Remove some tracer files

* remove xxx

* fix liberty and wildfly exception smoke test

* fix async smoke test on liberty

* Apply suggestions from code review

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* generic TextMapGetter for servlets

* not going to use http.route for servlets

* simplify

* add servlet timeout in attribute extractor

* move classes from library to javaagent

* remove unneeded dependency

* make method private

* move helper class initialization to singleton, remove helpers that don't have any methods, add shouldStart checks

* Update instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/ServletRequestContext.java

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>

* add import

* rename methods that start and end spans

Co-authored-by: Mateusz Rzeszutek <mrzeszutek@splunk.com>
2021-09-13 10:12:34 -07:00
..
tomcat-7.0/javaagent Convert servlet instrumentation to instrumenter api (#4078) 2021-09-13 10:12:34 -07:00
tomcat-10.0/javaagent Convert servlet instrumentation to instrumenter api (#4078) 2021-09-13 10:12:34 -07:00
tomcat-common/javaagent Convert servlet instrumentation to instrumenter api (#4078) 2021-09-13 10:12:34 -07:00
README.md Request handlers and test images for Tomcat 10 and Jetty 11 (Servlet API 5) (#2703) 2021-04-05 09:45:02 -07:00

README.md

Instrumentation for Tomcat request handlers

Tomcat support is divided into the following sub-modules:

  • tomcat-common:javaagent contains common type instrumentation, advice helper classes and abstract tracer used by the javaagent modules of all supported Tomcat versions
  • tomcat-7.0:javaagent applies Tomcat request handler instrumentation for versions [7, 10)
  • tomcat-10.0:javaagent applies Tomcat request handler instrumentation for versions [10,)

Instrumentations in tomcat-7.0 and tomcat-10.0 are mutually exclusive, this is guaranteed by tomcat-10.0 instrumentation checking that its Request class uses jakarta.servlet classes, and the tomcat-7.0 module doing the opposite check.