diff --git a/tracker/tracker/CHANGELOG.md b/tracker/tracker/CHANGELOG.md index 3f26102af..ba51f47c1 100644 --- a/tracker/tracker/CHANGELOG.md +++ b/tracker/tracker/CHANGELOG.md @@ -1,3 +1,7 @@ +# 9.0.10 + +- added `excludedResourceUrls` to timings options to better sanitize network data + # 9.0.9 - Fix for `{disableStringDict: true}` behavior diff --git a/tracker/tracker/src/main/modules/timing.ts b/tracker/tracker/src/main/modules/timing.ts index 299db2221..46e7ab9a4 100644 --- a/tracker/tracker/src/main/modules/timing.ts +++ b/tracker/tracker/src/main/modules/timing.ts @@ -83,6 +83,7 @@ export interface Options { captureResourceTimings: boolean capturePageLoadTimings: boolean capturePageRenderTimings: boolean + excludedResourceUrls?: Array } export default function (app: App, opts: Partial): void { @@ -91,6 +92,7 @@ export default function (app: App, opts: Partial): void { captureResourceTimings: true, capturePageLoadTimings: true, capturePageRenderTimings: true, + excludedResourceUrls: [], }, opts, ) @@ -108,6 +110,12 @@ export default function (app: App, opts: Partial): void { if (resources !== null) { resources[entry.name] = entry.startTime + entry.duration } + + options.excludedResourceUrls?.forEach((url) => { + if (entry.name.startsWith(url)) { + return + } + }) app.send( ResourceTiming( entry.startTime + getTimeOrigin(),