in sdk/src/Core/AWSXRayRecorderImpl.cs [796:824]
protected void ProcessEndSubsegment(DateTime? timestamp = null)
{
var subsegment = PrepEndSubsegment();
if (subsegment == null)
{
return;
}
if (timestamp == null)
{
subsegment.SetEndTimeToNow();
}
else
{
subsegment.SetEndTime(timestamp.Value);
}
// Check emittable
if (subsegment.IsEmittable())
{
// Emit
Emitter.Send(subsegment.RootSegment);
}
else if (StreamingStrategy.ShouldStream(subsegment))
{
StreamingStrategy.Stream(subsegment.RootSegment, Emitter);
}
}