Andrew Kent
3295739e28
Fix race conditions in custom log manager test
...
Fix two race conditions in the custom log manager test.
- Remove possibility of false positives by blocking until jmx thread
sends statsd metrics
- Disable logging in test to avoid deadlock in jmxfetch which can
occur when the JVM shuts down too quickly
2019-01-16 08:57:59 -08:00
Nikolay Martynov
1b1f620318
Improve Vertx test stability
...
By actiually waiting for test server to start listening.
2019-01-11 12:14:17 -05:00
Marco Ferrer
63c28cef31
add kotlin test config to java-concurrent project
2019-01-09 19:20:31 -05:00
Marco Ferrer
a31abc67e9
add support for instrumenting kotlin coroutine schedulers
2019-01-09 19:04:42 -05:00
Andrew Kent
cc8db0b11f
Workaround module bug by skipping LogManager$Cleaner instrumentation
2019-01-09 15:03:43 -08:00
Tyler Benson
f63d40fe55
Use git submodules to load metrics.yaml files
2019-01-08 10:13:18 -08:00
Tyler Benson
249951aa7a
Add README
2019-01-08 09:36:08 -08:00
Tyler Benson
de166e5ecb
First pass at embedding existing jmx integrations
...
Using copy/paste from integrations-core. Will depend on a new jmxfetch release with https://github.com/DataDog/jmxfetch/pull/205 before this will work.
2019-01-08 09:36:07 -08:00
Nikolay Martynov
354cbfcb2d
Concurent instrumentation tests: block thread before starting tracing
...
Otherwise blocking thread is pretty much useless since we may still
get spans if threads are executed quickly enough.
2019-01-08 12:30:18 -05:00
Nikolay Martynov
06bd670f0a
Remove unused class
2019-01-08 12:30:10 -05:00
Nikolay Martynov
93b018b4cc
Use port 61 for unused port in akka tests
...
This port is in low range and is not assigned so nothing should really
be listening on it on any host.
2019-01-08 12:04:50 -05:00
Tyler Benson
7da0cc7f50
Merge pull request #645 from DataDog/tyler/instrumenter-signature
...
Apply proper generic signature for Instrumenter.Default transformers()
2019-01-07 14:18:52 -08:00
Tyler Benson
c18b299606
Also exclude test coverage from instrumentation
2019-01-04 15:25:36 -08:00
Tyler Benson
6d7415fed2
Don’t run coverage on projects that use shadow
...
It was breaking on dd-java-agent where it has duplicate classes across different jars. These projects are excluding everything anyway.
2019-01-04 15:25:36 -08:00
Tyler Benson
6a09f6e2b9
Moves all ittests to be tests under dd-java-agent.
...
This was weird having it as a separate project. Reduces the number of top level directories.
There weren’t any existing tests in dd-java-agent’s test directory, so this seemed like a good place to put them.
2019-01-04 15:25:36 -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
93116e4e12
Avoid downloading so many AWS dependencies for the entire SDK
...
Only specify the deps we need for the tests.
2019-01-04 13:42:51 -08:00
Nikolay Martynov
d02e0d8e47
Fix akka latest dep test failure
2019-01-03 19:13:48 -05:00
Nikolay Martynov
ad2d5d6cb7
Merge pull request #638 from DataDog/mar-kolya/fix-akka-101
...
Fix Akka 10.1 support
2018-12-28 13:30:42 -05:00
Nikolay Martynov
be919a0145
Fix Akka 10.1 support
2018-12-28 13:12:33 -05:00
Tyler Benson
82dcc3ce6c
Merge pull request #629 from DataDog/ark/jmx-tagging
...
Add languages tag to jmx/runtime tags
2018-12-28 09:34:20 -08:00
Tyler Benson
8b910b46d1
Update tests for `language` tag in root span
2018-12-27 16:00:47 -08:00
Tyler Benson
3ef347f00f
Use safeHasSuperType instead of isSubTypeOf
2018-12-27 10:33:43 -08:00
Tyler Benson
471d8c4410
Properly capture callable statement queries
...
CallableStatement is a sub type of PreparedStatement. Previously we were only matching methods that returned exactly PreparedStatement.
2018-12-21 14:03:33 -08:00
Andrew Kent
e9f1436522
Additional continuable-scope tests
2018-12-19 17:12:58 -08:00
Andrew Kent
2861d87071
slf4j MDC autoinjection integration
2018-12-19 17:09:00 -08:00
Andrew Kent
4dc3528097
Add post-match hook to default instrumenter api
2018-12-19 17:07:43 -08:00
Andrew Kent
571d9cf077
Merge pull request #632 from DataDog/ark/remove-errorprone
...
remove errorprone
2018-12-19 20:58:26 +00:00
Andrew Kent
d0f3cfa3d6
Use asm bundled by bytebuddy in field-backed provider
...
JVM's ASM is not bundled with the agent and may not be present at runtime.
2018-12-19 12:37:47 -08:00
Gary Huang
513cccd698
Change shell script to work with play
...
- Added an argument to the script to take [play-zip|jar] to distinguish between the frameworks to test
- Updated README
- Cleanup
2018-12-14 11:19:17 -05:00
Gary Huang
d3b7910950
Add work logic to play server
2018-12-14 11:19:15 -05:00
Gary Huang
34658aabcb
Play Server Performance Testing
...
Set up gradle sub project
2018-12-14 11:18:58 -05:00
Andrew Kent
0b92413d4a
Move JvmBootstrapTest into a fork inside a groovy test
2018-12-12 20:17:48 -08:00
Andrew Kent
d0120b9419
Assert logger constructor exists before applying instrumentation
...
This adds muzzle functionality to the logger
instrumentation. Assertions are manually set up because auto-creation
of references is not possible for non-default instrumenters.
2018-12-12 20:01:52 -08:00
Andrew Kent
0240ad5154
Move default instrumentation declarations to Instrumenter.Default
2018-12-11 18:01:40 -08:00
Andrew Kent
1004ee4ef7
Patch java.util.logging.Logger for safe use with jmxfetch
2018-12-11 17:26:02 -08:00
Andrew Kent
d60ecf0a62
Upgrade jmxfetch to latest version
...
Manually tested against wildfly. No startup bugs. New jvm metrics are
autoreported.
2018-12-10 10:58:35 -08:00
Gary Huang
70b60939f4
Merge pull request #622 from DataDog/gary/fix-ratpack-test
...
Fix Flaky Ratpack Fork Test
2018-12-09 15:27:44 -05:00
Gary Huang
a04b30107f
Change scope handling
2018-12-07 12:40:18 -05:00
Nikolay Martynov
cb419997af
Merge pull request #623 from DataDog/mar-kolya/jms-test-improvements
...
Small improvement for jms tests to hopefully make them more stable
2018-12-07 11:58:29 -05:00
Nikolay Martynov
2d28b5129e
Merge pull request #621 from DataDog/mar-kolya/fix-wildfly-startup
...
Fix wildfly startup by injecting context classes into bootstrap package
2018-12-07 10:44:42 -05:00
Nikolay Martynov
3225c8fd03
Fix wildfly startup by injecting context classes into bootstrap package
2018-12-07 09:56:04 -05:00
Nikolay Martynov
c1e21e328b
Small improvement for jms tests to hopefully make them more stable
2018-12-07 09:40:29 -05:00
Gary Huang
26c354dad2
Fix Flaky Ratpack Fork Test
...
Ratpack tests occasionally fail with the handler span and manually started span out of order. This will ensure that if a span is manually started inside of the handler then it will be finished after the handler span is finished, which is when the request has been responded to.
2018-12-07 00:49:37 -05:00
Gary Huang
2c85b5cbb8
Restore RabbitMQ latestDepTest to use latest version
...
Since spring-rabbit no longer uses a dependency with a snapshot build.
2018-12-07 00:16:03 -05:00
Nikolay Martynov
600674b03a
Put back muzzle check for 'dd-' threads
2018-12-05 17:20:50 -05:00
Nikolay Martynov
4deb68bfd7
Fix memory leak in WeakMapSuppliers.WeakConcurrent
...
The problem there is that it references JVM shutdown hook that keeps
reference to cleanup executor which potentially can keep references to
all sort of things - and this doesn't get cleaned up untill JVM
shutdown.
Solution is to remove shutdown hook when supplier is being GCed.
2018-12-05 15:02:40 -05:00
Nikolay Martynov
30712cdc87
Merge pull request #617 from DataDog/mar-kolya/java-concurrent-test-cleanup
...
Remove unused variable from AsyncChild classes
2018-12-05 12:35:19 -05:00
Nikolay Martynov
2e9b20ceb5
Remove unused variable from AsyncChild classes
2018-12-05 11:53:19 -05:00
Tyler Benson
94a3f7bb2b
Merge pull request #616 from DataDog/tyler/grpc
...
Enable gRPC instrumentation by default.
2018-12-04 14:28:58 -08:00
Nikolay Martynov
7cd3438d6b
Merge pull request #613 from DataDog/mar-kolya/improve-httpurl-connection
...
Improve HttpUrlConnection instrumentation
2018-12-04 17:12:01 -05:00
Tyler Benson
43e8c70098
Enable gRPC instrumentation by default.
2018-12-04 14:11:57 -08:00
Nikolay Martynov
0a3ecc1b90
Improve HttpUrlConnection instrumentation
...
Make sure we get one span per request
2018-12-04 16:54:48 -05:00
Tyler Benson
6cb9e0360d
Merge pull request #612 from DataDog/tyler/jms
...
Remove duplicate JMS spans from nested calls.
2018-12-04 11:25:56 -08:00
Tyler Benson
013e57c677
Add tests for Spring JMS Template
2018-12-04 10:54:53 -08:00
Nikolay Martynov
66570a2135
Add some synchronization into ES tests to make them more stable
2018-12-04 12:15:44 -05:00
Tyler Benson
3be4bbb7f0
Merge pull request #608 from DataDog/tyler/upgrades
...
Update misc versions.
2018-12-03 15:07:36 -08:00
Tyler Benson
74743be6e5
Remove duplicate JMS spans from nested calls.
2018-12-03 11:15:28 -08:00
Andrew Kent
12a1b0ce08
Merge pull request #610 from DataDog/ark/jmxfetch-new-gc-metrics
...
Configure jmxfetch to use new gc metrics
2018-11-30 18:54:31 +00:00
Andrew Kent
20b726bca7
Merge pull request #609 from DataDog/ark/aws-muzzle-ranges
...
Simplify AWS muzzle ranges
2018-11-30 18:53:05 +00:00
Andrew Kent
c9471e289b
Configure jmxfetch to use new gc metrics
...
This won't have any effect on jmx behavior. The next jmxfetch update
puts our desired metric names behind this feature flag. Enabling now
so we don't forget the next time we refresh jmxfetch.
2018-11-30 10:13:11 -08:00
Tyler Benson
983077d150
Move mock/assert deps out of common dependencies
2018-11-30 10:02:26 -08:00
Andrew Kent
91f1bef6f4
Simplify AWS muzzle ranges
...
AWS Muzzle workaround is no longer needed with latest muzzle
optimizations.
2018-11-29 16:18:14 -08:00
Nikolay Martynov
2e8dc9d08f
Fix Ratpack tests that got broken by ExecutorInstrumentation refactoring
...
It turns out closing continuation also closes parent span. This is not
very good in cases when we end up not using continuation if
continuation in a state has already been setup.
This patch provides way to close continuation in a way that doesn't
affect parent scope.
2018-11-29 15:21:46 -08:00
Nikolay Martynov
4ec5ca394c
Add code to wrap future returned by submit(Runnable) call
2018-11-29 15:18:46 -08:00
Nikolay Martynov
177c1432e3
Add tests to verify that fields are not injected when feature is disabled
2018-11-29 15:18:46 -08:00
Nikolay Martynov
ad98ebc01f
Add some comments and some other minor CR tweaks
2018-11-29 15:18:46 -08:00
Nikolay Martynov
1509286b15
Remove MapBackedProvider
2018-11-29 15:18:46 -08:00
Nikolay Martynov
118a61cc67
Add field backed context provider
2018-11-29 15:18:46 -08:00
Nikolay Martynov
b89e73b3c0
Switch executor instrumentation to use context storage
2018-11-29 15:18:46 -08:00
Tyler Benson
442323d4d1
Add catch so instrumentation errors don’t interrupt primary execution.
2018-11-29 13:14:12 -08:00
Tyler Benson
c9ec9ebd0f
Add guard against null values in extract adapter.
2018-11-29 13:06:01 -08:00
Tyler Benson
ae063e8a14
Add additional 404 tests for spring boot.
...
This one succeeds in applying routing, but returns a 404 response.
2018-11-29 11:32:49 -08:00
Tyler Benson
785860b6a7
Add null check for envelope in consumer delegate
2018-11-29 11:22:32 -08:00
Andrew Kent
3c4b480a18
Share tooling loader across muzzle runs
2018-11-28 13:01:01 -08:00
Andrew Kent
6ee5fd27b0
Guard against invoking WeakConcurrent constructor
2018-11-28 12:05:47 -08:00
Tyler Benson
2f319b9301
Consumer delegate should rethrow the exception
...
Previously the delegate would swallow the exception and not rethrow.
I also added a test to attempt to verify, but the exception doesn’t seem to be observable in the test.
(See #602 )
2018-11-28 08:36:15 -08:00
Nikolay Martynov
e87d4ef161
Servlet3 instrumentation race consition fixes
...
* Do not set `asyncPropagate` on scope since it will be closed anyway.
* Close span once done with it in `TagSettingAsyncListener`.
* No point in explicit finishing span in 'finishOnClose' scope.
* Do not reattach listener in
`TagSettingAsyncListener#onStartAsync`. Listener is attached each
time by `Servlet3Advice#stopSpan` and reattaching listener in
`TagSettingAsyncListener#onStartAsync` causes multiple listeners to
be attached and race conditions to happen.
* Do not close span in `AsyncContextInstrumentation`. This leads to
span being written prematurely. This span will be closed in
`TagSettingAsyncListener` anyway, along with adding proper status code.
2018-11-27 17:17:56 -08:00
Tyler Benson
e46ab1d01d
Merge pull request #600 from DataDog/tyler/threadpool-errors
...
Improve error handling for ThreadPoolExecutorInstrumentation
2018-11-27 15:24:58 -08:00
Tyler Benson
4199f924ac
Remove ES-transport instrumentation from rest test
...
It is generating an extra trace/span that in a realistic scenario would be generated by the server, not the client.
2018-11-27 13:02:44 -08:00
Tyler Benson
468ccab99a
Improve error handling for ThreadPoolExecutorInstrumentation
...
If other exceptions are thrown when trying to test the queue, it generates lots of log noise. This should handle it better.
2018-11-27 11:28:44 -08:00
Nikolay Martynov
6f61ddc67d
Merge pull request #594 from DataDog/mar-kolya/es-tests-stability
...
Improve stability of ES tests by avoiding unpredictable spans
2018-11-26 22:50:43 -08:00
Gary
90777f4b39
Retire/remove version scan
...
Remove version scan dead code and unnecessary classLoaderMatcher methods in instrumentations. Depends on #572
2018-11-26 18:21:56 -05:00
Gary
477c2f92c8
Address comments and add onClose callback on context to close scope.
2018-11-26 17:26:48 -05:00
Gary
50c2af9abb
remove classloader matcher
2018-11-26 16:57:12 -05:00
Gary
51978d877f
remove version scan task from ci
2018-11-26 16:57:10 -05:00
Gary
bf30d73746
remove skipping of ratpack helper checks
2018-11-26 16:55:36 -05:00
Gary
4169e42cdc
replace version scan with muzzle block
2018-11-26 16:55:33 -05:00
Gary
6475f20308
Refactor Ratpack
...
Remove the use of the OT project and Execution managed scopes. Updated tests.
2018-11-26 16:55:18 -05:00
Nikolay Martynov
467f14c359
Small fix in ES tests
2018-11-26 13:07:42 -08:00
Andrew Kent
1b1527da93
Merge pull request #596 from DataDog/mar-kolya/set-gradle-heap
...
Mar kolya/set gradle heap
2018-11-26 19:39:40 +00:00
Nikolay Martynov
80cd7cd500
Do testAnnotationProcessor deps.autoservice in modules with services in tests
...
Otherwise sometimes tests cannod discover services
2018-11-23 09:44:49 -05:00
Nikolay Martynov
23203fb659
Improve stability of ES tests by avoiding unpredictable spans
2018-11-23 09:43:41 -05:00
Nikolay Martynov
7dae6df890
In kafka latest deps test make sure that kafka version matches kafka client libs
...
This seems to help with compatibility
2018-11-22 21:02:05 -05:00
Nikolay Martynov
fdffee8f5c
Fix Hysrix test to not poll queue and return null
...
Instead wait for value to appear
2018-11-21 16:25:34 -05:00
Nikolay Martynov
2852a6a97a
Fix setup so springweb tests produce appropriate logs
2018-11-21 16:03:19 -05:00
Nikolay Martynov
590ed30f56
Limit Jedis latest dep tests to 2+ versions of Jedis
...
Jedis 3 seems to have incompatible API changes
2018-11-21 11:43:13 -05:00
Nikolay Martynov
a70da1d995
Remove redundant tests from SparkJava
...
Tests that create traces and do not assert on them may leave traces
behind for the next test causing errors.
2018-11-20 17:26:29 -05:00
Nikolay Martynov
ca0a4a4458
Do not check ES document version in Sping test
...
ES may do things that change this version unexpectedly
2018-11-20 14:46:30 -05:00
Nikolay Martynov
cd9ab3daef
Merge pull request #587 from DataDog/mar-kolya/set-netty-continuation-once
...
Set netty continuation only once
2018-11-20 13:19:45 -05:00