Brian Devins-Suresh
aec2fad9db
Use the parent interface
2020-04-21 09:59:12 -04:00
Brian Devins-Suresh
dc43f3f54c
We don't depend on a 2.3 type anymore
2020-04-21 09:59:12 -04:00
Brian Devins-Suresh
94750a83c9
Rework servlet 2 to not wrap HttpServletResponse objects
2020-04-21 09:59:12 -04:00
Tyler Benson
2743e64fd3
Exclude more weird versions.
2020-04-20 21:59:24 -04:00
Tyler Benson
ce006e1405
Ensure RequestDispatcher span is part of expected trace
2020-04-14 14:56:16 -04:00
Tyler Benson
64161d93c9
Add instrumentation to detect the route at the beginning of the spring request
...
Instead of waiting till the handler is called, otherwise if a response is returned by a filter then the proper name wouldn't be set and would fall back to the URL.
2020-04-14 14:19:14 -04:00
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
Tyler Benson
e4ca33d487
Merge pull request #1307 from DataDog/tyler/onmethodexit
...
Improve consistency of `@Advice.OnMethodExit` params
2020-03-11 15:29:58 -07:00
Tyler Benson
e0b46da375
Improve consistency of `@Advice.OnMethodExit` params
...
And ordering of some `helperClassNames`
2020-03-10 13:11:22 -07:00
Laplie Anderson
1a35ced75e
Tomcat access log tests
2020-03-09 16:15:57 -04:00
Laplie Anderson
4dce8776e1
Add traceId/spanId as request attributes
2020-03-09 16:15:40 -04:00
Tyler Benson
aca4b9ece9
Merge pull request #1300 from DataDog/tyler/servlet-forward
...
Stop creating a "top level" servlet span when in a forward/include situation
2020-03-06 11:46:27 -08: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
7bf85dbb97
Restrict dispatcher instrumentation to 2 arguments
...
To reduce risk of duplicate spans when delegating to a 2+ arg method.
2020-03-05 16:01:53 -08:00
Tyler Benson
2802009e01
Stop creating a "top level" servlet span when in a forward/include situation.
...
Effectively reverting 6703bd96bb
The expectation is that these are not really separate external requests, but a semantic way of processing a single request.
2020-03-05 12:52:13 -08:00
Tyler Benson
372ba221d2
Invert the classloader matcher to remove the double negative.
2020-03-05 10:14:33 -08:00
Tyler Benson
042f49d800
fix muzzle and retry tests
2020-03-03 11:03:01 -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
Nikolay Martynov
0b196ed3ec
Merge branch 'master' into mar-kolya/constantify-decorator-matcher
2020-02-28 01:41:02 +01:00
Lev Priima
885212ee36
ClassLoaderHasNoResourceMatcher: put to cache outside critical section
2020-02-27 13:12:23 -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
daae198b08
Set dispatcher span on request instead of clear
...
Clearing the span caused traces to be broken up and reported independently when calling forward/include.
2020-01-30 21:55:16 -05:00
Tyler Benson
49425e9963
Move request-response linking to main servlet advice
...
servlet-service is off by default, so we can't rely on it being called there.
2020-01-13 10:48:35 -08:00
Tyler Benson
e440eba9a1
Enable Servlet request and response dispatcher instrumentation by default.
...
Change config for Servlet Filter and Service and JDBC DataSource instrumentation so it must be explicitly enabled (won't be enabled by accident if all of servlet is enabled).
2020-01-10 13:51:21 -08:00
Tyler Benson
43fbf28035
Revert "Remove experimental jdbc and servlet integrations until further evaluation"
...
This reverts commit 2432a92230
.
2020-01-10 12:53:24 -08:00
Laplie Anderson
f181fa721f
Add classloader matcher to muzzle scan
2019-12-20 16:17:08 -05:00
kfujita
b707a3aab9
move multi-value aware logic to Extractor.
2019-12-19 13:33:08 +09:00
kfujita
a5e693bb92
assert fix same as JettyServlet3Test
2019-12-19 13:32:09 +09:00
Laplie Anderson
dc0cbeb95d
apply comma split logic to servlet request extract adapter
2019-12-19 13:32:09 +09: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
Tyler Benson
b00cdee54a
Capture full servlet URL in decorator
...
This is needed in order to tag the query string (when configured).
Full test suite will follow in future PR.
2019-12-12 13:47:40 -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
53b4e5db19
fix test
2019-11-12 15:17:35 -08:00
Tyler Benson
fdf2241e5f
Add servlet.path tag
2019-11-11 15:54:21 -08:00
Tyler Benson
2432a92230
Remove experimental jdbc and servlet integrations until further evaluation
2019-11-06 11:45:00 -08:00
Tyler Benson
2d3b644c84
Merge pull request #1080 from DataDog/tyler/rename-beta-configs
...
Rename config key for beta/experimental instrumentation.
2019-11-05 08:44:33 -08:00
Tyler Benson
4f853f5f0c
Rename config key for beta/experimental instrumentation.
...
Postfix the existing config names with `-beta` for `servlet` and `jdbc`.
To avoid any risk that the config was explicitly enabled for an unrelated reason resulting in unexpected behavior when upgrading to the latest version.
2019-11-04 13:41:33 -08:00
Laplie Anderson
bf4587c23d
Missed a few test helper methods
2019-11-04 12:49:35 -05:00
Tyler Benson
a903f20dc4
Merge pull request #1050 from DataDog/tyler/servlet-depth
...
Add new integration for Servlet Filters, HttpServlet, and RequestDispatcher
2019-10-28 08:39:56 -07:00
Tyler Benson
6703bd96bb
Fix servlet propagation for “tail-call” situations
...
Sometimes servlets will call another servlet by “resetting” the request object. This maintains the attributes previously set, including the span. We want to allow the trace to start if there’s no “active trace” even if there is a span attribute.
2019-10-25 17:01:47 -07:00