Commit Graph

2274 Commits

Author SHA1 Message Date
Tyler Benson db47fde8d1 Group Elasticsearch instrumentation into common folder
Also migrate to decorator.
2019-02-22 13:28:11 -08:00
Tyler Benson 0f55c9f951
Merge pull request #725 from DataDog/tyler/couchbase-decorator
Add decorator for couchbase and cassandra instrumentation
2019-02-22 11:26:47 -08:00
Tyler Benson f04d113ecb Make decorators public and add tests 2019-02-22 09:42:53 -08:00
Tyler Benson dd35372a72 Add Cassandra decorator 2019-02-21 15:43:12 -08:00
Tyler Benson 9c8e689b6d Add decorator for couchbase instrumentation 2019-02-21 15:27:26 -08:00
Tyler Benson 2e4d8e94d6
Merge pull request #724 from DataDog/tyler/exclude-macro
Exclude groovy macro package from instrumentation
2019-02-21 12:37:22 -08:00
Tyler Benson 8f9ea87ef6
Merge pull request #723 from DataDog/tyler/aws-decorators
Migrate AWS SDK instrumentation to decorators
2019-02-21 12:37:05 -08:00
Tyler Benson 0d9e6ad97a
Merge pull request #722 from DataDog/tyler/akka-apache-decorators
Akka and Apache HttpClient migrate to decorators
2019-02-21 12:27:53 -08:00
Tyler Benson 3f96c91965
Merge pull request #721 from DataDog/tyler/servlet-decorators
Servlet migrate to decorators
2019-02-21 12:26:39 -08:00
Tyler Benson fb304a110d Migrate AWS SDK instrumentation to decorators 2019-02-21 12:11:42 -08:00
Tyler Benson 49faeca145 Exclude groovy macro package from instrumentation
It generates a lot of noise when running tests and likely shouldn’t be instrumented.
2019-02-21 11:35:21 -08:00
Tyler Benson 96112bd80f Begin 0.25.0 2019-02-21 09:21:39 -08:00
Tyler Benson e6e4ade15e Version 0.24.0 2019-02-21 08:57:33 -08:00
Tyler Benson dfe5cb57b2 Servlet migrate to decorators 2019-02-20 17:35:41 -08:00
Tyler Benson 13e708ec42 Akka and Apache HttpClient migrate to decorators 2019-02-20 17:02:05 -08:00
Tyler Benson f251356df3
Merge pull request #720 from DataDog/tyler/instrumentation-decorators
Introduce base decorators
2019-02-20 16:21:29 -08:00
Tyler Benson a98c22ac3a Introduce base decorators 2019-02-20 16:11:18 -08:00
Tyler Benson 875d491638
Merge pull request #719 from DataDog/tyler/trace-analytics-config
Trace Analytics Config
2019-02-20 11:13:19 -08:00
Tyler Benson 4dd4ee0c05 Trace Analytics Config
Also make the instrumentation names a sorted list so the evaluation order is consistent.
2019-02-20 10:56:14 -08:00
Tyler Benson 207232133a
Merge pull request #718 from DataDog/tyler/deprecate-servlet-type
Deprecate WEB_SERVLET type
2019-02-20 10:23:52 -08:00
Tyler Benson a7ebc9b3db Deprecate WEB_SERVLET type 2019-02-20 08:42:39 -08:00
Tyler Benson 6117cb24e4
Merge pull request #714 from DataDog/tyler/custom-logger-fix
Fix how we evaluate if customlogger is on classpath
2019-02-19 08:18:45 -08:00
Tyler Benson d0e3bf55e8
Merge pull request #715 from DataDog/tyler/disable-custom-jvm-tests
Exclude tests generated by “test-sets” plugin from alternate JVM tests
2019-02-19 08:18:28 -08:00
Tyler Benson 6bae328a4f Exclude tests generated by “test-sets” plugin from alternate JVM tests
Tests run under regular classpath, not the custom one defined by the plugin.  This works for some tests where this is expected, but other tests it’s just retesting the `test` sourceset tests, not the custom provided ones (ex: slickTest).
2019-02-15 15:36:47 -08:00
Tyler Benson 8512b841e6 Fix how we evaluate if customlogger is on classpath
Resources must replace `.` -> `/` and add `.class` to the end.
2019-02-15 15:00:25 -08:00
Nikolay Martynov 2d0636e158
Merge pull request #712 from DataDog/mar-kolya/limit-es-rest-tests
Limit ES-rest tests to 6.x.x versions
2019-02-15 09:54:34 -05:00
Tyler Benson 8d5aed7512
Merge pull request #705 from DataDog/tyler/synthetic-ignore
Exclude several type identifications from instrumentation
2019-02-14 16:46:59 -08:00
Nikolay Martynov dd7981871f Limit ES-rest tests to 6.x.x versions
It looks like beta 7.x.x was released and our instrumentation doesn't
work with it at the moment.
2019-02-14 17:43:44 -05:00
Nikolay Martynov 62e127896a
Merge pull request #706 from DataDog/mar-kolya/webflux-fixes
Improve webflux instrumentation
2019-02-14 17:41:59 -05:00
Nikolay Martynov 8e1382b4e4 Improve webflux integration
Add support for tracing Mono/Flux
2019-02-14 16:59:59 -05:00
Nikolay Martynov 13005d72cb Add reactor-core instrumentation 2019-02-14 16:59:56 -05:00
Tyler Benson c65c79207a Remove `isSynthetic()` ignore
There’s concern that this will cause classes to be skipped that we do want to instrument.
2019-02-14 08:45:02 -08:00
Tyler Benson ccee63574d Exclude several type identifications from instrumentation
I considered excluding Interfaces too, but that would break people that added `@Trace` to their default methods.

