When spans end they are added to a First-In-First-Out (FIFO) queue and exported/shipped as a batch after an interval of time (default 5 seconds).
When it is time to export/ship the spans, they are collected from the queue, converted into the OpenTelemetry protobuf format and shipped as an HTTP request.
If an export request fails with a 3xx or a 5xx response code, the HTTP request is added to a FIFO retry queue with an increasing backoff.
Possible Cause of Missing Spans
You may notice spans missing from traces due to them being removed from the queue once the queue has reached max capacity.
ITTs are stored in a separate queue to prevent them being removed by less interesting transactions.