You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Support for UDP transport of X-Ray traces is needed to support the X-Ray daemon.
Use Case
AWS Lambda provides a service-managed X-Ray daemon for batching X-Ray requests locally before forwarding them to the X-Ray service. The daemon listens on UDP port 2000 but there is no X-Ray UDP trace client. Therefore there is no way to leverage the local X-Ray daemon using this SDK.
Using the existing X-Ray client (HTTPS), it can take 40ms to 3000ms+ for each request (default Lambda timeout kill process at this point). Latency is highest for the initial request. The latency introduced by the HTTPS X-Ray client makes it unusable in Lambda functions. An extreme case of measuring a thing, altering a thing.
A workaround is to open a UDP socket bound to 0.0.0.0:0 and send to the address found in the AWS_XRAY_DAEMON_ADDRESS env var. For comparison, sending via a UDP socket takes less than 1ms.
Proposed Solution
Provide a UDP-specific client for sending trace data.
Other Information
No response
Acknowledgements
I may be able to implement this feature request
This feature might incur a breaking change
A note for the community
Community Note
Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue, please leave a comment
The text was updated successfully, but these errors were encountered:
In the meantime if anyone needs that (like I do) - I'm using https://github.com/softprops/xray ; it requires custom binding unfortunately, as it only offers data structures and UDP client itself but… works.
Describe the feature
Support for UDP transport of X-Ray traces is needed to support the X-Ray daemon.
Use Case
AWS Lambda provides a service-managed X-Ray daemon for batching X-Ray requests locally before forwarding them to the X-Ray service. The daemon listens on UDP port 2000 but there is no X-Ray UDP trace client. Therefore there is no way to leverage the local X-Ray daemon using this SDK.
Using the existing X-Ray client (HTTPS), it can take 40ms to 3000ms+ for each request (default Lambda timeout kill process at this point). Latency is highest for the initial request. The latency introduced by the HTTPS X-Ray client makes it unusable in Lambda functions. An extreme case of measuring a thing, altering a thing.
A workaround is to open a UDP socket bound to
0.0.0.0:0
and send to the address found in theAWS_XRAY_DAEMON_ADDRESS
env var. For comparison, sending via a UDP socket takes less than 1ms.Proposed Solution
Provide a UDP-specific client for sending trace data.
Other Information
No response
Acknowledgements
A note for the community
Community Note
The text was updated successfully, but these errors were encountered: