Tyler Benson
7e6cb44ec6
More fixes
2020-03-16 12:26:36 -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
372ba221d2
Invert the classloader matcher to remove the double negative.
2020-03-05 10:14:33 -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
Laplie Anderson
d45ead1284
split matching into safeExtendsClass and safeHasInterface
2020-02-19 21:22:17 -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
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
Trask Stalnaker
9ffde5d261
Update apache-httpasyncclient-4 to new agent api
2019-10-19 16:40:52 -07:00
Nikolay Martynov
e9fc866e67
Add optimization to apache async client instrumentation
2019-09-17 11:47:57 -04:00
Tyler Benson
95a294a560
Remove common (redundant) dependencies
2019-08-06 14:51:04 -07: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
fc9f1d120c
Misc fixes.
2019-05-29 13:54:35 -07:00
Tyler Benson
e260b1d044
Make all http client tests extend HttpClientTest
...
Add flexibility to handle inconsistencies between client integrations.
2019-05-29 13:54:35 -07:00
Nikolay Martynov
c5dbd7d0d7
Fix ApacheHttpAsync race condition
2019-05-17 13:49:46 -04:00
Nikolay Martynov
e52c654fd1
Wait for span to finish instead of ignoring test
2019-05-17 12:55:34 -04:00
Nikolay Martynov
387f094617
Ignore flaky apache-http-aync test
2019-05-17 11:19:24 -04:00
Nikolay Martynov
b736ca3108
Handle null callback in HttpAsyncApache instrumentation
2019-05-16 17:26:08 -04:00
Tyler Benson
376451c031
Fix instrumentation names for apache httpasyncclient
2019-05-03 09:58:05 -07:00
Tyler Benson
68a68f1057
Ensure that http.url tag doesn’t have query params set
...
Make handling of it more consistent in decorator.
2019-04-26 09:48:34 -07:00
Tyler Benson
9ad06a6791
Add instrumentation for Apache HttpAsyncClient
...
Extract http client tests to shared class.
2019-04-23 17:10:40 -07:00