New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jaeger exporter creates too big UDP packets #2465
Comments
The exporter already has some logic that attempts to ensure a transmission will not exceed the UDP max packet size. It looks like there may be some serialized data not accounted for in this calculation. |
I've done some more digging and in the original jaeger-client-go where this jaeger exporter is based on, they compensate with an extra 70 bytes. https://github.com/jaegertracing/jaeger-client-go/blob/master/transport_udp.go
I see no similar compensation happening in the exporter of this library. Based on the quote, I believe we are seeing this error due to our high number of small spans which causes the length encoding being longer than normal. |
We started using the new Jaeger agent UDP exporter from the latest 'main' commit which contains the fix from this pull request. Even with this fix, the problem still occurs:
It seems that the |
Description
Jaeger exporter logs errors like these: 'data does not fit within one UDP packet; size 65006, max 65000, spans 440'. This leads to spans missing from our traces.
Environment
go.opentelemetry.io/otel v1.3.0
go.opentelemetry.io/otel/exporters/jaeger v1.3.0
go.opentelemetry.io/otel/trace v1.3.0
Steps To Reproduce
Expected behavior
Jaeger exporter does not create UDP packets that are too big.
The text was updated successfully, but these errors were encountered: