Tyler Benson
a98c22ac3a
Introduce base decorators
2019-02-20 16:11:18 -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
a7ebc9b3db
Deprecate WEB_SERVLET type
2019-02-20 08:42:39 -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
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
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
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
0802bb864c
Merge pull request #696 from DataDog/tyler/jmxfetch-config
...
JMXFetch bundled integrations disabled by default
2019-02-07 09:48:32 -08:00
Nikolay Martynov
931e6ff8af
Merge pull request #688 from DataDog/mar-kolya/webflux-fixes
...
Fix webflux integration to not rely in active span
2019-02-07 12:45:50 -05:00
Tyler Benson
000c0e4644
Upgrade Gradle to 4.10.3
...
Also try to improve build time performance by reducing the required configuration:
https://blog.gradle.org/preview-avoiding-task-configuration-time
2019-02-07 09:43:36 -08:00
Tyler Benson
4414dc2ad5
JMXFetch bundled integrations disabled by default
...
Enable each individually by setting `-Ddd.integration.<integration_name>.enabled=true`.
2019-02-06 13:00:52 -08:00
Nikolay Martynov
6de4f1b0ba
Merge pull request #694 from DataDog/mar-kolya/split-service-http-client-suggestions
...
Mar kolya/split service http client suggestions
2019-02-05 16:07:54 -05:00
Nikolay Martynov
a46d6a2e8f
Use config inheritance in `withConfigOverride`.
...
This moves us forward to abstract 'Config' and away from depending in
specific config data source (e.g. system properties).
2019-02-05 15:51:05 -05:00
Tyler Benson
65cece6741
Fix code coverage ignores.
2019-02-05 12:15:14 -08:00
Tyler Benson
12e7efc0b9
Review fixes
2019-02-05 11:58:36 -08:00
Tyler Benson
bbcd2f6949
Move other Utils to utils package
2019-02-05 11:43:05 -08:00
Tyler Benson
6aa371d790
Encapsulate config override reflection
2019-02-05 11:30:07 -08:00
Tyler Benson
6cebabbada
Move integrations config to Config class.
2019-02-05 08:20:49 -08:00
Tyler Benson
1a54e8179a
Add setting to set service name by domain for http clients
...
This will allow better metric collection and identification of trends for individual services/hosts.
This is not enabled by default because it can result in a high cardinality of services.
2019-02-05 08:20:49 -08:00
Nikolay Martynov
a086f38f2f
Fix webflux integration to not rely in active span
...
Netty event loop instrumentation doesn't allow us to attribute work to
correct span so we have to maintain that manually.
2019-02-05 10:38:21 -05:00
Nikolay Martynov
f84e510f3e
Increase timeouts in JMS test to try to make it more stable
2019-02-05 10:10:49 -05:00
Nikolay Martynov
f3d3d1269a
Merge pull request #692 from DataDog/mar-kolya/netty-4.0-improve-test
...
Make test results in netty-4.0 client tests more readable
2019-02-05 09:35:55 -05:00
Nikolay Martynov
b25784e7a2
Make test results in netty-4.0 client tests more readable
2019-02-04 15:39:42 -05:00
Daniel Solano Gómez
4953a6c417
Skip clojure.lang.DynamicClassLoader
...
Not doing this seems to cause issues with Clojure protocols.
An application instrumented with the dd-java-agent that will
otherwise run fine will fail with ClassNotFoundException for
classes pertaining to Clojure protocols.
2019-02-04 07:12:29 -06:00
Tyler Benson
9353f82063
Merge pull request #686 from DataDog/tyler/jboss-jmxfetch
...
Initialize JMXFetch if configured log manager is on sys classpath
2019-01-31 15:24:55 -08:00
Tyler Benson
88d190d95b
Test for customlogmanager=false
2019-01-31 14:53:58 -08:00
Will Gittoes
558cd9a3b7
Merge pull request #683 from DataDog/willgittoes-dd/hystrix-operation-name
...
Hard-code Hystrix operation (span) name, leaving the resource name dynamic
2019-02-01 09:44:29 +11:00
Will Gittoes
99e4e52600
Fix style
2019-02-01 09:29:05 +11:00
Tyler Benson
e293ed477d
Fix tests.
2019-01-31 14:25:19 -08:00
Tyler Benson
f7abb2ac04
Initialize JMXFetch if configured log manager is on sys classpath
...
Some applications set java.util.logging.manager but never actually initialize the logger.
Check to see if the configured manager is on the system classpath.
If so, it should be safe to initialize jmxfetch which will setup the log manager.
2019-01-31 13:31:48 -08:00
Tyler Benson
c89b00f682
Elaborate on comment.
2019-01-31 11:14:06 -08:00
Tyler Benson
ea0dedcee7
Allow setting dd.app.customlogmanager=false to disable jboss check
2019-01-31 10:53:20 -08:00
Tyler Benson
ee8a26d4dc
Replace jboss classpath check with ENV check for jmxfetch delay
...
Some applications seem to have this jboss class on the classpath, but don’t actually use it. When coupled with not actually using JUL, this means that we may never actually start JMXFetch.
Checking for JBOSS_HOME instead should be safer.
2019-01-31 10:42:43 -08:00
Will Gittoes
a44b59bb14
Hard-code Hystrix operation (span) name, leaving the resource name dynamic
2019-01-31 14:30:08 +11:00
Will Gittoes
5941a93ad4
Merge pull request #679 from DataDog/willgittoes-dd/es-rest-6.4
...
Add support for Elasticsearch rest client 6.3 and above
2019-01-31 11:02:59 +11:00
Will Gittoes
57bae1688e
Review comments
2019-01-31 09:15:30 +11:00
Tyler Benson
bb2fbb30b8
Add logging to JMXFetch initialization delay
...
Otherwise it’s difficult to determine why JMXFetch isn’t being initialized.
2019-01-30 10:39:29 -08:00
Will Gittoes
56aaccb0c2
Remove commented code
2019-01-30 17:42:41 +11:00
Will Gittoes
f15a2ffd79
Add support for ES rest client 6.3 and above
2019-01-30 17:39:20 +11:00
Tyler Benson
2971d1b0d3
Ensure the copyMetricConfigs task runs after processResources
...
Otherwise there seems to be a race condition which results in the metric config files being overwritten.
2019-01-28 13:43:07 -08:00