diff --git a/CHANGELOG.md b/CHANGELOG.md index 496a2f1cd8..178a4e3596 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,10 @@ ## Unreleased +### Changes + +- Remove the undocumented `maxTransactionDurationExceeded` span attribute; use the `deadline_exceeded` span status to filter timed-out transactions instead ([#6820](https://github.com/getsentry/sentry-react-native/pull/6820)) + ### Fixes - Fix stale `turbo_module.*` tags on Android native crashes ([#6823](https://github.com/getsentry/sentry-react-native/pull/6823)) diff --git a/packages/core/src/js/tracing/onSpanEndUtils.ts b/packages/core/src/js/tracing/onSpanEndUtils.ts index aa61b08735..5f7e583946 100644 --- a/packages/core/src/js/tracing/onSpanEndUtils.ts +++ b/packages/core/src/js/tracing/onSpanEndUtils.ts @@ -92,8 +92,6 @@ export const adjustTransactionDuration = (client: Client, span: Span, maxDuratio if (isOutdatedTransaction) { span.setStatus({ code: SPAN_STATUS_ERROR, message: 'deadline_exceeded' }); - // TODO: check where was used, might be possible to delete - span.setAttribute('maxTransactionDurationExceeded', 'true'); } }); }; diff --git a/packages/core/test/tracing/adjustTransactionDuration.test.ts b/packages/core/test/tracing/adjustTransactionDuration.test.ts index 88ecf9836d..9dab75e9b3 100644 --- a/packages/core/test/tracing/adjustTransactionDuration.test.ts +++ b/packages/core/test/tracing/adjustTransactionDuration.test.ts @@ -38,7 +38,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 120); expect(spanToJSON(span).status).toBe('deadline_exceeded'); - expect(spanToJSON(span).data).toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('does not mark span as deadline_exceeded when duration is within maxDurationMs', () => { @@ -53,7 +52,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 30); expect(spanToJSON(span).status).not.toBe('deadline_exceeded'); - expect(spanToJSON(span).data).not.toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('does not mark span as deadline_exceeded when duration equals maxDurationMs exactly', () => { @@ -68,7 +66,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 60); expect(spanToJSON(span).status).not.toBe('deadline_exceeded'); - expect(spanToJSON(span).data).not.toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('marks span as deadline_exceeded when duration is negative', () => { @@ -83,7 +80,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp - 10); expect(spanToJSON(span).status).toBe('deadline_exceeded'); - expect(spanToJSON(span).data).toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('correctly handles maxDurationMs in milliseconds not seconds', () => { @@ -99,7 +95,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 601); expect(spanToJSON(span).status).toBe('deadline_exceeded'); - expect(spanToJSON(span).data).toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('does not mark span when duration is 599 seconds with 600_000ms max', () => { @@ -115,7 +110,6 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 599); expect(spanToJSON(span).status).not.toBe('deadline_exceeded'); - expect(spanToJSON(span).data).not.toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); it('does not affect spans from other transactions', () => { @@ -153,6 +147,5 @@ describe('adjustTransactionDuration', () => { span.end(startTimestamp + 1); expect(spanToJSON(span).status).toBe('deadline_exceeded'); - expect(spanToJSON(span).data).toMatchObject({ maxTransactionDurationExceeded: 'true' }); }); });