-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Jetty 12 #1621
Add support for Jetty 12 #1621
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1621 +/- ##
============================================
+ Coverage 70.60% 70.69% +0.08%
- Complexity 9795 9946 +151
============================================
Files 817 827 +10
Lines 39500 39931 +431
Branches 5999 6031 +32
============================================
+ Hits 27888 28228 +340
- Misses 8904 8983 +79
- Partials 2708 2720 +12 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Aside from my inline comments:
- Most of the class files are missing the copyright header. Those that have the header have the incorrect year (2022).
instrumentation/jetty-12/src/main/java/com/nr/agent/instrumentation/jetty12/JettySampler.java
Outdated
Show resolved
Hide resolved
instrumentation/jetty-12/src/main/java/org/eclipse/jetty/server/Response_Instrumentation.java
Outdated
Show resolved
Hide resolved
instrumentation/jetty-12/src/main/java/org/eclipse/jetty/server/Server_Instrumentation.java
Outdated
Show resolved
Hide resolved
Added the copyright headers @jtduffy |
Overview
Adds instrumentation for Jetty 12.
Jetty 12 follows a philosophy of being Servlet API independent. As a result Jetty now ships with a Core Server that makes no reference to the Servlet API. In addition, Jetty now supports every Jakarta EE spec from 8 to 10. As a result, an instrumentation module is needed for each EE implementation. This PR also adds instrumentation for the core Jetty Server. As a result 5 new instrumentation modules are added. These new modules can be described as follows:
jetty-12
This module instruments the core Jetty server that handles tasks that does not require the Servlet API. Since async activity is not managed in the core server, transactions cannot be started and managed in this module. The tasks this module does include:
jetty-ee*-servlet-12
This refers to any module named based on the pattern
jetty-ee*-servlet-12
.These modules instrument the Servlet API implementations for Jetty.
As a result, the instrumentation works with tasks that require us to work with the Servlet API such as:
List of new instrumentation modules
Related Github Issue
#1300