Commit Graph

4013 Commits

Author SHA1 Message Date
Nikolay Martynov 6e10eee6ee Use isEmpty 2020-02-27 15:53:48 +01:00
Nikolay Martynov 70bed6f4ac Remove javadoc from some inappropriate places 2020-02-27 15:53:47 +01:00
Nikolay Martynov 5a17e57e99 Provide `toString` for SafeExtendsClassMatcher 2020-02-27 15:53:46 +01:00
Nikolay Martynov 06b052c4d9 Minor cleanup 2020-02-27 15:53:45 +01:00
Nikolay Martynov 0752b07d92 Introduce dd.tags 2020-02-27 12:26:29 +01:00
Laplie Anderson 050298802a Begin 0.45.0 2020-02-26 16:27:50 -05:00
Laplie Anderson 7c11cc2803 Version 0.44.0 2020-02-26 16:05:53 -05:00
dougqh 7511dede5d Merge branch 'master' of github.com:DataDog/dd-trace-java 2020-02-26 15:57:39 -05:00
Tyler Benson f431d5285a Return TypePool.Resolution that caches
Caching focused on the expensive calls primarily used by our instrumentation.
2020-02-26 12:47:48 -08:00
Laplie Anderson 84c7be64b5 Add blacklist directly to global ignores 2020-02-26 11:59:21 -05:00
Tyler Benson 2ec0c1acb7
Merge pull request #1258 from DataDog/tyler/fix-whitelist-logging
Apply matcher if debug logging enabled to avoid confusing log output.
2020-02-26 08:57:17 -08:00
Nikolay Martynov 338f517db2
Merge pull request #1246 from DataDog/mar-kolya/improve-hash-calclulation-cache-pool
improve hash calculation cache pool
2020-02-26 16:22:38 +01:00
Brian Devins-Suresh 30e1d56023 Address comments 2020-02-26 09:14:49 -05:00
Tyler Benson eb8de0d3ab Apply matcher if debug logging enabled to avoid confusing log output.
Otherwise it was "Skipping" every unrelated class.
2020-02-25 18:04:27 -08:00
Laplie Anderson fa3f449ec4 Add list of blacklisted spring classes 2020-02-25 16:33:39 -05:00
Nikolay Martynov 96f74d0fef Compare loader hashes 2020-02-25 21:53:12 +01:00
Nikolay Martynov 82dd2aa1b3 Revert "Make sure that same classloaders get same weak ref"
This reverts commit 50793e5244.
2020-02-25 21:47:42 +01:00
Brian Devins-Suresh 815bd0e9f6 Fix comment 2020-02-25 10:31:52 -05:00
Brian Devins-Suresh 2441ca3332 No more arraylist(0) 2020-02-25 10:02:53 -05:00
dougqh 65c6d17df6 Merge branch 'master' of github.com:DataDog/dd-trace-java 2020-02-25 09:41:40 -05:00
Brian Devins-Suresh 3b78d4593f Don't need to collect mismatches in the critical path 2020-02-25 09:36:00 -05:00
Nikolay Martynov 50793e5244 Make sure that same classloaders get same weak ref 2020-02-25 14:32:35 +01:00
Nikolay Martynov aefcc477cb Simplify TypePoolCacheKey equals
We have to check string equivalence regardless of classloader state
2020-02-25 11:58:18 +01:00
Nikolay Martynov 31b5652d10 Remove reference check from TypeCacheKey 2020-02-25 10:19:47 +01:00
Nikolay Martynov 41db97ea0f Merge branch 'master' into mar-kolya/improve-hash-calclulation-cache-pool 2020-02-25 10:18:25 +01:00
Brian Devins-Suresh 5ebc13cafa Increase performance on java 8 2020-02-24 17:10:41 -05:00
Brian Devins-Suresh af67dfa720 Need to cache the boolean. The list can be taken later as debug is expected to be slower 2020-02-24 14:39:17 -05:00
Brian Devins-Suresh 75af71584c Refactor an agent usage, and fix logic issue 2020-02-24 14:39:17 -05:00
Brian Devins-Suresh e65177a143 Fail fast in the matcher, let the debug outputs use the cache 2020-02-24 14:39:17 -05:00
Tyler Benson 39e577ad97
Merge pull request #1250 from DataDog/tyler/test-matchers
Move matchers around and add unit tests.
2020-02-24 09:14:31 -08:00
Tyler Benson c13cb2e60f Move a few other classes. 2020-02-24 08:35:19 -08:00
Tyler Benson 3559ffb21c Add unit tests for matchers 2020-02-24 08:35:19 -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
Nikolay Martynov 833f67816e
Merge pull request #1248 from DataDog/mar-kolya/reduce-superclass-matcher-exposure
Avoid calling superclass matcher where possible
2020-02-21 21:16:52 -05:00
Tyler Benson b27b30d913
Merge pull request #1247 from DataDog/tyler/bb-raw
Set ByteBuddy raw setting at startup
2020-02-21 16:30:24 -08:00
Nikolay Martynov b6d374e3a0 Avoid calling superclass matcher where possible
Saves about 100ms of startup time on test app
2020-02-21 15:08:39 -05:00
Tyler Benson ecf9bcc655
Make sure CallDepthThreadLocalMap is always reset (#1227)
Make sure CallDepthThreadLocalMap is always reset
2020-02-21 11:03:51 -08:00
Tyler Benson faccb0d483 Set ByteBuddy raw setting at startup
This reduces the complexity of TypeDefinitions.
```
Benchmark                                                             Mode  Cnt   Score   Error  Units
ClassRetransformingBenchmark.WithAgent.testTracedRetransform          avgt       22.450          ms/op
ClassRetransformingBenchmark.WithAgent.testUntracedRetransform        avgt        6.842          ms/op
ClassRetransformingBenchmark.WithAgentMaster.testTracedRetransform    avgt       23.188          ms/op
ClassRetransformingBenchmark.WithAgentMaster.testUntracedRetransform  avgt        7.009          ms/op
```
It also improved startup time by about 1 sec.
2020-02-21 10:35:20 -08:00
Nikolay Martynov 1f8acafc42
Merge pull request #1245 from DataDog/mar-kolya/single-ignores-matcher
Single ignores matcher
2020-02-21 12:42:18 -05:00
Tyler Benson e4d29e37ef
Update JMH benchmarks (#1242)
Update JMH benchmarks
2020-02-21 09:38:34 -08:00
Nikolay Martynov 00c268e6d8 Add equivalence check to TypeCacheKey 2020-02-21 12:24:53 -05:00
Nikolay Martynov d4c6d86e6d Do not use zero for hashcode
Seems like this may have odd sideeffects
2020-02-21 12:24:09 -05:00
Nikolay Martynov f736c425ff TypeCacheKey are different if hash codes are different
And this is very easy to check
2020-02-21 12:23:41 -05:00
Nikolay Martynov 9d7682f776 Fix hashcode calculation in TypeCacheKey
Using potentially very large number for a mod is probably not very effective
2020-02-21 12:22:51 -05:00
Nikolay Martynov 27842d8479 Ignore cglib packaged with springboot 2020-02-21 11:56:45 -05:00
Nikolay Martynov 0c659770cc Collect all ignore matchers into one
This should allow us to optimize this as a single function later
2020-02-21 11:48:40 -05:00
Nikolay Martynov b1d314aff1 Specify types in jaxrs mtcher to help Idea with type inference 2020-02-21 11:34:25 -05:00
dougqh cda3d6bbe3 Merge branch 'lpriima/ClassLoaderMatcherGuavaCache' 2020-02-21 10:44:14 -05:00
Nikolay Martynov e92d326052
Merge pull request #1236 from DataDog/mar-kolya/determine-agent-url-on-first-call
Determine agent URL version on first upload call
2020-02-21 07:04:49 -05:00