|
31 | 31 | import io.opentelemetry.javaagent.tooling.asyncannotationsupport.WeakRefAsyncOperationEndStrategies;
|
32 | 32 | import io.opentelemetry.javaagent.tooling.bootstrap.BootstrapPackagesBuilderImpl;
|
33 | 33 | import io.opentelemetry.javaagent.tooling.bootstrap.BootstrapPackagesConfigurer;
|
34 |
| -import io.opentelemetry.javaagent.tooling.bytebuddy.SafeTypeStrategy; |
35 | 34 | import io.opentelemetry.javaagent.tooling.config.AgentConfig;
|
36 | 35 | import io.opentelemetry.javaagent.tooling.config.ConfigPropertiesBridge;
|
37 | 36 | import io.opentelemetry.javaagent.tooling.config.EarlyInitAgentConfig;
|
|
59 | 58 | import net.bytebuddy.description.type.TypeDefinition;
|
60 | 59 | import net.bytebuddy.description.type.TypeDescription;
|
61 | 60 | import net.bytebuddy.dynamic.DynamicType;
|
| 61 | +import net.bytebuddy.dynamic.VisibilityBridgeStrategy; |
| 62 | +import net.bytebuddy.dynamic.scaffold.InstrumentedType; |
62 | 63 | import net.bytebuddy.dynamic.scaffold.MethodGraph;
|
63 | 64 | import net.bytebuddy.utility.JavaModule;
|
64 | 65 |
|
@@ -131,11 +132,12 @@ private static void installBytebuddyAgent(
|
131 | 132 | new AgentBuilder.Default(
|
132 | 133 | // default method graph compiler inspects the class hierarchy, we don't need it, so
|
133 | 134 | // we use a simpler and faster strategy instead
|
134 |
| - new ByteBuddy().with(MethodGraph.Compiler.ForDeclaredMethods.INSTANCE)) |
| 135 | + new ByteBuddy() |
| 136 | + .with(MethodGraph.Compiler.ForDeclaredMethods.INSTANCE) |
| 137 | + .with(VisibilityBridgeStrategy.Default.NEVER) |
| 138 | + .with(InstrumentedType.Factory.Default.FROZEN)) |
| 139 | + .with(AgentBuilder.TypeStrategy.Default.DECORATE) |
135 | 140 | .disableClassFormatChanges()
|
136 |
| - // disableClassFormatChanges sets type strategy to TypeStrategy.Default.REDEFINE_FROZEN |
137 |
| - // we'll wrap it with our own strategy |
138 |
| - .with(new SafeTypeStrategy(AgentBuilder.TypeStrategy.Default.REDEFINE_FROZEN)) |
139 | 141 | .with(AgentBuilder.RedefinitionStrategy.RETRANSFORMATION)
|
140 | 142 | .with(new RedefinitionDiscoveryStrategy())
|
141 | 143 | .with(AgentBuilder.DescriptionStrategy.Default.POOL_ONLY)
|
|
0 commit comments