opentelemetry-dotnet: Jaeger Exporter - UDP Packet size was 9886. Exception message: Message too long

Describe your environment. Describe any aspect of your environment relevant to the problem:

  • SDK version: all OTel packages 0.2.0-alpha.275
  • .NET runtime version: netcoreapp3.1
  • Platform and OS version: mac os

If you’re reporting a problem with a specific version of a library in this repo, please check whether the problem has been fixed on master.

Steps to reproduce.

  1. Strat app with JaegerExporter
  2. Add large tags to spans

What is the expected behavior? App running in any condition of Jaeger service

What is the actual behavior? Application crashed.

Additional context. Unhandled exception. OpenTelemetry.Exporter.Jaeger.Implementation.JaegerExporterException: Could not send 13 spans ---> Thrift.Transport.TTransportException: Cannot flush because of socket exception. UDP Packet size was 9886. Exception message: Message too long at OpenTelemetry.Exporter.Jaeger.Implementation.JaegerThriftClientTransport.FlushAsync(CancellationToken cancellationToken) at OpenTelemetry.Exporter.Jaeger.Implementation.EmitBatchArgs.WriteAsync(Int32 seqId, Byte[] processMessage, List1 spanMessages, TProtocol oprot, CancellationToken cancellationToken) at OpenTelemetry.Exporter.Jaeger.Implementation.JaegerUdpBatcher.SendAsync(Dictionary2 batches, CancellationToken cancellationToken) --- End of inner exception stack trace --- at OpenTelemetry.Exporter.Jaeger.Implementation.JaegerUdpBatcher.SendAsync(Dictionary2 batches, CancellationToken cancellationToken) at OpenTelemetry.Exporter.Jaeger.Implementation.JaegerUdpBatcher.FlushAsyncInternal(Boolean lockAlreadyHeld, CancellationToken cancellationToken) at OpenTelemetry.Exporter.Jaeger.Implementation.JaegerUdpBatcher.<.ctor>b__12_0(Object sender, ElapsedEventArgs args) at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__139_1(Object state) at System.Threading.QueueUserWorkItemCallbackDefaultContext.Execute() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() `

Data looks like: "Attributes": [ { "Key": "component", "Value": "sql" }, { "Key": "db.statement", "Value": "some long sql...." ...

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 16 (15 by maintainers)

Most upvoted comments