File tree Expand file tree Collapse file tree 4 files changed +11
-12
lines changed
jdbc/src/main/java/datadog/trace/instrumentation/jdbc
spring-web/src/main/java/datadog/trace/instrumentation/springweb
trace-annotation/src/main/java/datadog/trace/instrumentation/trace_annotation
tooling/src/main/java/datadog/trace/agent/tooling Expand file tree Collapse file tree 4 files changed +11
-12
lines changed Original file line number Diff line number Diff line change 1414import datadog .trace .agent .tooling .Instrumenter ;
1515import java .sql .Connection ;
1616import java .sql .PreparedStatement ;
17+ import java .util .Collections ;
1718import java .util .Map ;
1819import java .util .WeakHashMap ;
1920import lombok .Data ;
2223
2324@ AutoService (Instrumenter .class )
2425public final class ConnectionInstrumentation implements Instrumenter {
25- public static final Map <Connection , DBInfo > connectionInfo = new WeakHashMap <>();
26- public static final Map <PreparedStatement , String > preparedStatements = new WeakHashMap <>();
26+ public static final Map <Connection , DBInfo > connectionInfo =
27+ Collections .synchronizedMap (new WeakHashMap <Connection , DBInfo >());
28+ public static final Map <PreparedStatement , String > preparedStatements =
29+ Collections .synchronizedMap (new WeakHashMap <PreparedStatement , String >());
2730
2831 @ Override
2932 public AgentBuilder instrument (final AgentBuilder agentBuilder ) {
Original file line number Diff line number Diff line change 1616import datadog .trace .api .DDTags ;
1717import io .opentracing .Scope ;
1818import io .opentracing .util .GlobalTracer ;
19- import java .sql .PreparedStatement ;
20- import java .util .Map ;
21- import java .util .WeakHashMap ;
2219import javax .servlet .http .HttpServletRequest ;
2320import net .bytebuddy .agent .builder .AgentBuilder ;
2421import net .bytebuddy .asm .Advice ;
2522import org .springframework .web .servlet .HandlerMapping ;
2623
2724@ AutoService (Instrumenter .class )
2825public final class SpringWebInstrumentation implements Instrumenter {
29- public static final Map <PreparedStatement , String > preparedStatements = new WeakHashMap <>();
3026
3127 @ Override
3228 public AgentBuilder instrument (final AgentBuilder agentBuilder ) {
Original file line number Diff line number Diff line change 1313import io .opentracing .tag .Tags ;
1414import io .opentracing .util .GlobalTracer ;
1515import java .lang .reflect .Method ;
16- import java .sql .PreparedStatement ;
1716import java .util .Collections ;
18- import java .util .Map ;
19- import java .util .WeakHashMap ;
2017import net .bytebuddy .agent .builder .AgentBuilder ;
2118import net .bytebuddy .asm .Advice ;
2219
2320@ AutoService (Instrumenter .class )
2421public final class TraceAnnotationInstrumentation implements Instrumenter {
25- public static final Map <PreparedStatement , String > preparedStatements = new WeakHashMap <>();
2622
2723 @ Override
2824 public AgentBuilder instrument (final AgentBuilder agentBuilder ) {
Original file line number Diff line number Diff line change 11package datadog .trace .agent .tooling ;
22
3+ import java .util .Collections ;
4+ import java .util .Map ;
35import java .util .WeakHashMap ;
46import net .bytebuddy .matcher .ElementMatcher ;
57
@@ -46,7 +48,8 @@ public boolean matches(final ClassLoader target) {
4648 public static class ClassLoaderHasClassMatcher
4749 extends ElementMatcher .Junction .AbstractBase <ClassLoader > {
4850
49- private final WeakHashMap <ClassLoader , Boolean > cache = new WeakHashMap <>();
51+ private final Map <ClassLoader , Boolean > cache =
52+ Collections .synchronizedMap (new WeakHashMap <ClassLoader , Boolean >());
5053
5154 private final String [] names ;
5255
@@ -80,7 +83,8 @@ public boolean matches(final ClassLoader target) {
8083 public static class ClassLoaderHasClassWithFieldMatcher
8184 extends ElementMatcher .Junction .AbstractBase <ClassLoader > {
8285
83- private final WeakHashMap <ClassLoader , Boolean > cache = new WeakHashMap <>();
86+ private final Map <ClassLoader , Boolean > cache =
87+ Collections .synchronizedMap (new WeakHashMap <ClassLoader , Boolean >());
8488
8589 private final String className ;
8690 private final String fieldName ;
You can’t perform that action at this time.
0 commit comments