in xray/segment.go [506:521]
func (seg *Segment) flush() bool {
if (seg.openSegments == 0 && seg.EndTime > 0) || seg.ContextDone {
if seg.isOrphan() {
seg.Emitted = true
seg.emit()
} else if seg.parent != nil && seg.parent.Facade {
seg.Emitted = true
seg.beforeEmitSubsegment(seg.parent)
logger.Debugf("emit lambda subsegment named: %v", seg.Name)
seg.emit()
} else {
return false
}
}
return true
}