Fix tracing-opentelemetry-deps dependency
Description
Environment
None
Gerrit Reviews
None
Release Notes Description
None
relates
Activity
Show:
Graham Pople January 2, 2024 at 1:49 PMEdited
Still seeing problems:
Exception in thread "grpc-default-executor-1" java.lang.NoClassDefFoundError: io/opentelemetry/instrumentation/api/instrumenter/rpc/RpcAttributesGetter
at com.couchbase.client.core.deps.io.opentelemetry.instrumentation.grpc.v1_6.GrpcTelemetry.builder(GrpcTelemetry.java:25)
at com.couchbase.client.core.deps.io.opentelemetry.instrumentation.grpc.v1_6.GrpcTelemetry.create(GrpcTelemetry.java:20)
at com.couchbase.client.tracing.opentelemetry.OpenTelemetryRequestTracer.registerGrpc(OpenTelemetryRequestTracer.java:170)
at com.couchbase.client.core.endpoint.ProtostellarEndpoint.channel(ProtostellarEndpoint.java:237)
at com.couchbase.client.core.endpoint.ProtostellarEndpoint.<init>(ProtostellarEndpoint.java:115)
at com.couchbase.client.core.endpoint.ProtostellarPool.<init>(ProtostellarPool.java:43)
at com.couchbase.client.core.CoreProtostellar.<init>(CoreProtostellar.java:103)
at com.couchbase.client.core.api.CoreCouchbaseOps.create(CoreCouchbaseOps.java:86)
at com.couchbase.client.java.AsyncCluster.<init>(AsyncCluster.java:233)
at com.couchbase.client.java.Cluster.<init>(Cluster.java:292)
at com.couchbase.client.java.Cluster.connect(Cluster.java:237)
at com.couchbase.utils.ClusterConnection.<init>(ClusterConnection.java:59)
at com.couchbase.PerformerService.clusterConnectionCreate(PerformerService.java:205)
at com.couchbase.client.protocol.PerformerServiceGrpc$MethodHandlers.invoke(PerformerServiceGrpc.java:2184)
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182)
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:355)
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:867)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.ClassNotFoundException: io.opentelemetry.instrumentation.api.instrumenter.rpc.RpcAttributesGetter
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 22 more
This class turns out to be in a different jar than the one I added. The full list of dependencies for io.opentelemetry.instrumentation:opentelemetry-grpc-1.6 is:
io.opentelemetry:opentelemetry-api
io.opentelemetry.instrumentation:opentelemetry-instrumentation-api
io.opentelemetry.instrumentation:opentelemetry-instrumentation-api-semconv
So, we should be able to add a dependency on the latter to get past this issue (as we are intentionally added all dependencies of io.opentelemetry.instrumentation:opentelemetry-grpc-1.6 to tracing-opentelemetry, following discussion here.
Unresolved
Pinned fields
Click on the next to a field label to start pinning.
Details
Details
Assignee
Graham Pople
Graham PopleReporter
Graham Pople
Graham PopleStory Points
1
Sprint
None
Fix versions
Priority
Instabug
Open Instabug
PagerDuty
PagerDuty Incident
PagerDuty

PagerDuty Incident
Sentry
Linked Issues
Sentry
Linked Issues
Zendesk Support
Linked Tickets
Zendesk Support

Linked Tickets
Created December 22, 2023 at 4:25 PM
Updated January 12, 2024 at 10:58 AM
Instabug
Suggested release note: