Skip to content

Commit d98ac5d

Browse files
0CaloriesmydeaAbhiPrasad
authored
feat(tracing): Do not create interactions if navigation or pageload transaction active (#7614)
Co-authored-by: Francesco Novy <[email protected]> Co-authored-by: Abhijeet Prasad <[email protected]>
1 parent e055f27 commit d98ac5d

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

packages/tracing-internal/src/browser/browsertracing.ts

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
/* eslint-disable max-lines */
22
import type { Hub, IdleTransaction } from '@sentry/core';
3-
import { addTracingExtensions, extractTraceparentData, startIdleTransaction, TRACING_DEFAULTS } from '@sentry/core';
3+
import {
4+
addTracingExtensions,
5+
extractTraceparentData,
6+
getActiveTransaction,
7+
startIdleTransaction,
8+
TRACING_DEFAULTS,
9+
} from '@sentry/core';
410
import type { EventProcessor, Integration, Transaction, TransactionContext, TransactionSource } from '@sentry/types';
511
import { baggageHeaderToDynamicSamplingContext, getDomElement, logger } from '@sentry/utils';
612

@@ -327,8 +333,17 @@ export class BrowserTracing implements Integration {
327333
let inflightInteractionTransaction: IdleTransaction | undefined;
328334
const registerInteractionTransaction = (): void => {
329335
const { idleTimeout, finalTimeout, heartbeatInterval } = this.options;
330-
331336
const op = 'ui.action.click';
337+
338+
const currentTransaction = getActiveTransaction();
339+
if (currentTransaction && currentTransaction.op && ['navigation', 'pageload'].includes(currentTransaction.op)) {
340+
__DEBUG_BUILD__ &&
341+
logger.warn(
342+
`[Tracing] Did not create ${op} transaction because a pageload or navigation transaction is in progress.`,
343+
);
344+
return undefined;
345+
}
346+
332347
if (inflightInteractionTransaction) {
333348
inflightInteractionTransaction.setFinishReason('interactionInterrupted');
334349
inflightInteractionTransaction.finish();

0 commit comments

Comments
 (0)