Commit Graph

292 Commits

Author SHA1 Message Date
Andrew Kent 11a2d3bdd4 Fix helpers for httpclient, and servlet3 2018-01-16 16:10:28 -05:00
Tyler Benson d68b9703fb Ensure helper classes are injected in a fixed order
This is important if they depend on each other. If the child loads first, the parent could get loaded on the wrong classloader before itself gets injected.
2018-01-16 15:12:34 -05:00
Tyler Benson b2b61e0c8c Changes required for supporting OT 0.31.0
Also updates all the contrib versions that we currently depend on to their 0.31.0 supporting versions.
2018-01-16 09:52:28 -05:00
Tyler Benson 6d3d88987b Rename dd-trace-annotations to dd-trace-api
And move DDTags over to it.
Move some `datadog.trace.api` classes over to `datadog.trace.common`.
Other misc renaming.
2018-01-09 10:07:36 +10:00
Tyler Benson becf2a5862 Lots of renaming
Module:
dd-trace -> dd-trace-ot

Packages:
Standardize on `datadog.trace` and `datadog.opentracing` as the package prefixes.
2018-01-09 10:02:06 +10:00
Tyler Benson eeb17c4522 Move @Trace and JDBC instrumentation to individual modules 2018-01-04 16:20:26 +10:00
Andrew Kent f1fa1370f9
Merge pull request #180 from DataDog/ark/macro-benchmarks
macro benchmarks
2018-01-02 14:04:13 -08:00
Tyler Benson 596a1abc65 Fix types for Intellij
Idea doesn’t like the vararg representation of `TypeDescription.Latent`.  Using an empty list is the same behavior and doesn’t get the errors.
2018-01-03 07:27:46 +10:00
Andrew Kent 905bdb1cc1 sleepTimeMS -> workTimeMS 2018-01-02 12:17:18 -08:00
Andrew Kent 9de6417f87 Allow for run-perf-test.sh custom settings. 2018-01-02 12:17:18 -08:00
Andrew Kent feab10ad9f Update benchmark-integration instructions 2018-01-02 12:17:18 -08:00
Andrew Kent ef3ba8be60 Move dd-java-agent-perftest to dd-java-agent subproject. 2018-01-02 12:17:18 -08:00
Andrew Kent 1a80e4457d Remove unused listener option 2017-12-28 09:46:58 -08:00
Andrew Kent d315f43dad Remove AgentTestRunner custom classloader.
BytebuddyAgent install already handles class retransformation, make
the custom classloader redundant.
2017-12-28 09:46:58 -08:00
Andrew Kent 1c08933bc7 AgentTestRunner doc 2017-12-28 09:46:58 -08:00
Andrew Kent d0658085bf Convert Cassandra IntegrationTest to AgentTestRunner+spock 2017-12-28 09:46:58 -08:00
Andrew Kent ca574071ff New AgentTestRunner to auto-instrument spock tests 2017-12-28 09:46:58 -08:00
Andrew Kent 9d79531f59 Move bytebuddy agent setup into tooling 2017-12-28 09:46:08 -08:00
Andrew Kent 99442cdca7 Agent Testing Project 2017-12-28 09:46:08 -08:00
Andrew Kent 981e660b5e Only add integration dependencies when building agent shadowJar 2017-12-28 09:46:08 -08:00
Andrew Kent 5701601ad9 Fix potential flicker for jms2 test 2017-12-27 18:01:11 -08:00
Tyler Benson eca6d89591 Fix flickering test. 2017-12-26 12:39:09 -08:00
Tyler Benson 5dda6844a5 Change point where servlet instrumentation is applied
This new point will capture responses returned by filters, not just the servlet target.
2017-12-26 12:27:39 -08:00
Tyler Benson 02460060bc Misc cleanup
Remove out of date “async-tracing” example since it’s more about byteman and no longer relevant.

Minor changes to improve the code test coverage…
2017-12-21 16:31:03 -08:00
Tyler Benson 4822c19c5d Remove legacy config references. 2017-12-21 16:28:18 -08:00
Andrew Kent 5acd650efe
Merge pull request #174 from DataDog/ark/instrumentation_modules
Move Helper Classes into their specific instrumentation modules
2017-12-19 17:24:19 -08:00
Tyler Benson d6056a3c27 Fix jersey servlet instrumentation which overrides method
Jersey doesn’t seem to delegate to the original method on HttpServlet, which causes those methods to not be traced properly.

This is impacting dropwizard applications which uses Jersey with embedded Jetty.
2017-12-19 16:53:58 -08:00
Andrew Kent faf63bac9d Don't load classes on agent classloader during injection 2017-12-19 16:52:10 -08:00
Andrew Kent 75edd2bee4 Initialize AgentVersion classes in global tracer init 2017-12-19 16:00:03 -08:00
Andrew Kent f5ecd47379 Remove dead code 2017-12-19 09:06:38 -08:00
Andrew Kent e9b6f5278d Initialize GlobalTracer in TracingAgent 2017-12-19 09:06:38 -08:00
Andrew Kent 069f481884 Don't inject helpers into the same classloader twice 2017-12-18 16:44:12 -08:00
Andrew Kent 887a864118 Automatically pull integrations into the agent 2017-12-18 16:44:12 -08:00
Andrew Kent f68406113a Remove helpers from agent 2017-12-18 16:44:12 -08:00
Andrew Kent 0abf3f342d Use HelperInjector to include instrumentation helper classes.
Move instrumentation helpers out of helpers subproject and into the
appropriate instrumentation module.
2017-12-18 16:44:12 -08:00
Andrew Kent 876ea794e9 Helper Injector Transformer 2017-12-14 18:40:40 -08:00
Andrew Kent 5a57623fb6 Helper Injection test 2017-12-14 18:40:40 -08:00
Andrew Kent b5c2a3af63 reuse class file locator for DDAdvice 2017-12-14 18:40:40 -08:00
Andrew Kent 7f643ab680 Move jar utils to TestUtils 2017-12-14 18:40:40 -08:00
Andrew Kent 9d933d2109 Skip c3p0 proxy classes. 2017-12-11 08:17:59 -08:00
Andrew Kent 95550ac9d6 Save connection info after connection construction. 2017-12-11 08:17:59 -08:00
Andrew Kent 28bc1e703e
Merge pull request #172 from DataDog/tyler/benchmark
Improve benchmarks to highlight more interesting differences
2017-12-10 08:20:37 -08:00
Andrew Kent 9fbe70228f
Merge pull request #171 from DataDog/ark/tracer_init
init global tracer in premain
2017-12-10 08:09:04 -08:00
Tyler Benson e6895e4f6c Improve benchmark and caching optimizations. 2017-12-08 19:17:59 -08:00
Andrew Kent b231306f57 init global tracer in premain 2017-12-08 16:56:43 -08:00
Andrew Kent 394f36d700 Fix idea compile for mongo modules 2017-12-08 14:15:36 -08:00
Tyler Benson 003b7d1caf Extract test classes for benchmark testing. 2017-12-08 12:58:46 -08:00
Andrew Kent 42832e77f5 Add agent's classloader to default instrumentation location strategy
The transformer needs the agent's classloader to resolve advice
classes at transform time. Also stop using reflection to register classloads.
2017-12-08 09:40:14 -08:00
Andrew Kent 6a646009fa Test system class sibling classloader
Test cases where the classloader of the instrumented class cannot
resolve agent advice classes.
2017-12-08 09:34:16 -08:00
Andrew Kent 34791bbdbf Move common instrumentation advice settings into DDAdvice 2017-12-08 09:34:16 -08:00