Reputation: 177
I'm trying to write data to the awsxrayreceiver. The data is from the trace segment.
Here are the steps that I did:
[]byte
But I'm getting some errors when sending data. The UDP port is already accessible.
{"kind": "receiver", "name": "awsxray", "pipeline": "traces", "error": "unable to split incoming data as header and segment, incoming bytes: [88]"}
{"kind": "receiver", "name": "awsxray", "pipeline": "traces", "error": "read from UDP socket: read udp [::]:2000: use of closed network connection"}
Even tried to check if the connection will succeed.
nc -vzu ip_address 2000
Result: Connection to ip_address 2000 port [udp/*] succeeded!
Is there something wrong with what I'm doing?
Upvotes: 1
Views: 1359
Reputation: 81
The first issue is likely due to an error occurring while splitting the header and body due to a missing separator character. The error is coming from this function that separates the X-Ray segment header and body using a newline character as the separator. It seems the error may be caused by incorrectly formatted data being sent to the X-Ray receiver (see these tests for an example).
The second error is a network error that can occur while reading from the UDP poller. There may be multiple reasons behind this issue, but perhaps ensure that the connection is not being closed early or before all the data is sent to the receiver.
Upvotes: 1