From 1730d495e5b9e23d029bbc815ec2c9340ba5df6a Mon Sep 17 00:00:00 2001 From: Francis Cao Date: Thu, 5 Mar 2026 10:23:00 -0800 Subject: [PATCH] fix performance reset bug --- src/queries/sql/reports/getPerformance.ts | 2 +- src/tracker/index.js | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/queries/sql/reports/getPerformance.ts b/src/queries/sql/reports/getPerformance.ts index 6a1c7a898..9aaaffd9d 100644 --- a/src/queries/sql/reports/getPerformance.ts +++ b/src/queries/sql/reports/getPerformance.ts @@ -138,7 +138,7 @@ async function clickhouseQuery( const chart = await rawQuery<{ t: string; p50: number; p75: number; p95: number }[]>( ` select - ${getDateSQL('created_at', 'minute', timezone)} t, + ${getDateSQL('created_at', unit, timezone)} t, quantile(0.5)(${metric}) as p50, quantile(0.75)(${metric}) as p75, quantile(0.95)(${metric}) as p95 diff --git a/src/tracker/index.js b/src/tracker/index.js index 9f3eede8f..e7c8da562 100644 --- a/src/tracker/index.js +++ b/src/tracker/index.js @@ -331,7 +331,17 @@ send({ ...getPayload(), ...metrics }, 'performance'); }; - flushPerformance = sendPerformance; + flushPerformance = () => { + sendPerformance(); + Object.keys(metrics).forEach(k => { + delete metrics[k]; + }); + clsValue = 0; + inpValue = 0; + sent = false; + if (timeoutId) clearTimeout(timeoutId); + timeoutId = setTimeout(sendPerformance, 10000); + }; timeoutId = setTimeout(sendPerformance, 10000); document.addEventListener('visibilitychange', () => {