Skip to content

Commit 698edcc

Browse files
msonnbclaude
andauthored
fix(browser)!: Use snake_case consistently for ops (#23100)
Some `browser.*` and `ui.*` ops used inconsistent casing, this aligns them to snake_case as set by conventions. | Before | Now | | --- | --- | | `ui.long-task` | `ui.long_task` | | `ui.long-animation-frame` | `ui.long_animation_frame` | | `browser.unloadEvent` | `browser.unload_event` | | `browser.domContentLoadedEvent` | `browser.dom_content_loaded_event` | | `browser.loadEvent` | `browser.load_event` | | `browser.TLS/SSL` | `browser.tls_ssl` | | `browser.DNS` | `browser.dns` | | `resouce.script` (typo) | `resource.script` | --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 6a35f85 commit 698edcc

21 files changed

Lines changed: 59 additions & 57 deletions

File tree

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/interactions-streamed/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ sentryTest('captures streamed interaction span tree. @firefox', async ({ browser
123123
trace_id: pageloadSpan.trace_id, // same trace id as pageload
124124
});
125125

126-
const loAFSpans = interactionSpanTree.filter(span => getSpanOp(span)?.startsWith('ui.long-animation-frame'));
126+
const loAFSpans = interactionSpanTree.filter(span => getSpanOp(span)?.startsWith('ui.long_animation_frame'));
127127
expect(loAFSpans).toHaveLength(browserName === 'chromium' ? 1 : 0);
128128

129129
const interactionSpan = interactionSpanTree.find(span => getSpanOp(span) === 'ui.interaction.click');

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/interactions/test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ sentryTest('should capture interaction transaction. @firefox', async ({ browserN
3333
expect(eventData.platform).toBe('javascript');
3434
expect(eventData.type).toBe('transaction');
3535

36-
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long-animation-frame'));
36+
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long_animation_frame'));
3737
expect(spans).toHaveLength(1);
3838

3939
const interactionSpan = spans![0];
@@ -64,7 +64,7 @@ sentryTest(
6464
await page.waitForTimeout(1000);
6565
await page.locator('[data-test-id=interaction-button]').click();
6666
const envelope = await envelopePromise;
67-
const spans = envelope[0].spans?.filter(span => !span.op?.startsWith('ui.long-animation-frame'));
67+
const spans = envelope[0].spans?.filter(span => !span.op?.startsWith('ui.long_animation_frame'));
6868
expect(spans).toHaveLength(1);
6969
}
7070
},
@@ -91,7 +91,7 @@ sentryTest(
9191
const envelopes = await envelopePromise;
9292
expect(envelopes).toHaveLength(1);
9393
const eventData = envelopes[0];
94-
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long-animation-frame'));
94+
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long_animation_frame'));
9595
expect(spans).toHaveLength(1);
9696

9797
const interactionSpan = spans![0];
@@ -122,7 +122,7 @@ sentryTest(
122122
expect(envelopes).toHaveLength(1);
123123

124124
const eventData = envelopes[0];
125-
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long-animation-frame'));
125+
const spans = eventData.spans?.filter(span => !span.op?.startsWith('ui.long_animation_frame'));
126126
expect(spans).toHaveLength(1);
127127

128128
const interactionSpan = spans![0];

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-animation-frame-before-navigation-streamed/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ sentryTest(
1919

2020
const spans = await navigationSpansPromise;
2121

22-
const loafSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long-animation-frame'));
22+
const loafSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long_animation_frame'));
2323
expect(loafSpans).toHaveLength(0);
2424
},
2525
);

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-animation-frame-before-navigation/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ sentryTest(
2323

2424
expect(navigationTransactionEvent.contexts?.trace?.op).toBe('navigation');
2525

26-
const loafSpans = navigationTransactionEvent.spans?.filter(s => s.op?.startsWith('ui.long-animation-frame'));
26+
const loafSpans = navigationTransactionEvent.spans?.filter(s => s.op?.startsWith('ui.long_animation_frame'));
2727

2828
expect(loafSpans?.length).toEqual(0);
2929
},

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-animation-frame-enabled-streamed/test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ sentryTest(
2525
const spans = await spansPromise;
2626
const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload')!;
2727

28-
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long-animation-frame'));
28+
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long_animation_frame'));
2929

3030
expect(uiSpans.length).toBeGreaterThanOrEqual(1);
3131

@@ -45,7 +45,7 @@ sentryTest(
4545
value: 'https://sentry-test-site.example/path/to/script.js',
4646
},
4747
'browser.script.invoker_type': { type: 'string', value: 'classic-script' },
48-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long-animation-frame' },
48+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long_animation_frame' },
4949
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: { type: 'string', value: 'auto.ui.browser.metrics' },
5050
}),
5151
}),
@@ -78,7 +78,7 @@ sentryTest('captures long animation frame span for event listener.', async ({ br
7878
const spans = await spansPromise;
7979
const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload')!;
8080

81-
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long-animation-frame'));
81+
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long_animation_frame'));
8282

8383
expect(uiSpans.length).toBeGreaterThanOrEqual(2);
8484

@@ -94,7 +94,7 @@ sentryTest('captures long animation frame span for event listener.', async ({ br
9494
'browser.script.invoker': { type: 'string', value: 'BUTTON#clickme.onclick' },
9595
'browser.script.invoker_type': { type: 'string', value: 'event-listener' },
9696
'code.filepath': { type: 'string', value: 'https://sentry-test-site.example/path/to/script.js' },
97-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long-animation-frame' },
97+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long_animation_frame' },
9898
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: { type: 'string', value: 'auto.ui.browser.metrics' },
9999
}),
100100
}),

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-animation-frame-enabled/test.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ sentryTest(
2727

2828
const eventData = await promise;
2929

30-
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long-animation-frame'));
30+
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long_animation_frame'));
3131

3232
expect(uiSpans?.length).toBeGreaterThanOrEqual(1);
3333

@@ -36,15 +36,15 @@ sentryTest(
3636
)!;
3737
expect(topLevelUISpan).toEqual(
3838
expect.objectContaining({
39-
op: 'ui.long-animation-frame',
39+
op: 'ui.long_animation_frame',
4040
description: 'Main UI thread blocked',
4141
parent_span_id: eventData.contexts?.trace?.span_id,
4242
data: {
4343
'code.filepath': 'https://sentry-test-site.example/path/to/script.js',
4444
'browser.script.source_char_position': 0,
4545
'browser.script.invoker': 'https://sentry-test-site.example/path/to/script.js',
4646
'browser.script.invoker_type': 'classic-script',
47-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long-animation-frame',
47+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long_animation_frame',
4848
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.browser.metrics',
4949
},
5050
}),
@@ -83,22 +83,22 @@ sentryTest(
8383

8484
const eventData = await promise;
8585

86-
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long-animation-frame')) || [];
86+
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long_animation_frame')) || [];
8787

8888
expect(uiSpans.length).toBeGreaterThanOrEqual(2);
8989

9090
const eventListenerUISpan = uiSpans.find(span => span.data['browser.script.invoker'] === 'BUTTON#clickme.onclick')!;
9191

9292
expect(eventListenerUISpan).toEqual(
9393
expect.objectContaining({
94-
op: 'ui.long-animation-frame',
94+
op: 'ui.long_animation_frame',
9595
description: 'Main UI thread blocked',
9696
parent_span_id: eventData.contexts?.trace?.span_id,
9797
data: {
9898
'browser.script.invoker': 'BUTTON#clickme.onclick',
9999
'browser.script.invoker_type': 'event-listener',
100100
'code.filepath': 'https://sentry-test-site.example/path/to/script.js',
101-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long-animation-frame',
101+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long_animation_frame',
102102
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.browser.metrics',
103103
},
104104
}),

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-tasks-and-animation-frame-enabled-streamed/test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ sentryTest(
2727
const spans = await spansPromise;
2828
const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload')!;
2929

30-
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long-animation-frame'));
30+
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long_animation_frame'));
3131

3232
expect(uiSpans.length).toBeGreaterThanOrEqual(1);
3333

@@ -47,7 +47,7 @@ sentryTest(
4747
value: 'https://sentry-test-site.example/path/to/script.js',
4848
},
4949
'browser.script.invoker_type': { type: 'string', value: 'classic-script' },
50-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long-animation-frame' },
50+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long_animation_frame' },
5151
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: { type: 'string', value: 'auto.ui.browser.metrics' },
5252
}),
5353
}),
@@ -80,7 +80,7 @@ sentryTest('captures long animation frame span for event listener.', async ({ br
8080
const spans = await spansPromise;
8181
const pageloadSpan = spans.find(s => getSpanOp(s) === 'pageload')!;
8282

83-
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long-animation-frame'));
83+
const uiSpans = spans.filter(s => getSpanOp(s)?.startsWith('ui.long_animation_frame'));
8484

8585
expect(uiSpans.length).toBeGreaterThanOrEqual(2);
8686

@@ -96,7 +96,7 @@ sentryTest('captures long animation frame span for event listener.', async ({ br
9696
'browser.script.invoker': { type: 'string', value: 'BUTTON#clickme.onclick' },
9797
'browser.script.invoker_type': { type: 'string', value: 'event-listener' },
9898
'code.filepath': { type: 'string', value: 'https://sentry-test-site.example/path/to/script.js' },
99-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long-animation-frame' },
99+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: { type: 'string', value: 'ui.long_animation_frame' },
100100
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: { type: 'string', value: 'auto.ui.browser.metrics' },
101101
}),
102102
}),

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-tasks-and-animation-frame-enabled/test.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ sentryTest(
2929

3030
const eventData = await promise;
3131

32-
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long-animation-frame'));
32+
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long_animation_frame'));
3333

3434
expect(uiSpans?.length).toBeGreaterThanOrEqual(1);
3535

@@ -38,15 +38,15 @@ sentryTest(
3838
)!;
3939
expect(topLevelUISpan).toEqual(
4040
expect.objectContaining({
41-
op: 'ui.long-animation-frame',
41+
op: 'ui.long_animation_frame',
4242
description: 'Main UI thread blocked',
4343
parent_span_id: eventData.contexts?.trace?.span_id,
4444
data: {
4545
'code.filepath': 'https://sentry-test-site.example/path/to/script.js',
4646
'browser.script.source_char_position': 0,
4747
'browser.script.invoker': 'https://sentry-test-site.example/path/to/script.js',
4848
'browser.script.invoker_type': 'classic-script',
49-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long-animation-frame',
49+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long_animation_frame',
5050
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.browser.metrics',
5151
},
5252
}),
@@ -85,22 +85,22 @@ sentryTest(
8585

8686
const eventData = await promise;
8787

88-
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long-animation-frame')) || [];
88+
const uiSpans = eventData.spans?.filter(({ op }) => op?.startsWith('ui.long_animation_frame')) || [];
8989

9090
expect(uiSpans.length).toBeGreaterThanOrEqual(2);
9191

9292
const eventListenerUISpan = uiSpans.find(span => span.data['browser.script.invoker'] === 'BUTTON#clickme.onclick')!;
9393

9494
expect(eventListenerUISpan).toEqual(
9595
expect.objectContaining({
96-
op: 'ui.long-animation-frame',
96+
op: 'ui.long_animation_frame',
9797
description: 'Main UI thread blocked',
9898
parent_span_id: eventData.contexts?.trace?.span_id,
9999
data: {
100100
'browser.script.invoker': 'BUTTON#clickme.onclick',
101101
'browser.script.invoker_type': 'event-listener',
102102
'code.filepath': 'https://sentry-test-site.example/path/to/script.js',
103-
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long-animation-frame',
103+
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'ui.long_animation_frame',
104104
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.browser.metrics',
105105
},
106106
}),

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-tasks-before-navigation-streamed/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ sentryTest(
2323
const navigationSpan = spans.find(s => getSpanOp(s) === 'navigation');
2424
expect(navigationSpan).toBeDefined();
2525

26-
const longTaskSpans = spans.filter(s => getSpanOp(s) === 'ui.long-task');
26+
const longTaskSpans = spans.filter(s => getSpanOp(s) === 'ui.long_task');
2727
expect(longTaskSpans).toHaveLength(0);
2828
},
2929
);

dev-packages/browser-integration-tests/suites/tracing/browserTracingIntegration/long-tasks-before-navigation/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ sentryTest(
2424

2525
expect(navigationTransactionEvent.contexts?.trace?.op).toBe('navigation');
2626

27-
const longTaskSpans = navigationTransactionEvent?.spans?.filter(span => span.op === 'ui.long-task');
27+
const longTaskSpans = navigationTransactionEvent?.spans?.filter(span => span.op === 'ui.long_task');
2828
expect(longTaskSpans).toHaveLength(0);
2929
},
3030
);

0 commit comments

Comments
 (0)