diff --git a/dev-packages/e2e-tests/test-applications/sveltekit-3/tests/tracing.server.test.ts b/dev-packages/e2e-tests/test-applications/sveltekit-3/tests/tracing.server.test.ts index 3e5d13e187e6..f92dfad104f4 100644 --- a/dev-packages/e2e-tests/test-applications/sveltekit-3/tests/tracing.server.test.ts +++ b/dev-packages/e2e-tests/test-applications/sveltekit-3/tests/tracing.server.test.ts @@ -26,7 +26,7 @@ test('server pageload request span has nested request span for sub request', asy const spans = getSegmentChildSpans(serverTraceSpans, serverSpan); - expect(spans).toHaveLength(6); + expect(spans).toHaveLength(7); expect(spans).toEqual( expect.arrayContaining([ @@ -102,6 +102,19 @@ test('server pageload request span has nested request span for sub request', asy 'http.route': { value: '/api/users', type: 'string' }, }), }), + + // sub request `+server` handler span (emitted by Kit since 3.1.0): + expect.objectContaining({ + name: 'sveltekit.endpoint', + status: 'ok', + attributes: expect.objectContaining({ + 'sentry.op': { value: 'function', type: 'string' }, + 'sentry.origin': { value: 'auto.function.sveltekit.endpoint', type: 'string' }, + 'sentry.description': { value: 'sveltekit.endpoint', type: 'string' }, + 'http.route': { value: '/api/users', type: 'string' }, + 'http.method': { value: 'GET', type: 'string' }, + }), + }), ]), ); }); diff --git a/packages/sveltekit/src/server-common/integrations/svelteKitSpans.ts b/packages/sveltekit/src/server-common/integrations/svelteKitSpans.ts index 3d48b7e80ea8..78081dfaacb4 100644 --- a/packages/sveltekit/src/server-common/integrations/svelteKitSpans.ts +++ b/packages/sveltekit/src/server-common/integrations/svelteKitSpans.ts @@ -84,6 +84,8 @@ function _getKitSpanOrigin(spanName: string | undefined): SpanOrigin | undefined return 'auto.function.sveltekit.load'; case 'sveltekit.form_action': return 'auto.function.sveltekit.action'; + case 'sveltekit.endpoint': + return 'auto.function.sveltekit.endpoint'; case 'sveltekit.remote.call': return 'auto.rpc.sveltekit.remote'; case 'sveltekit.handle.root': diff --git a/packages/sveltekit/test/server-common/integrations/svelteKitSpans.test.ts b/packages/sveltekit/test/server-common/integrations/svelteKitSpans.test.ts index 2c53de829a3e..5d8d2d7c0d69 100644 --- a/packages/sveltekit/test/server-common/integrations/svelteKitSpans.test.ts +++ b/packages/sveltekit/test/server-common/integrations/svelteKitSpans.test.ts @@ -56,6 +56,7 @@ describe('svelteKitSpansIntegration', () => { ['sveltekit.resolve', 'function', 'auto.http.sveltekit'], ['sveltekit.load', 'function', 'auto.function.sveltekit.load'], ['sveltekit.form_action', 'function', 'auto.function.sveltekit.action'], + ['sveltekit.endpoint', 'function', 'auto.function.sveltekit.endpoint'], ['sveltekit.remote.call', 'function', 'auto.rpc.sveltekit.remote'], ['sveltekit.handle.sequenced.0', 'function', 'auto.function.sveltekit.handle'], ['sveltekit.handle.sequenced.myHandler', 'function', 'auto.function.sveltekit.handle'], @@ -194,6 +195,7 @@ describe('svelteKitSpansIntegration', () => { ['sveltekit.resolve', 'function', 'auto.http.sveltekit'], ['sveltekit.load', 'function', 'auto.function.sveltekit.load'], ['sveltekit.form_action', 'function', 'auto.function.sveltekit.action'], + ['sveltekit.endpoint', 'function', 'auto.function.sveltekit.endpoint'], ['sveltekit.remote.call', 'function', 'auto.rpc.sveltekit.remote'], ['sveltekit.handle.sequenced.0', 'function', 'auto.function.sveltekit.handle'], ['sveltekit.handle.sequenced.myHandler', 'function', 'auto.function.sveltekit.handle'],