Commit Graph

47 Commits

Author SHA1 Message Date
Tyler Benson 97efa307d3 Stop setting error tag and update tests. 2020-04-13 13:59:11 -04:00
Laplie Anderson 6cd530a541 Move decorators to bootstrap 2020-03-11 18:41:29 -04:00
Tyler Benson e0b46da375 Improve consistency of `@Advice.OnMethodExit` params
And ordering of some `helperClassNames`
2020-03-10 13:11:22 -07:00
Nikolay Martynov 517ecca4c1 Remove explicit concurrent instrumentation dependencies
Since we include concurrent instrumentation for all instrumentatin
projects now there is no point in including it in every instrumentation.
2020-03-06 13:50:51 -05:00
Tyler Benson 7c73546ba1 One more change.
This should fix the issues in latestDepTest.
2020-03-06 09:56:19 -08:00
Tyler Benson 206fbb944c Fix comments
[skip ci]
2020-03-06 09:24:50 -08:00
Tyler Benson 2e86ca2141 disable async propagation for InProcess communication. 2020-03-06 09:20:00 -08:00
Tyler Benson cea0bc8a52 Fix grpc tests with java-concurrent. 2020-03-05 19:59:21 -08:00
Tyler Benson 51bffa2e8a Move agent api classes to bootstrap package so they're not analyzed by muzzle
Also move jdbc classes to bootstrap to reduce size and complexity of those reference checkers.

These changes reduce the total file size of these instrumentation classes by 635k, which should also result in decent memory savings.
2020-02-10 15:09:15 -08:00
Tyler Benson 25397fd128 Fix formatting and add test. 2020-01-13 11:18:45 -08:00
Bruce Yu 13b84416b9 Blacklisting headers with -bin suffixes in GrpcExtractAdapter 2020-01-13 11:18:45 -08:00
Trask Stalnaker 1987e86ebf Normalize tag verification order 2019-11-22 10:59:45 -08:00
dougqh 6b096c2240 Replacing Advice.class references
Replacing Advice.class references with string construction.

This stops the JVM from loading the Advice classes which are used as templates for byte buddy and doesn't ever need to be run directly.

This eliminates ~130 class loads at start-up -- and saves 0.5MiB in metaspace
2019-11-18 16:09:30 -05:00
Nikolay Martynov 2c4422aa04 Upgradle to gradle 6.0 2019-11-12 16:26:46 -05:00
Trask Stalnaker 9182b64078 Switch to new Tags class in tests 2019-10-24 21:04:57 -07:00
Trask Stalnaker f6d2c1c1ef Fix two beforeFinish() calls 2019-10-21 16:59:36 -07:00
Trask Stalnaker 50dcc5bd4e Update grpc-1.5 to new agent api 2019-10-19 16:52:40 -07:00
Tyler Benson 557d45a9fe Changes required for OT 0.32
This seems backwards compatable with 0.31 since all changes are additional, so this should be safe.
2019-10-17 13:54:56 -07:00
Tyler Benson 088878f1d0 Use tracer from field instead of GlobalTracer 2019-09-25 19:04:46 -07:00
Marco Ferrer bcfb2ac3e7 run formatter 2019-09-06 19:58:57 -04:00
Marco Ferrer 8ee5d8ddc0 assert status code tag in streaming tests 2019-09-06 19:17:36 -04:00
Marco Ferrer f587011238 add TracingServerCall to helper class names 2019-09-06 18:48:44 -04:00
Marco Ferrer 57e03cc9ea update tests for new tags 2019-09-06 18:42:40 -04:00
Marco Ferrer 61d85d997a add comments for tracing call forwarder 2019-09-06 18:42:11 -04:00
Marco Ferrer b0074495f9 update tests for server error tag 2019-09-06 16:35:19 -04:00
Marco Ferrer b547886a0d introduce tracing call forwarder 2019-09-06 14:58:58 -04:00
Marco Ferrer 6ac07abe2b fix span error tagging in grpc server interceptor 2019-09-06 12:25:31 -04:00
Tyler Benson b69f9ea041 Enable async propagation for grpc client callbacks. 2019-08-15 17:12:32 -07:00
Tyler Benson 95a294a560 Remove common (redundant) dependencies 2019-08-06 14:51:04 -07:00
Nikolay Martynov 6d5972bce1 Make agent-tooling compile-depend on dd-tracing-ot directly
This ensures that `dd-tracng-ot` gets included into shadow jar.
Before this patch it was included only 'by accident' via some
transitive dependencies of some instrumentations.
2019-06-11 14:49:44 -04:00
Nikolay Martynov 6fd630831f Stop using `scopeManager().activate(span, true)` 2019-04-08 11:54:47 -04:00
Nikolay Martynov 743ab327b0 Wrap GRPC span start into scope 2019-04-05 11:13:53 -04:00
Tyler Benson 50279d64fe Span type should only be an attribute and not inherited
Previously we were inheriting from the parent and also often setting as a tag.

Apply default span assertion to verify the spanType is being checked properly. (Include error state too.)
2019-02-28 12:39:51 -08:00
Tyler Benson adb2eb9b55 Migrate gRPC instrumentation to Decorator 2019-02-25 13:17:28 -08:00
Tyler Benson fe52180bfc Apply proper generic signature for Instrumenter.Default transformers()
Previously it was missing the MethodDescription portion.
2019-01-04 15:25:12 -08:00
Tyler Benson 43e8c70098 Enable gRPC instrumentation by default. 2018-12-04 14:11:57 -08:00
Tyler Benson cbb29069fe Apply component tag more consistently 2018-11-14 11:31:40 -08:00
Tyler Benson 9bd2b86d2e Add assertion to ensure latestDepTest dependencies are different from test. 2018-11-12 08:15:24 -08:00
Marco Ferrer 1bd97a0f90 catch and log throwables to support kotlin exception handling 2018-10-30 23:00:29 -04:00
Nikolay Martynov 34372533c1 Add config for tags that propagate to JMXFetch and spans
Also add runtime-id tag to root span and JMXFetch metrics
2018-10-22 15:51:20 -04:00
Tyler Benson 432ce89a07 Add assertTraces to AgentTestRunner with implied argument
This will also help with auto complete when writing tests.
2018-10-15 10:19:00 +10:00
Nikolay Martynov d48eb4de77 Decouple Groovy version from Gradle
And use newer Groovy and Spock
2018-09-26 13:47:34 -04:00
Gary Huang 48ad43e423
Muzzle gRPC Instrumentation
Add muzzle block and remove class loader matcher methods.
2018-09-07 20:02:40 -04:00
Tyler Benson 63bee3737c Enable executor instrumentation for gRPC server calls
This might be more than is needed.  Maybe cut back later.
2018-08-24 20:25:13 +10:00
Tyler Benson 3f2ec7dc48 Move to separate packages 2018-08-16 12:24:27 +10:00
Tyler Benson 4583d12b31 Cleanup method signatures and servlet 2 instrumentation
adding the abstract servlet instrumentation reduces code duplication and makes it more similar to servlet 3 instrumentation.
2018-08-13 15:14:10 +10:00
Tyler Benson a34f7b849b Instrument gRPC
Adds spans for the duration of the connection and child spans for each message.
Also propagates the trace using the metadata object.
2018-07-20 12:25:04 +10:00