make elasticsearch-* indy compatible (#11554)

This commit is contained in:
SylvainJuge 2024-06-14 14:20:22 +02:00 committed by GitHub
parent 4d3802a7ea
commit a1d1c411af
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 9 deletions

View File

@ -12,11 +12,13 @@ import static net.bytebuddy.matcher.ElementMatchers.not;
import com.google.auto.service.AutoService; import com.google.auto.service.AutoService;
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule; import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
import io.opentelemetry.javaagent.extension.instrumentation.internal.ExperimentalInstrumentationModule;
import java.util.List; import java.util.List;
import net.bytebuddy.matcher.ElementMatcher; import net.bytebuddy.matcher.ElementMatcher;
@AutoService(InstrumentationModule.class) @AutoService(InstrumentationModule.class)
public class ElasticsearchApiClientInstrumentationModule extends InstrumentationModule { public class ElasticsearchApiClientInstrumentationModule extends InstrumentationModule
implements ExperimentalInstrumentationModule {
public ElasticsearchApiClientInstrumentationModule() { public ElasticsearchApiClientInstrumentationModule() {
super("elasticsearch-api-client", "elasticsearch-api-client-7.16", "elasticsearch"); super("elasticsearch-api-client", "elasticsearch-api-client-7.16", "elasticsearch");
} }
@ -31,10 +33,8 @@ public class ElasticsearchApiClientInstrumentationModule extends Instrumentation
} }
@Override @Override
public boolean isIndyModule() { public String getModuleGroup() {
// java.lang.ClassCastException: class return "elasticsearch";
// io.opentelemetry.javaagent.shaded.instrumentation.elasticsearch.rest.internal.ElasticsearchEndpointDefinition cannot be cast to class io.opentelemetry.javaagent.shaded.instrumentation.elasticsearch.rest.internal.ElasticsearchEndpointDefinition (io.opentelemetry.javaagent.shaded.instrumentation.elasticsearch.rest.internal.ElasticsearchEndpointDefinition is in unnamed module of loader io.opentelemetry.javaagent.tooling.instrumentation.indy.InstrumentationModuleClassLoader @6baee63b; io.opentelemetry.javaagent.shaded.instrumentation.elasticsearch.rest.internal.ElasticsearchEndpointDefinition is in unnamed module of loader 'app')
return false;
} }
@Override @Override

View File

@ -12,11 +12,13 @@ import static net.bytebuddy.matcher.ElementMatchers.not;
import com.google.auto.service.AutoService; import com.google.auto.service.AutoService;
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule; import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
import io.opentelemetry.javaagent.extension.instrumentation.internal.ExperimentalInstrumentationModule;
import java.util.List; import java.util.List;
import net.bytebuddy.matcher.ElementMatcher; import net.bytebuddy.matcher.ElementMatcher;
@AutoService(InstrumentationModule.class) @AutoService(InstrumentationModule.class)
public class ElasticsearchRest7InstrumentationModule extends InstrumentationModule { public class ElasticsearchRest7InstrumentationModule extends InstrumentationModule
implements ExperimentalInstrumentationModule {
public ElasticsearchRest7InstrumentationModule() { public ElasticsearchRest7InstrumentationModule() {
super("elasticsearch-rest", "elasticsearch-rest-7.0", "elasticsearch"); super("elasticsearch-rest", "elasticsearch-rest-7.0", "elasticsearch");
} }
@ -33,9 +35,8 @@ public class ElasticsearchRest7InstrumentationModule extends InstrumentationModu
} }
@Override @Override
public boolean isIndyModule() { public String getModuleGroup() {
// shares a virtual field with elasticsearch-api-client return "elasticsearch";
return false;
} }
@Override @Override