Lucas Rogerio Caetano Ferreira
Lucas Rogerio Caetano Ferreira
We are actually seeing this error as well in the OTEL collector side: `zapgrpc/zapgrpc.go:195 [core] [Server #1] grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport is closing"...
Don’t think that it will help as the PR is handling the shutdown, and those logs are happening during the app execution. Even increasing the timeout, and decreasing the batch...
Have been sniffing packets to see if there is any difference between OkHttp and Vert.x... the OkHttp client adds content-length, whereas Vert.x adds grpc-accept-encoding (OkHttp uses only accept-encoding) OkHttp: Vert.x:...
And here is a stack trace for one of those stream closed: ``` handle:340, VertxGrpcExporter$ClientRequestOnSuccessHandler$2 (io.quarkus.opentelemetry.runtime.exporter.otlp) handle:337, VertxGrpcExporter$ClientRequestOnSuccessHandler$2 (io.quarkus.opentelemetry.runtime.exporter.otlp) onFailure:117, FutureImpl$2 (io.vertx.core.impl.future) onFailure:268, FutureImpl$ListenerArray (io.vertx.core.impl.future) emitFailure:75, FutureBase (io.vertx.core.impl.future) tryFail:230, FutureImpl...
Don't think this is actually related to Quarkus Vert.x client implementation (there is a bug in the Quarkus Vert.x GRCP Exporter when reading the status and status message with the...
I might have found the issue, it might be related to connection pooling or the actually the lack of it, I will do some more tests tomorrow and if everything...
Hey @brunobat created a PR that fix the status/statusMessage parsing https://github.com/quarkusio/quarkus/pull/37091 ... I am still testing the other stuff that might (or not) fix the stream closed thing
After the changes above I am not seeing the `apgrpc/zapgrpc.go:195 [core] [Server #1] grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport is closing" {"grpc_log": true}` error in...
So, this is not a bug per se... we have link at build time enabled... so we won't allow incomplete class path... the thing is that the "generic" `io.opentelemetry.instrumentation.awssdk.v2_2.AwsSdkTelemetry` and...
So the flow is in your case: 1 - Tell to instrument SNS with OTEL (`quarkus.sns.telemetry.enabled=true`) 2 - `AmazonClientOpenTelemetryRecorder` for SNS will create the `AwsClientBuilder` setting `.addExecutionInterceptor(AwsSdkTelemetry.create(openTelemetry).newExecutionInterceptor())` 3 - `AwsSdkTelemetry...