in lib/skywalking/tracing_context.lua [184:200]
function _M.drainAfterFinished(tracingContext)
if tracingContext.is_noop then
return false, nil
end
if tracingContext.internal.active_count ~= 0 then
return false, nil
else
local segment = Util.tablepool_fetch()
segment.trace_id = tracingContext.trace_id
segment.segment_id = tracingContext.segment_id
segment.service = tracingContext.service
segment.service_instance = tracingContext.service_instance
segment.spans = tracingContext.internal.finished_spans
return true, segment
end
end