You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Today, we keep all finished spans in the span exporter and build the span tree from there to send the spans as a single transactionEvent.
With changes we did in the v8 cycle, we can actually simplify this a lot - we can simply ignore all non-root spans in the span exporter, and generate the transactionEvent payload (spans) via getSpanDescendants(rootSpan) - we already keep track of the children there, so we may as well use this.
With this, we can simplify the exporter code a lot, and also remove handling around memory leaks - no need to keep a list of child spans in the exporter and clean it up.
Initially, let's drop any child spans that are not finished - we may revisit this later, but this is the easiest thing for now.
The text was updated successfully, but these errors were encountered:
Today, we keep all finished spans in the span exporter and build the span tree from there to send the spans as a single transactionEvent.
With changes we did in the v8 cycle, we can actually simplify this a lot - we can simply ignore all non-root spans in the span exporter, and generate the transactionEvent payload (spans) via
getSpanDescendants(rootSpan)
- we already keep track of the children there, so we may as well use this.With this, we can simplify the exporter code a lot, and also remove handling around memory leaks - no need to keep a list of child spans in the exporter and clean it up.
Initially, let's drop any child spans that are not finished - we may revisit this later, but this is the easiest thing for now.
The text was updated successfully, but these errors were encountered: