Tyler Benson
97efa307d3
Stop setting error tag and update tests.
2020-04-13 13:59:11 -04: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
Laplie Anderson
4dce8776e1
Add traceId/spanId as request attributes
2020-03-09 16:15:40 -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
Nikolay Martynov
a04cc15ce8
Fix some tests
2020-02-14 12:59:30 -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
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
Tyler Benson
10b0f35235
Merge pull request #1090 from DataDog/tyler/servlet-path
...
Add servlet.path tag
2019-11-22 09:18:14 -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
fdf2241e5f
Add servlet.path tag
2019-11-11 15:54:21 -08:00
Laplie Anderson
bf4587c23d
Missed a few test helper methods
2019-11-04 12:49:35 -05:00
Trask Stalnaker
e32bf1816a
Organize imports
2019-10-24 21:05:01 -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
a8ca47ed03
Skip spring controller and dropwizard trace if no trace present
...
Also prefer early return instead of deep nesting for null check.
2019-10-24 14:40:08 -07:00
Trask Stalnaker
b3a86085cb
Update jetty-8 to new agent api
2019-10-19 16:52:41 -07:00
Tyler Benson
09ad2374cf
Disable Grizzly instrumentation by default
...
Otherwise it can interfere with the more common Servlet instrumentation (changing the root span name).
Unify attribute/property name for saving span on a request/context.
Also add tests for embedded GlassFish.
2019-08-27 13:27:57 -04:00
Tyler Benson
2d08464be3
Fixes
2019-08-07 10:48:14 -07:00
Tyler Benson
6dd729b843
Jetty 8: ignore parent and move to HttpServerTest
...
This method of using jetty doesn’t seem to work with Servlet’s Async. Native Jetty uses Continuations which we don’t support and should investigate instrumenting.
2019-08-07 09:35:04 -07:00
Tyler Benson
95a294a560
Remove common (redundant) dependencies
2019-08-06 14:51:04 -07:00
Nikolay Martynov
3191eb7058
Avoid Jetty 10
...
Alpha version of Jetty 10 was released and it seems to be compiled for
java versions above 8 so tests fail on java8.
Limit latest dep Jetty tests to Jetty 9 for now.
2019-07-15 10:15:16 -04:00
Nikolay Martynov
6d5972bce1
Make agent-tooling compile-depend on dd-tracing-ot directly
...
This ensures that `dd-tracng-ot` gets included into shadow jar.
Before this patch it was included only 'by accident' via some
transitive dependencies of some instrumentations.
2019-06-11 14:49:44 -04: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
b343fe4551
Split peer connection details different generic argument
2019-04-16 08:34:43 -07:00
Tyler Benson
bf05984208
Server tags should report peer, not self hostname/port
...
Previously this was not obvious and incorrect.
2019-04-16 08:21:01 -07:00
Tyler Benson
5668e6006f
Migrate Jetty instrumentation to Decorator
2019-02-28 13:54:37 -08:00
Tyler Benson
50279d64fe
Span type should only be an attribute and not inherited
...
Previously we were inheriting from the parent and also often setting as a tag.
Apply default span assertion to verify the spanType is being checked properly. (Include error state too.)
2019-02-28 12:39:51 -08:00
Tyler Benson
bbcd2f6949
Move other Utils to utils package
2019-02-05 11:43:05 -08:00
Nikolay Martynov
4ba0adfab3
Catch exception in servlet context getter.
...
Request may finish after check has been perform but before context has
been read leading to exception in some implementations.
2019-01-25 12:28:58 -05: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
Nikolay Martynov
118a61cc67
Add field backed context provider
2018-11-29 15:18:46 -08: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
228e7e0d21
Better handle Jetty async calls
...
Do same thing we do for servlets
2018-11-19 14:17:01 -05:00
Tyler Benson
1064e35788
Apply standard tag name and update spring-web test deps version.
2018-11-16 08:06:40 -08:00
Tyler Benson
51dfd2b184
Fix latestDepTests for Jetty
2018-11-12 11:05:02 -08:00
Tyler Benson
9bd2b86d2e
Add assertion to ensure latestDepTest dependencies are different from test.
2018-11-12 08:15:24 -08:00
Nikolay Martynov
34372533c1
Add config for tags that propagate to JMXFetch and spans
...
Also add runtime-id tag to root span and JMXFetch metrics
2018-10-22 15:51:20 -04:00
Tyler Benson
432ce89a07
Add assertTraces to AgentTestRunner with implied argument
...
This will also help with auto complete when writing tests.
2018-10-15 10:19:00 +10:00
Gary Huang
a8f52d8c52
Muzzle Jetty Instrumentation
...
Add muzzle block and remove class loader matcher method.
2018-09-07 17:24:11 -04:00
Tyler Benson
0b289205f8
Add fixme to adapter.
2018-08-17 10:53:12 +10:00
Tyler Benson
63746907e4
Add TestHttpServer
2018-08-16 14:23:58 +10:00