Laplie Anderson
9868c230cf
Fix JMS test library for Java 7
2020-03-13 13:10:47 -04:00
Laplie Anderson
994dc89672
Fix jms tests with JDK11+
2020-03-12 17:59:57 -04:00
Laplie Anderson
6cd530a541
Move decorators to bootstrap
2020-03-11 18:41:29 -04:00
Brian Devins-Suresh
db074b199a
Make regular test less flaky too
2020-03-11 15:57:15 -04:00
Brian Devins-Suresh
00e331814d
Use a different queue per test
2020-03-11 15:38:13 -04:00
Trask Stalnaker
279af696f4
Improve test reliability
2020-03-09 09:30:31 -07:00
Trask Stalnaker
7761094280
Fix for Spring JMS listeners
2020-03-08 22:41:58 -07: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
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
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
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
30367c79cf
Split up MessagePropertyTextMap
2019-10-21 18:46:58 -07:00
Trask Stalnaker
6b23ffbae8
Update jms to new agent api
2019-10-19 16:52:41 -07:00
Tyler Benson
95a294a560
Remove common (redundant) dependencies
2019-08-06 14:51:04 -07:00
Nikolay Martynov
6fd630831f
Stop using `scopeManager().activate(span, true)`
2019-04-08 11:54:47 -04:00
Nikolay Martynov
e678a62e5b
Use scope when opening JMS span
2019-04-05 11:13:53 -04:00
Tyler Benson
50b4e1623e
Migrate JMS instrumentation to Decorator
2019-02-28 13:52:29 -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
Nikolay Martynov
f84e510f3e
Increase timeouts in JMS test to try to make it more stable
2019-02-05 10:10:49 -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
c1e21e328b
Small improvement for jms tests to hopefully make them more stable
2018-12-07 09:40:29 -05:00
Tyler Benson
013e57c677
Add tests for Spring JMS Template
2018-12-04 10:54:53 -08:00
Tyler Benson
74743be6e5
Remove duplicate JMS spans from nested calls.
2018-12-03 11:15:28 -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
6bc6bcdec9
Remove version scan from JMS Instrumentation
2018-09-07 19:56:17 -04:00
Tyler Benson
9cf7b28e88
Make JMS more resilent to property failure
...
Combine into single module and add test.
Replace classLoaderMatcher with muzzle check.
Thanks for the tip @adriancole.
2018-08-31 16:10:14 +10:00