Brian Devins-Suresh
de4b6d7733
Merge pull request #1320 from DataDog/tyler/http-client-testing
...
Add tests for http clients
2020-03-25 16:08:26 -04:00
Nikolay Martynov
e5caa48364
Add netty server logging in tests
2020-03-24 15:16:09 -04:00
Brian Devins-Suresh
5aa1800bec
Get rid of half baked map methods. Close parentScope in a finally block (+forward port)
2020-03-23 14:44:11 -04:00
Lev Priima
a5a5743f7c
WeakCache instead of WeakMap ( #1256 )
...
WeakCache abstraction in addition to WeakMap
2020-03-20 00:23:07 -07:00
Tyler Benson
25464456d3
Add tests for http clients
...
- dropped request
- non-routable request
- https request
Unfortunately I wasn't able to figure out a clean way to test some of these scenarios without making a remote request.
I was also not able to configure everything consistently, so I had to disable that test for several integrations.
2020-03-13 15:05:16 -07:00
Anubhaw Arya
0344cff386
Remove hostname and port from HttpClientDecorator
2020-03-13 10:47:10 -07:00
Laplie Anderson
6411ee358f
Remove Http*Decorators from method signatures in tests
2020-03-12 13:13:17 -04:00
Laplie Anderson
6cd530a541
Move decorators to bootstrap
2020-03-11 18:41:29 -04: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
ca043a67b5
Merge pull request #1298 from DataDog/tyler/classloader-matcher
...
ClassLoader matcher cleanup
2020-03-05 20:00:09 -08:00
Tyler Benson
372ba221d2
Invert the classloader matcher to remove the double negative.
2020-03-05 10:14:33 -08:00
Tyler Benson
ee5cf2cf24
Attempt to improve test reliability
...
Add timeouts (to avoid a gradle level timeout) and retries (since we're doing it manually anyway).
I realize this is a band aid...
2020-03-04 19:02:41 -08:00
Tyler Benson
7702b0585b
Add Classloader precheck to expensive matchers.
...
Benchmark results:
```
Benchmark Mode Cnt Score Error Units
ClassRetransformingBenchmark.WithAgent.testTracedRetransform avgt 21.933 ms/op
ClassRetransformingBenchmark.WithAgent.testUntracedRetransform avgt 6.171 ms/op
ClassRetransformingBenchmark.WithAgentMaster.testTracedRetransform avgt 22.129 ms/op
ClassRetransformingBenchmark.WithAgentMaster.testUntracedRetransform avgt 6.517 ms/op
ClassRetransformingBenchmark.testTracedRetransform avgt 0.876 ms/op
ClassRetransformingBenchmark.testUntracedRetransform avgt 0.867 ms/op
```
I also saw a small improvement in application startup time.
2020-03-03 10:29:10 -08:00
Tyler Benson
35e00686b3
Imply not(isInterface()) call for expensive matchers
...
Also remove from simple named("some.name") matchers to avoid metadata lookup.
2020-02-27 12:13:42 -08:00
Tyler Benson
bd82166b58
Rename methods that don't require disambiguation.
2020-02-24 08:35:19 -08:00
Tyler Benson
f70c35842d
Move matchers to separate package and split matcher classes out
2020-02-24 08:31:12 -08:00
Trask Stalnaker
8949d6c05f
Make sure CallDepthThreadLocalMap is always reset
2020-02-20 16:53:57 -08:00
Laplie Anderson
d45ead1284
split matching into safeExtendsClass and safeHasInterface
2020-02-19 21:22:17 -05:00
Nikolay Martynov
fd75575796
Disable peer hostname tag for http servers
...
Getting peer hostname makes DNS request
2020-02-14 11:25:07 -05: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
Laplie Anderson
a0b1cd4a75
WeakMap computeIfAbsent
2020-01-15 12:26:15 -05:00
Tyler Benson
99992df998
Fix tagging query string for additional servers
...
Add test to common test suite and adapt each test.
2019-12-17 09:33:27 -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
Tyler Benson
607dd553d4
Attempt to remove span-ordering race condition with NettyClientTest
2019-10-28 09:50:56 -07:00
Trask Stalnaker
86bd9793bd
Switch to new Tags class in instrumetation
2019-10-24 21:05:00 -07:00
Trask Stalnaker
9182b64078
Switch to new Tags class in tests
2019-10-24 21:04:57 -07:00
Tyler Benson
fbd16d8cb7
Add assert to ensure muzzle range not empty and update spring-data
...
Also fix a few muzzle definitions that are now broken with the new requirement.
Moved a few projects around to match correct version numbers.
2019-10-23 14:09:01 -07:00
Trask Stalnaker
8bb0f2c2f0
Use header objects directly where possible
2019-10-21 18:21:01 -07:00
Trask Stalnaker
6a7bafe389
Update netty-4.1 to new agent api
2019-10-19 16:52:41 -07:00
Laplie Anderson
d5021e0cbc
Add test case with netty
2019-10-08 13:43:26 +02:00
Tyler Benson
8c490a42a2
Improve Ratpack context propagation and migrate tests
2019-08-16 09:17:50 -07:00
Tyler Benson
49249c0c6e
Move server field to HttpServerTest
2019-08-07 08:35:18 -07:00
Tyler Benson
668b1059f5
Migrate vertx tests to HttpServerTest
2019-08-05 15:52:04 -07:00
Tyler Benson
2aa69d8203
Merge pull request #932 from DataDog/tyler/servlet-testing
...
Migrate servlet tests to HttpServerTest and ignoreActiveSpan for "root"
2019-08-05 08:35:48 -07:00
Tyler Benson
6f229305bb
Review fixes
2019-08-02 10:01:03 -07:00
Luca Abbati
097c8186ba
Merge pull request #906 from DataDog/labbati/atlas-1.1.0-compatibility
...
Make netty 4.0 attributes definition compatible with Apache Atlas 1.1.0
2019-08-02 16:27:23 +02:00
Tyler Benson
9681b91f3e
Fix test. Format.
2019-07-29 15:27:26 -07:00
Tyler Benson
c3203dace8
Migrate servlet tests to HttpServerTest
...
Currently missing the authentication tests which need to be added to the parent, but other than that, testing is more thorough.
Discovered that trace propagation for Jetty Async is currently busted so I commented that portion of the test out until we can get it fixed.
2019-07-26 16:01:06 -07:00
Luca Abbati
8609a07eaf
Merge branch 'master' of github.com:DataDog/dd-trace-java into labbati/atlas-1.1.0-compatibility
2019-07-26 11:23:06 +02:00
Tyler Benson
c1ec277944
Base HttpServerTest and updated Netty test
2019-07-24 15:54:07 -07:00
Luca Abbati
0ff56b0a9f
Improve tests readability moving common instance to test class
2019-07-22 11:19:13 +02:00
Luca Abbati
3817e76130
Apply doubled-check locking + same approach to attributes definition for netty-4.1
2019-07-22 11:15:33 +02:00
Tyler Benson
ea4fc4ab28
Use NoopSpan instead of null for null parent.
...
Fix some more tests.
2019-07-19 09:26:40 -07:00
Tyler Benson
6ccb0d71d8
Change the scope for the netty client callback
...
Previously the scope was the http client span, which could result in deep nesting. Now it is the parent span.
Before
[——————Parent—————]
[ ^ ———Client—————]
[ ^—Child—]
Now:
[——————Parent—————]
[ ^ —Client—] [ ^—Child—]
Also improve the tests.
2019-07-19 09:26:40 -07:00
Luca Abbati
58da60ac4e
Fix typo in comment
2019-06-25 00:33:18 +02:00
Luca Abbati
8022d0e170
Remove redundant .class suffixes in groovy test files
2019-06-24 17:18:05 +02:00
Luca Abbati
d58c252085
Add tests for netty channel handlers added through channel initializers
2019-06-24 16:27:50 +02:00
Luca Abbati
27e0e4492e
Calculate depth per handler class in netty channel pipeline instrumentation
2019-06-24 16:27:50 +02:00
Tyler Benson
a4d53b0dcd
Update Cassandra Tests and more instance name cleanup
2019-06-13 15:55:40 -07:00