end method
Marks this span finished.
Calling it twice keeps the first end time: the layer ends the span when the handler returns, and a handler that already ended it meant that time.
Implementation
void end({DateTime? at, SpanStatus? status}) {
if (status != null) this.status = status;
endedAt ??= at ?? DateTime.now().toUtc();
}