File tree 2 files changed +17
-5
lines changed
instrumentation/aws-sdk/aws-sdk-2.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/awssdk/v2_2
2 files changed +17
-5
lines changed Original file line number Diff line number Diff line change 12
12
import io .opentelemetry .javaagent .extension .instrumentation .InstrumentationModule ;
13
13
import io .opentelemetry .javaagent .extension .instrumentation .TypeInstrumentation ;
14
14
import io .opentelemetry .javaagent .extension .instrumentation .TypeTransformer ;
15
+ import io .opentelemetry .javaagent .extension .instrumentation .internal .ExperimentalInstrumentationModule ;
15
16
import java .util .List ;
16
17
import net .bytebuddy .description .type .TypeDescription ;
17
18
import net .bytebuddy .matcher .ElementMatcher ;
18
19
19
- abstract class AbstractAwsSdkInstrumentationModule extends InstrumentationModule {
20
+ abstract class AbstractAwsSdkInstrumentationModule extends InstrumentationModule
21
+ implements ExperimentalInstrumentationModule {
20
22
21
23
protected AbstractAwsSdkInstrumentationModule (String additionalInstrumentationName ) {
22
24
super ("aws-sdk" , "aws-sdk-2.2" , additionalInstrumentationName );
23
25
}
24
26
25
27
@ Override
26
- public boolean isHelperClass ( String className ) {
27
- return className . startsWith ( "io.opentelemetry.contrib.awsxray." ) ;
28
+ public String getModuleGroup ( ) {
29
+ return "aws-sdk-v2" ;
28
30
}
29
31
30
32
@ Override
31
- public boolean isIndyModule ( ) {
32
- return false ;
33
+ public boolean isHelperClass ( String className ) {
34
+ return className . startsWith ( "io.opentelemetry.contrib.awsxray." ) ;
33
35
}
34
36
35
37
@ Override
Original file line number Diff line number Diff line change 10
10
import io .opentelemetry .javaagent .extension .instrumentation .HelperResourceBuilder ;
11
11
import io .opentelemetry .javaagent .extension .instrumentation .InstrumentationModule ;
12
12
import io .opentelemetry .javaagent .extension .instrumentation .TypeTransformer ;
13
+ import io .opentelemetry .javaagent .extension .instrumentation .internal .injection .ClassInjector ;
14
+ import io .opentelemetry .javaagent .extension .instrumentation .internal .injection .InjectionMode ;
13
15
14
16
@ AutoService (InstrumentationModule .class )
15
17
public class AwsSdkInstrumentationModule extends AbstractAwsSdkInstrumentationModule {
@@ -26,6 +28,14 @@ public void registerHelperResources(HelperResourceBuilder helperResourceBuilder)
26
28
helperResourceBuilder .register ("software/amazon/awssdk/global/handlers/execution.interceptors" );
27
29
}
28
30
31
+ @ Override
32
+ public void injectClasses (ClassInjector injector ) {
33
+ injector
34
+ .proxyBuilder (
35
+ "io.opentelemetry.instrumentation.awssdk.v2_2.autoconfigure.TracingExecutionInterceptor" )
36
+ .inject (InjectionMode .CLASS_ONLY );
37
+ }
38
+
29
39
@ Override
30
40
void doTransform (TypeTransformer transformer ) {
31
41
// Nothing to transform, this type instrumentation is only used for injecting resources.
You can’t perform that action at this time.
0 commit comments