Uh oh!
There was an error while loading. Please reload this page.
Call Site Instrumentation plugin - #3729
Conversation
1164303 to
52dd96aCompare04f4e5a to
94c6fceCompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
9503215 to
1cdf587Compareb662393 to
6dd5da1Compare094bb6c to
748af47Compare04f2040 to
7eba20fCompare
bantonsson
left a comment
There was a problem hiding this comment.
Another huge PR done 😅
Really nice with the example and benchmark.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
manuel-alvarez-alvarez
commented
Oct 10, 2022
Thank you very much for the review, I promise that this is the last PR behemoth 😄 |
7eba20f to
b32b1c1Compare
What Does This Do
This PR defines a new gradle plugin to auto generate call site instrumentation advices, the code is separated in two commits:
datadog.trace.agent.tooling.csi.CallSiteAdviceclasses. The next piece of code is an example of a class defining advices:Motivation
Instrumentations related to IAST often affect core parts of the JDK (String, StringBuilder...) where using callee instrumentation (by default in ByteBuddy) is not good enough for performance. Call site instrumentation focuses on the calls to the instrumented methods enabling the use of inclusion/exclusion lists to fine tune where to instrument.
Additional Notes
Real usage of this plugin is located at String builder taint tracking #3904
Performance remarks
Preliminary startup performance results from the benchmark with petclinic: