Skip to content

Commit 9d4bde1

Browse files
committed
Don't depend on grpc stubs
1 parent 62484da commit 9d4bde1

File tree

2 files changed

+15
-22
lines changed

2 files changed

+15
-22
lines changed

exporters/otlp/all/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ dependencies {
2626

2727
testImplementation(project(":exporters:otlp:testing-internal"))
2828
testImplementation("com.linecorp.armeria:armeria-junit5")
29-
implementation("com.linecorp.armeria:armeria-grpc")
29+
testImplementation("com.linecorp.armeria:armeria-grpc-protocol")
3030
testImplementation("io.grpc:grpc-stub")
3131

3232
jmhImplementation(project(":sdk:testing"))

exporters/otlp/all/src/test/java/io/opentelemetry/exporter/otlp/metrics/OtlpGrpcMetricExporterBuilderTest.java

Lines changed: 14 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919
import static org.mockito.Mockito.when;
2020

2121
import com.linecorp.armeria.server.ServerBuilder;
22-
import com.linecorp.armeria.server.grpc.GrpcService;
22+
import com.linecorp.armeria.server.ServiceRequestContext;
23+
import com.linecorp.armeria.server.grpc.protocol.AbstractUnaryGrpcService;
2324
import com.linecorp.armeria.server.logging.LoggingService;
2425
import com.linecorp.armeria.testing.junit5.server.ServerExtension;
25-
import io.grpc.stub.StreamObserver;
2626
import io.opentelemetry.api.GlobalOpenTelemetry;
2727
import io.opentelemetry.api.OpenTelemetry;
2828
import io.opentelemetry.api.metrics.LongCounter;
@@ -31,9 +31,7 @@
3131
import io.opentelemetry.api.metrics.MeterProvider;
3232
import io.opentelemetry.api.trace.TracerProvider;
3333
import io.opentelemetry.context.propagation.ContextPropagators;
34-
import io.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest;
3534
import io.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse;
36-
import io.opentelemetry.proto.collector.metrics.v1.MetricsServiceGrpc;
3735
import io.opentelemetry.sdk.common.InstrumentationScopeInfo;
3836
import io.opentelemetry.sdk.common.export.MemoryMode;
3937
import io.opentelemetry.sdk.metrics.SdkMeterProvider;
@@ -45,6 +43,8 @@
4543
import io.opentelemetry.sdk.metrics.internal.data.ImmutableGaugeData;
4644
import io.opentelemetry.sdk.resources.Resource;
4745
import java.util.Collection;
46+
import java.util.concurrent.CompletableFuture;
47+
import java.util.concurrent.CompletionStage;
4848
import java.util.concurrent.TimeUnit;
4949
import java.util.concurrent.atomic.AtomicReference;
5050
import java.util.function.Supplier;
@@ -72,23 +72,16 @@ class OtlpGrpcMetricExporterBuilderTest {
7272
@Override
7373
protected void configure(ServerBuilder sb) {
7474
sb.service(
75-
GrpcService.builder()
76-
.addService(
77-
new MetricsServiceGrpc.MetricsServiceImplBase() {
78-
@Override
79-
public void export(
80-
ExportMetricsServiceRequest request,
81-
StreamObserver<
82-
io.opentelemetry.proto.collector.metrics.v1
83-
.ExportMetricsServiceResponse>
84-
responseObserver) {
85-
responseObserver.onNext(
86-
ExportMetricsServiceResponse.getDefaultInstance());
87-
responseObserver.onCompleted();
88-
responseObserver.onCompleted();
89-
}
90-
})
91-
.build());
75+
"/opentelemetry.proto.collector.metrics.v1.MetricsService/Export",
76+
new AbstractUnaryGrpcService() {
77+
@Override
78+
protected CompletionStage<byte[]> handleMessage(
79+
ServiceRequestContext ctx, byte[] message) {
80+
return CompletableFuture.completedFuture(
81+
ExportMetricsServiceResponse.getDefaultInstance().toByteArray());
82+
}
83+
});
84+
sb.http(0);
9285
sb.decorator(LoggingService.newDecorator());
9386
}
9487
};

0 commit comments

Comments
 (0)