Just a hunch, but I don’t think we want to instrument classes marked as synthetic, for example proxies.  We may want to extend this to our method matchers (and maybe exclude native methods too).

We might want to instrument enums/annotations, but that seems unlikely.
2019-02-11 16:23:08 -08:00
Tyler Benson 5bc3ec82c2
Merge pull request #697 from DataDog/tyler/gradle-upgrade
Upgrade Gradle to 4.10.3
2019-02-11 16:01:35 -08:00
Tyler Benson f0013ef02e
Merge pull request #698 from DataDog/tyler/bb-upgrade
Upgrade Byte Buddy to 1.9.9
2019-02-11 16:01:20 -08:00
Tyler Benson f273553ca8 Begin 0.24.0 2019-02-11 11:06:03 -08:00
Tyler Benson 7281754e08 Version 0.23.0 2019-02-11 10:54:10 -08:00
Nikolay Martynov 58e4126fee
Merge pull request #704 from DataDog/mar-kolya/log-when-test-starts
Log when test starts
2019-02-11 12:40:55 -05:00
Nikolay Martynov 05731c3c45 Log when test starts
This is helpful to see what logs belong to what test
2019-02-11 12:21:20 -05:00
Nikolay Martynov f33600d1f2
Merge pull request #701 from DataDog/mar-kolya/improve-executor-instrumentation
Allow non-wrapped tasks in disabled executors
2019-02-11 12:18:36 -05:00
Nikolay Martynov bae2d7dde8 Allow non-wrapped tasks in disabled executors
Some executors cannot handle tasks that have been wrapped into
`{Runnable,Callable}Wrapper` because they require certain subclass of
`{Callable,Runnable}` in order to work. We have a test that
effectively disables instrumentation for such executors.

This change makes sure that tasks that do not need to be
wrapped (which essentially means anything that is not lambda) still
get traced in such executors. One notable example of affected executor
type is `ScheduledThreadPoolExecutor`.
2019-02-11 11:47:34 -05:00
Tyler Benson 8a4c2815d2
Merge pull request #700 from DataDog/tyler/api-tracer-shutdown
New API: Add shutdown callback to shutdown the Tracer
2019-02-11 08:21:55 -08:00
Nikolay Martynov b672a0fffc Fix ContinuableScope bug when parent span was not closed after scope was closed 2019-02-08 20:13:32 -05:00
Nikolay Martynov 3a0a471dd5 Close future's continuation on cancel even if future itself was not cancelled 2019-02-08 20:13:32 -05:00
Nikolay Martynov 9d830a3dab Do not close parent scope when closing continuation in concurrent execution state 2019-02-08 20:13:32 -05:00
Tyler Benson 8f3568c894 Review fixes 2019-02-08 14:00:14 -08:00
Tyler Benson a59eec223f Span metadata must be string values. 2019-02-08 12:05:29 -08:00
Tyler Benson 11b09ba8ce
Merge pull request #702 from DataDog/tyler/partial-flush-name
Make internal name usage consistent with setting name.
2019-02-08 11:15:07 -08:00
Tyler Benson 0e1dce868c Log exceptions from Tracer.finalize() 2019-02-08 11:09:24 -08:00
Tyler Benson 65add99a7b Make shutdown callback weakly reference the tracer.
This should allow finalize to actually be called.  (Also assumes the weak reference isn’t cleared until after finalize is called.)
2019-02-08 11:04:23 -08:00