From 666674327f009e9b1013218fc384f193b64c6997 Mon Sep 17 00:00:00 2001 From: Elizabeth Hunt Date: Sun, 14 Dec 2025 22:39:18 -0800 Subject: Adds unit tests --- lib/trace/metric/trace.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'lib/trace/metric') diff --git a/lib/trace/metric/trace.ts b/lib/trace/metric/trace.ts index b28d828..396bd9c 100644 --- a/lib/trace/metric/trace.ts +++ b/lib/trace/metric/trace.ts @@ -16,9 +16,16 @@ export class MetricsTrace implements ITrace { public traceScope(trace: MetricsTraceSupplier): MetricsTrace { const now = Date.now(); const metricsToTrace = (Array.isArray(trace) ? trace : [trace]).filter(isIMetric); - const initialTraces = new Map(metricsToTrace.map((metric) => [metric.name, now])); - return new MetricsTrace(this.metricConsumer, initialTraces, this.completedTraces); + // Inherit existing active traces across scopes. + const nextActiveTraces = new Map(this.activeTraces); + for (const metric of metricsToTrace) { + if (!nextActiveTraces.has(metric.name)) { + nextActiveTraces.set(metric.name, now); + } + } + + return new MetricsTrace(this.metricConsumer, nextActiveTraces, this.completedTraces); } public trace(metrics: MetricsTraceSupplier): MetricsTrace { -- cgit v1.2.3-70-g09d2