From c7df3228495853ea3ee10b9c957c83dd0af21375 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Tue, 16 Apr 2024 17:51:19 +0200 Subject: [PATCH] add nextjs 14.2.1 --- apps/nextjs-14_2_1/instrumentation.ts | 13 + apps/nextjs-14_2_1/next.config.mjs | 4 +- apps/nextjs-14_2_1/package.json | 2 +- apps/nextjs-14_2_1/sentry.server.config.ts | 9 - .../_api_test-error--event.json | 806 ++++++++++------ .../_api_test-error--transaction.json | 851 ++--------------- .../_api_test-error-manual--event.json | 605 ++++++------ .../_api_test-error-manual--transaction.json | 884 ++---------------- ...pi_test-local-variables-caught--event.json | 760 --------------- ...t-local-variables-caught--transaction.json | 166 ++-- ..._test-local-variables-uncaught--event.json | 745 --------------- ...local-variables-uncaught--transaction.json | 143 +-- .../_api_test-param-error_[param]--event.json | 792 ++++++++++------ ...test-param-error_[param]--transaction.json | 863 ++--------------- ...st-param-success_[param]--transaction.json | 154 +-- .../_api_test-success--transaction.json | 146 +-- ..._api_test-success-manual--transaction.json | 169 ++-- payload-files/readme.md | 1 + 18 files changed, 2061 insertions(+), 5052 deletions(-) create mode 100644 apps/nextjs-14_2_1/instrumentation.ts delete mode 100644 apps/nextjs-14_2_1/sentry.server.config.ts delete mode 100644 payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--event.json delete mode 100644 payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--event.json diff --git a/apps/nextjs-14_2_1/instrumentation.ts b/apps/nextjs-14_2_1/instrumentation.ts new file mode 100644 index 0000000..062ba35 --- /dev/null +++ b/apps/nextjs-14_2_1/instrumentation.ts @@ -0,0 +1,13 @@ +import * as Sentry from '@sentry/nextjs'; + +export function register() { + if (process.env.NEXT_RUNTIME === 'nodejs' || process.env.NEXT_RUNTIME === 'edge') { + Sentry.init({ + environment: 'qa', // dynamic sampling bias to keep transactions + dsn: process.env.E2E_TEST_DSN, + includeLocalVariables: true, + tunnel: `http://localhost:3031/`, // proxy server + tracesSampleRate: 1, + }); + } +} diff --git a/apps/nextjs-14_2_1/next.config.mjs b/apps/nextjs-14_2_1/next.config.mjs index c2daf40..2e1a77c 100644 --- a/apps/nextjs-14_2_1/next.config.mjs +++ b/apps/nextjs-14_2_1/next.config.mjs @@ -1,6 +1,8 @@ import { withSentryConfig } from '@sentry/nextjs'; /** @type {import('next').NextConfig} */ -const nextConfig = {}; +const nextConfig = { + experimental: { instrumentationHook: true }, +}; export default withSentryConfig(nextConfig); diff --git a/apps/nextjs-14_2_1/package.json b/apps/nextjs-14_2_1/package.json index 3fdfa6d..9b191b4 100644 --- a/apps/nextjs-14_2_1/package.json +++ b/apps/nextjs-14_2_1/package.json @@ -10,7 +10,7 @@ "lint": "next lint" }, "dependencies": { - "@sentry/nextjs": "7.110.1", + "@sentry/nextjs": "8.0.0-beta.1", "next": "14.2.1", "react": "^18", "react-dom": "^18" diff --git a/apps/nextjs-14_2_1/sentry.server.config.ts b/apps/nextjs-14_2_1/sentry.server.config.ts deleted file mode 100644 index 6660868..0000000 --- a/apps/nextjs-14_2_1/sentry.server.config.ts +++ /dev/null @@ -1,9 +0,0 @@ -import * as Sentry from '@sentry/nextjs'; - -Sentry.init({ - environment: 'qa', // dynamic sampling bias to keep transactions - dsn: process.env.E2E_TEST_DSN, - includeLocalVariables: true, - tunnel: `http://localhost:3031/`, // proxy server - tracesSampleRate: 1, -}); diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json index 28acad4..978c669 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json @@ -4,14 +4,9 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, - "sent_at": "[[ISODateString]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]" - } + "sent_at": "[[ISODateString]]" }, { "type": "event" @@ -21,31 +16,25 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" } ], @@ -79,17 +68,9 @@ "version": "v20.12.1" }, "trace": { - "data": { - "sentry.op": "http.server", - "sentry.origin": "auto.function.nextjs", - "sentry.sample_rate": 1, - "sentry.source": "route" - }, - "op": "http.server", - "origin": "auto.function.nextjs", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "trace_id": "[[ID2]]" + "parent_span_id": "[[ID2]]", + "span_id": "[[ID3]]", + "trace_id": "[[ID4]]" } }, "environment": "qa", @@ -103,15 +84,333 @@ }, "stacktrace": { "frames": [ + { + "colno": 17, + "context_line": " await this.render(req, res, pathname, query, parsedUrl, true);", + "filename": "[[FILENAME1]]", + "function": "NextNodeServer.handleCatchallRenderRequest", + "in_app": false, + "lineno": 272, + "module": "next.dist.server:next-server", + "post_context": [ + " return true;", + " } catch (err) {", + " if (err instanceof _baseserver.NoFallbackError) {", + " throw err;", + " }", + " try {", + " if (this.renderOpts.dev) {" + ], + "pre_context": [ + " await this.render404(req, res, parsedUrl);", + " return true;", + " }", + " delete query._nextBubbleNoFallback;", + " const handled = await this.handleApiRequest(req, res, query, match);", + " if (handled) return true;", + " }" + ] + }, + { + "colno": 25, + "context_line": " const payload = await fn(ctx);", + "filename": "[[FILENAME2]]", + "function": "DevServer.pipeImpl", + "in_app": false, + "lineno": 915, + "module": "next.dist.server:base-server", + "post_context": [ + " if (payload === null) {", + " return;", + " }", + " const { req, res } = ctx;", + " const originalStatus = res.statusCode;", + " const { body, type } = payload;", + " let { revalidate } = payload;" + ], + "pre_context": [ + " ...partialContext,", + " renderOpts: {", + " ...this.renderOpts,", + " supportsDynamicHTML: !isBotRequest,", + " isBot: !!isBotRequest", + " }", + " };" + ] + }, + { + "colno": 32, + "context_line": " const result = await this.renderPageComponent({", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderToResponseImpl", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " ...ctx,", + " pathname: match.definition.pathname,", + " renderOpts: {", + " ...ctx.renderOpts,", + " params: match.params", + " }", + " }, bubbleNoFallback);" + ], + "pre_context": [ + " for await (const match of this.matchers.matchAll(pathname, options)){", + " // when a specific invoke-output is meant to be matched", + " // ensure a prior dynamic route/page doesn't take priority", + " const invokeOutput = ctx.req.headers[\"x-invoke-output\"];", + " if (!this.minimalMode && typeof invokeOutput === \"string\" && (0, _utils1.isDynamicRoute)(invokeOutput || \"\") && invokeOutput {snip}", + " continue;", + " }" + ] + }, + { + "colno": 35, + "context_line": " return await this.renderToResponseWithComponents(ctx, result);", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderPageComponent", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " } catch (err) {", + " const isNoFallbackError = err instanceof NoFallbackError;", + " if (!isNoFallbackError || isNoFallbackError && bubbleNoFallback) {", + " throw err;", + " }", + " }", + " }" + ], + "pre_context": [ + " // Ensuring for loading page component routes is done via the matcher.", + " shouldEnsure: false", + " });", + " if (result) {", + " var _getTracer_getRootSpanAttributes;", + " (_getTracer_getRootSpanAttributes = (0, _tracer.getTracer)().getRootSpanAttributes()) == null ? void 0 : _getTracer_getRootSpanA {snip}", + " try {" + ] + }, + { + "colno": 41, + "context_line": " return (0, _tracer.getTracer)().trace(_constants1.BaseServerSpan.renderToResponseWithComponents, async ()=>this.renderToResponseWith {snip}", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderToResponseWithComponents", + "in_app": false, + "lineno": 997, + "module": "next.dist.server:base-server", + "post_context": [ + " }", + " stripInternalHeaders(req) {", + " // Skip stripping internal headers in test mode while the header stripping", + " // has been explicitly disabled. This allows tests to verify internal", + " // routing behavior.", + " if (process.env.__NEXT_TEST_MODE && process.env.__NEXT_NO_STRIP_INTERNAL_HEADERS === \"1\") {", + " return;" + ], + "pre_context": [ + " // `staticPaths` is intentionally set to `undefined` as it should've", + " // been caught when checking disk data.", + " staticPaths: undefined,", + " fallbackMode: typeof fallbackField === \"string\" ? \"static\" : fallbackField === null ? \"blocking\" : fallbackField", + " };", + " }", + " async renderToResponseWithComponents(requestContext, findComponentsResult) {" + ] + }, + { + "colno": 20, + "context_line": " return fn();", + "filename": "[[FILENAME3]]", + "function": "NextTracerImpl.trace", + "in_app": false, + "lineno": 105, + "module": "next.dist.server.lib.trace:tracer", + "post_context": [ + " }", + " // Trying to get active scoped span to assign parent. If option specifies parent span manually, will try to use it.", + " let spanContext = this.getSpanContext((options == null ? void 0 : options.parentSpan) ?? this.getActiveScopeSpan());", + " let isRootSpan = false;", + " if (!spanContext) {", + " spanContext = (context == null ? void 0 : context.active()) ?? ROOT_CONTEXT;", + " isRootSpan = true;" + ], + "pre_context": [ + " fn: fnOrEmpty,", + " options: {", + " ...fnOrOptions", + " }", + " };", + " const spanName = options.spanName ?? type;", + " if (!_constants.NextVanillaSpanAllowlist.includes(type) && process.env.NEXT_OTEL_VERBOSE !== \"1\" || options.hideSpan) {" + ] + }, + { + "colno": 121, + "context_line": "'{snip} ts1.BaseServerSpan.renderToResponseWithComponents, async ()=>this.renderToResponseWithComponentsImpl(requestContext, findComponentsResult));", + "filename": "[[FILENAME2]]", + "function": "?", + "in_app": false, + "lineno": 997, + "module": "next.dist.server:base-server", + "post_context": [ + " }", + " stripInternalHeaders(req) {", + " // Skip stripping internal headers in test mode while the header stripping", + " // has been explicitly disabled. This allows tests to verify internal", + " // routing behavior.", + " if (process.env.__NEXT_TEST_MODE && process.env.__NEXT_NO_STRIP_INTERNAL_HEADERS === \"1\") {", + " return;" + ], + "pre_context": [ + " // `staticPaths` is intentionally set to `undefined` as it should've", + " // been caught when checking disk data.", + " staticPaths: undefined,", + " fallbackMode: typeof fallbackField === \"string\" ? \"static\" : fallbackField === null ? \"blocking\" : fallbackField", + " };", + " }", + " async renderToResponseWithComponents(requestContext, findComponentsResult) {" + ] + }, + { + "colno": 53, + "context_line": " const cacheEntry = await this.responseCache.get(ssgCacheKey, async (hasResolved, previousCacheEntry, isRevalidating)=>{", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderToResponseWithComponentsImpl", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " const isProduction = !this.renderOpts.dev;", + " const didRespond = hasResolved || res.sent;", + " if (!staticPaths) {", + " ({ staticPaths, fallbackMode } = hasStaticPaths ? await this.getStaticPaths({", + " pathname,", + " requestHeaders: req.headers,", + " isAppPath," + ], + "pre_context": [ + " postponed: metadata.postponed,", + " headers,", + " status: isAppPath ? res.statusCode : undefined", + " },", + " revalidate: metadata.revalidate", + " };", + " };" + ] + }, + { + "colno": 26, + "context_line": " if (!key) return responseGenerator(false, null);", + "filename": "[[FILENAME4]]", + "function": "ResponseCache.get", + "in_app": false, + "lineno": 49, + "module": "next.dist.server.response-cache:index", + "post_context": [ + " const { incrementalCache, isOnDemandRevalidate = false } = context;", + " const response = await this.batcher.batch({", + " key,", + " isOnDemandRevalidate", + " }, async (cacheKey, resolve)=>{", + " var _this_previousCacheItem;", + " // We keep the previous cache entry around to leverage when the" + ], + "pre_context": [ + " // because we replace this.minimalMode to true in production bundles.", + " const minimalModeKey = \"minimalMode\";", + " this[minimalModeKey] = minimalMode;", + " }", + " async get(key, responseGenerator, context) {", + " // If there is no key for the cache, we can't possibly look this up in the", + " // cache so just return the result of the response generator." + ] + }, + { + "colno": 34, + "context_line": " const result = await doRender({", + "filename": "[[FILENAME2]]", + "function": "cacheEntry.responseCache.get.routeKind", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " // Only requests that aren't revalidating can be resumed. If we have the", + " // minimal postponed data, then we should resume the render with it.", + " postponed: !isOnDemandRevalidate && !isRevalidating && minimalPostponed ? minimalPostponed : undefined", + " });", + " if (!result) {", + " return null;", + " }" + ], + "pre_context": [ + " }", + " // Prevent caching this result", + " delete result.revalidate;", + " return result;", + " }", + " }", + " }" + ] + }, + { + "colno": 60, + "context_line": " const response = await routeModule.handle(request, context);", + "filename": "[[FILENAME2]]", + "function": "doRender", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " req.fetchMetrics = context.renderOpts.fetchMetrics;", + " const cacheTags = context.renderOpts.fetchTags;", + " // If the request is for a static response, we can cache it so long", + " // as it's not edge.", + " if (isSSG && process.env.NEXT_RUNTIME !== \"edge\") {", + " var _context_renderOpts_store;", + " const blob = await response.blob();" + ], + "pre_context": [ + " supportsDynamicHTML,", + " incrementalCache,", + " isRevalidate: isSSG", + " }", + " };", + " try {", + " const request = _nextrequest.NextRequestAdapter.fromBaseNextRequest(req, (0, _nextrequest.signalFromNodeResponse)(re {snip}" + ] + }, + { + "colno": "[[highNumber]]", + "context_line": "'{snip} handler\");return s}async handle(e,t){try{return await this.execute(e,t)}catch(t){let e=function(e){if(eg(e)){let t=eg(e)?e.digest.split(\";\", {snip}", + "filename": "[[FILENAME5]]", + "function": "e_.handle", + "in_app": false, + "lineno": 6, + "module": "next.dist.compiled.next-server:app-route.runtime.dev", + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], + "pre_context": [ + "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", + " * cookie", + " * Copyright(c) 2012-2014 Roman Shtylman", + " * Copyright(c) 2015 Douglas Christopher Wilson", + " * MIT Licensed" + ] + }, { "colno": "[[highNumber]]", "context_line": "'{snip} is.userland.fetchCache;let s=await this.actionAsyncStorage.run({isAppRoute:!0,isAction:function(e){let{isFetchAction:t,isURLEncodedAction:r, {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME5]]", "function": "e_.execute", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -122,7 +421,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME6]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -131,12 +430,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} Action:o,isFetchAction:a}}(e);return!!(t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n= {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME5]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -148,12 +449,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} },assetPrefix:(null==n?void 0:n.assetPrefix)||\"\"};return e.run(c,o,c)}};var I=r(\"./dist/compiled/react/index.js\"),U=r.n(I);let F=\"DYNAMIC_SE {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME5]]", "function": "Object.wrap", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -164,7 +467,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME6]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -173,12 +476,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} (t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n=>{var o;let s=n.isStaticGeneration;if( {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME5]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -190,12 +495,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} aftMode:r.isDraftMode,prerenderState:a};return r.store=s,e.run(s,n,s)}};function Y(){return new Response(null,{status:400})}function J(){ret {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME5]]", "function": "Object.wrap", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -206,7 +513,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME6]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -215,12 +522,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} SpanAttributes())||o.set(\"next.route\",l),(0,M.getTracer)().trace(d.runHandler,{spanName:`executing api route (app) ${l}`,attributes:{\"next.r {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME5]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -257,32 +566,61 @@ ] }, { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", + "colno": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "filename": "[[FILENAME7]]", "function": "ContextAPI.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 60, + "module": "@opentelemetry.api.build.src.api:context", + "post_context": [ + " }", + " /**", + " * Bind a context to a target function or event emitter", + " *", + " * @param context context to bind to the event emitter or function. Defaults to the currently active context", + " * @param target function or event emitter to bind", + " */" + ], + "pre_context": [ + " *", + " * @param context context to be active during function execution", + " * @param fn function to execute in a context", + " * @param thisArg optional receiver to be used for calling fn", + " * @param args optional arguments forwarded to fn", + " */", + " with(context, fn, thisArg, ...args) {" + ] + }, + { + "colno": 24, + "filename": "[[FILENAME8]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", + "colno": 40, + "filename": "[[FILENAME9]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME6]]", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 346, + "module": "node:async_hooks" }, { "colno": 103, "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", "filename": "[[FILENAME3]]", - "function": "", + "function": "?", "in_app": false, "lineno": 122, "module": "next.dist.server.lib.trace:tracer", @@ -306,54 +644,50 @@ ] }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} tiveSpan(e,t,r,n){const a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)}_getTracer(){if(this._delegate){return this. {snip}", - "filename": "[[FILENAME4]]", - "function": "ProxyTracer.startActiveSpan", + "colno": 76, + "filename": "[[FILENAME10]]", + "function": "Tracer.startActiveSpan", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} s.startSpan(e,o,u);const g=(0,a.setSpan)(u,l);return c.with(g,s,undefined,l)}}t.NoopTracer=NoopTracer;function isSpanContext(e){return typeo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopTracer.startActiveSpan", + "colno": 54, + "filename": "[[FILENAME11]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", + "colno": 24, + "filename": "[[FILENAME8]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", + "colno": 40, + "filename": "[[FILENAME9]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME6]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" }, { "colno": 36, "context_line": " const result = fn(span);", "filename": "[[FILENAME3]]", - "function": "", + "function": "?", "in_app": false, "lineno": 140, "module": "next.dist.server.lib.trace:tracer", @@ -379,12 +713,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} yncStorage:this.staticGenerationAsyncStorage});let o=await r(i,{params:t.params?function(e){let t={};for(let[r,n]of Object.entries(e))void 0 {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME5]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -395,159 +731,71 @@ }, { "colno": 10, - "filename": "[[FILENAME5]]", + "filename": "[[FILENAME12]]", "function": "Object.apply", "in_app": false, - "lineno": 66, + "lineno": 64, "module": "route.ts" }, { - "colno": 78, - "filename": "[[FILENAME6]]", + "colno": 52, + "filename": "[[FILENAME13]]", "function": "Object.apply", "in_app": false, - "lineno": 37, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME7]]", - "function": "withIsolationScope", - "in_app": false, - "lineno": 244, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", + "colno": 17, + "filename": "[[FILENAME14]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" }, { "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME7]]", - "function": "eval", - "in_app": false, - "lineno": 245, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 75, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 43, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "continueTrace", + "filename": "[[FILENAME15]]", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 289, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" }, { - "colno": 36, + "colno": 28, "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 290, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 83, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 50, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "startSpan", + "colno": 54, + "filename": "[[FILENAME11]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 36, + "colno": 24, "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 25, + "colno": 40, "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME6]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -555,90 +803,58 @@ }, { "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 66, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 18, - "filename": "[[FILENAME7]]", - "function": "withScope", - "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 28, "filename": "[[FILENAME8]]", - "function": "Hub.withScope", - "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 98, - "filename": "[[FILENAME10]]", "function": "eval", "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", + "colno": 24, + "filename": "[[FILENAME13]]", + "function": "eval", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 15, - "filename": "[[FILENAME10]]", - "function": "status.status", + "colno": 10, + "filename": "[[FILENAME13]]", + "function": "startOrUpdateSpan", "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 108, - "filename": "[[FILENAME6]]", + "colno": 41, + "filename": "[[FILENAME13]]", "function": "eval", "in_app": false, - "lineno": 60, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", + "filename": "[[FILENAME16]]", + "function": "Object.handleCallbackErrors", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" }, { - "colno": 44, - "filename": "[[FILENAME6]]", + "colno": 38, + "filename": "[[FILENAME13]]", "function": "eval", "in_app": false, - "lineno": 61, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 86, - "filename": "[[FILENAME5]]", + "filename": "[[FILENAME12]]", "function": "GET$1", "in_app": false, - "lineno": 24, + "lineno": 22, "module": "route.ts" } ] @@ -656,7 +872,7 @@ "accept": "*/*", "accept-encoding": "gzip, deflate, br", "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", + "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=7cd7e0c3aefe457d9b521e2faee8e354", "cache-control": "no-cache", "connection": "keep-alive", "host": "localhost:3030", @@ -665,7 +881,7 @@ "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", + "sentry-trace": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", "user-agent": "[[user-agent]]", "x-forwarded-for": "::ffff:127.0.0.1", "x-forwarded-host": "localhost:3030", @@ -681,35 +897,41 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-error" - }, "timestamp": "[[timestamp]]", - "transaction": " " + "transaction": "GET /api/test-error" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--transaction.json index 35524c7..751083e 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,312 +21,20 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error%2Froute.ts&methodName=GET%241&arguments=&lineNumber=24&column=86" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=61&column=44" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=60&column=108" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=startSpan&arguments=&lineNumber=101&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=50&column=83" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=290&column=12" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=continueTrace&arguments=&lineNumber=289&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=43&column=75" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=eval&arguments=&lineNumber=245&column=12" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withIsolationScope&arguments=&lineNumber=244&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=Object.apply&arguments=&lineNumber=37&column=78" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error%2Froute.ts&methodName=Object.apply&arguments=&lineNumber=66&column=10" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" } ], "contexts": { @@ -354,13 +62,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-error/route", + "http.status_code": 200, + "http.target": "/api/test-error", + "next.route": "/api/test-error/route", + "next.rsc": false, + "next.span_name": "GET /api/test-error/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -371,9 +98,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -381,30 +105,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -412,519 +112,98 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", "spans": [ { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error%2Froute.ts&methodName=GET%241&arguments=&lineNumber=24&column=86", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.route": "/api/test-error", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", + "description": "resolve page components", + "origin": "manual", "parent_span_id": "[[ID4]]", "span_id": "[[ID5]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=61&column=44", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.route": "/api/test-error/route", + "next.span_name": "executing api route (app) /api/test-error/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", + "description": "executing api route (app) /api/test-error/route", + "origin": "manual", "parent_span_id": "[[ID4]]", "span_id": "[[ID6]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", + "description": "start response", + "origin": "manual", "parent_span_id": "[[ID4]]", "span_id": "[[ID7]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=60&column=108", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID8]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID9]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID10]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID11]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID12]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID13]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID14]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID15]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID16]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=startSpan&arguments=&lineNumber=101&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID17]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=50&column=83", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID18]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=290&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID19]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=continueTrace&arguments=&lineNumber=289&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID20]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=43&column=75", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID21]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=eval&arguments=&lineNumber=245&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID22]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withIsolationScope&arguments=&lineNumber=244&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID23]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=Object.apply&arguments=&lineNumber=37&column=78", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID24]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error%2Froute.ts&methodName=Object.apply&arguments=&lineNumber=66&column=10", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID25]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID26]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID27]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID28]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID29]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID30]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID31]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID32]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" } ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-error" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-error", + "transaction": "GET /api/test-error/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json index e73730f..596c1da 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json @@ -4,14 +4,9 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, - "sent_at": "[[ISODateString]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]" - } + "sent_at": "[[ISODateString]]" }, { "type": "event" @@ -21,55 +16,49 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 373ms (2131 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 304ms (2133 modules)", "timestamp": "[[timestamp]]" } ], @@ -103,13 +92,9 @@ "version": "v20.12.1" }, "trace": { - "data": { - "sentry.origin": "manual" - }, - "origin": "manual", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "trace_id": "[[ID2]]" + "parent_span_id": "[[ID2]]", + "span_id": "[[ID3]]", + "trace_id": "[[ID4]]" } }, "environment": "qa", @@ -124,403 +109,471 @@ "stacktrace": { "frames": [ { - "colno": 14, + "colno": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", "filename": "[[FILENAME1]]", - "function": "AsyncLocalStorage.run", + "function": "ContextAPI.with", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, + "lineno": 60, + "module": "@opentelemetry.api.build.src.api:context", + "post_context": [ + " }", + " /**", + " * Bind a context to a target function or event emitter", + " *", + " * @param context context to bind to the event emitter or function. Defaults to the currently active context", + " * @param target function or event emitter to bind", + " */" + ], + "pre_context": [ + " *", + " * @param context context to be active during function execution", + " * @param fn function to execute in a context", + " * @param thisArg optional receiver to be used for calling fn", + " * @param args optional arguments forwarded to fn", + " */", + " with(context, fn, thisArg, ...args) {" + ] + }, + { + "colno": 24, "filename": "[[FILENAME2]]", - "function": "eval", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 12, + "colno": 40, "filename": "[[FILENAME3]]", - "function": "eval", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 245, - "module": "@sentry.core.esm:exports" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { - "colno": 75, + "colno": 14, "filename": "[[FILENAME4]]", - "function": "eval", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 43, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 346, + "module": "node:async_hooks" }, { - "colno": 70, + "colno": 103, + "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", "filename": "[[FILENAME5]]", - "function": "continueTrace", + "function": "?", + "in_app": false, + "lineno": 122, + "module": "next.dist.server.lib.trace:tracer", + "post_context": [ + " const startTime = \"performance\" in globalThis ? globalThis.performance.now() : undefined;", + " const onCleanup = ()=>{", + " rootSpanAttributesStore.delete(spanId);", + " if (startTime && process.env.NEXT_OTEL_PERFORMANCE_PREFIX && _constants.LogSpanAllowList.includes(type || \"\")) {", + " performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-${(type.split(\".\").pop() || \"\").replace(/[A-Z] {snip}", + " start: startTime,", + " end: performance.now()" + ], + "pre_context": [ + " }", + " const spanId = getSpanId();", + " options.attributes = {", + " \"next.span_name\": spanName,", + " \"next.span_type\": type,", + " ...options.attributes", + " };" + ] + }, + { + "colno": 76, + "filename": "[[FILENAME6]]", + "function": "Tracer.startActiveSpan", "in_app": false, - "lineno": 289, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" }, { - "colno": 36, - "filename": "[[FILENAME6]]", - "function": "runWithAsyncContext", + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 25, + "colno": 24, "filename": "[[FILENAME2]]", - "function": "Object.runWithAsyncContext", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 14, - "filename": "[[FILENAME1]]", - "function": "AsyncLocalStorage.run", + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { "colno": 14, - "filename": "[[FILENAME2]]", - "function": "eval", + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": 346, + "module": "node:async_hooks" }, { - "colno": 12, + "colno": 36, + "context_line": " const result = fn(span);", "filename": "[[FILENAME5]]", - "function": "eval", - "in_app": false, - "lineno": 290, - "module": "@sentry.core.esm.tracing:trace" + "function": "?", + "in_app": false, + "lineno": 140, + "module": "next.dist.server.lib.trace:tracer", + "post_context": [ + " if (isPromise(result)) {", + " // If there's error make sure it throws", + " return result.then((res)=>{", + " span.end();", + " // Need to pass down the promise result,", + " // it could be react stream response with error { error, stream }", + " return res;" + ], + "pre_context": [ + " if (isRootSpan) {", + " rootSpanAttributesStore.set(spanId, new Map(Object.entries(options.attributes ?? {})));", + " }", + " try {", + " if (fn.length > 1) {", + " return fn(span, (err)=>closeSpanWithError(span, err));", + " }" + ] + }, + { + "colno": "[[highNumber]]", + "context_line": "'{snip} yncStorage:this.staticGenerationAsyncStorage});let o=await r(i,{params:t.params?function(e){let t={};for(let[r,n]of Object.entries(e))void 0 {snip}", + "filename": "[[FILENAME8]]", + "function": "?", + "in_app": false, + "lineno": 6, + "module": "next.dist.compiled.next-server:app-route.runtime.dev", + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], + "pre_context": [ + "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", + " * cookie", + " * Copyright(c) 2012-2014 Roman Shtylman", + " * Copyright(c) 2015 Douglas Christopher Wilson", + " * MIT Licensed" + ] + }, + { + "colno": 10, + "filename": "[[FILENAME9]]", + "function": "Object.apply", + "in_app": false, + "lineno": 72, + "module": "route.ts" }, { - "colno": 83, - "filename": "[[FILENAME4]]", - "function": "eval", + "colno": 52, + "filename": "[[FILENAME10]]", + "function": "Object.apply", "in_app": false, - "lineno": 50, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 70, - "filename": "[[FILENAME5]]", - "function": "startSpan", + "colno": 17, + "filename": "[[FILENAME11]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" }, { - "colno": 36, - "filename": "[[FILENAME6]]", - "function": "runWithAsyncContext", + "colno": 14, + "filename": "[[FILENAME12]]", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" }, { - "colno": 25, + "colno": 28, "filename": "[[FILENAME2]]", - "function": "Object.runWithAsyncContext", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 14, - "filename": "[[FILENAME1]]", - "function": "AsyncLocalStorage.run", + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 14, + "colno": 24, "filename": "[[FILENAME2]]", - "function": "eval", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 66, - "filename": "[[FILENAME5]]", - "function": "eval", - "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 18, + "colno": 40, "filename": "[[FILENAME3]]", - "function": "withScope", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { - "colno": 28, - "filename": "[[FILENAME6]]", - "function": "Hub.withScope", + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" + "lineno": 346, + "module": "node:async_hooks" }, { - "colno": 98, - "filename": "[[FILENAME5]]", + "colno": 14, + "filename": "[[FILENAME2]]", "function": "eval", "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 26, - "filename": "[[FILENAME7]]", - "function": "handleCallbackErrors", + "colno": 24, + "filename": "[[FILENAME10]]", + "function": "eval", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 15, - "filename": "[[FILENAME5]]", - "function": "status.status", + "colno": 10, + "filename": "[[FILENAME10]]", + "function": "startOrUpdateSpan", "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 108, - "filename": "[[FILENAME4]]", + "colno": 41, + "filename": "[[FILENAME10]]", "function": "eval", "in_app": false, - "lineno": 60, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 26, - "filename": "[[FILENAME7]]", - "function": "handleCallbackErrors", + "filename": "[[FILENAME13]]", + "function": "Object.handleCallbackErrors", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" }, { - "colno": 44, - "filename": "[[FILENAME4]]", + "colno": 38, + "filename": "[[FILENAME10]]", "function": "eval", "in_app": false, - "lineno": 61, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 49, - "filename": "[[FILENAME8]]", + "filename": "[[FILENAME9]]", "function": "GET$1", "in_app": false, - "lineno": 25, + "lineno": 22, "module": "route.ts" }, { - "colno": 70, - "filename": "[[FILENAME5]]", - "function": "Module.startSpan", - "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME6]]", - "function": "runWithAsyncContext", + "colno": 16, + "filename": "[[FILENAME14]]", + "function": "Object.startSpan", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": 35, + "module": "@sentry.core.cjs.tracing:trace" }, { - "colno": 25, + "colno": 17, "filename": "[[FILENAME2]]", - "function": "Object.runWithAsyncContext", + "function": "Object.startSpan", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": 854, + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 14, - "filename": "[[FILENAME1]]", - "function": "AsyncLocalStorage.run", + "colno": 76, + "filename": "[[FILENAME6]]", + "function": "Tracer.startActiveSpan", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" }, { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "eval", + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 66, - "filename": "[[FILENAME5]]", - "function": "eval", + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 18, + "colno": 40, "filename": "[[FILENAME3]]", - "function": "withScope", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { - "colno": 28, - "filename": "[[FILENAME6]]", - "function": "Hub.withScope", + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" + "lineno": 346, + "module": "node:async_hooks" }, { - "colno": 98, - "filename": "[[FILENAME5]]", + "colno": 17, + "filename": "[[FILENAME2]]", "function": "eval", "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 857, + "module": "@sentry.opentelemetry.cjs:index" }, { "colno": 26, - "filename": "[[FILENAME7]]", - "function": "handleCallbackErrors", + "filename": "[[FILENAME15]]", + "function": "Object.handleCallbackErrors", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" }, { - "colno": 15, - "filename": "[[FILENAME5]]", - "function": "status.status", + "colno": 13, + "filename": "[[FILENAME2]]", + "function": "eval", "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 858, + "module": "@sentry.opentelemetry.cjs:index" }, { "colno": 53, - "filename": "[[FILENAME8]]", + "filename": "[[FILENAME9]]", "function": "eval", "in_app": false, - "lineno": 28, + "lineno": 25, "module": "route.ts" }, { - "colno": 70, - "filename": "[[FILENAME5]]", - "function": "Module.startSpan", - "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME6]]", - "function": "runWithAsyncContext", + "colno": 16, + "filename": "[[FILENAME14]]", + "function": "Object.startSpan", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": 35, + "module": "@sentry.core.cjs.tracing:trace" }, { - "colno": 25, + "colno": 17, "filename": "[[FILENAME2]]", - "function": "Object.runWithAsyncContext", + "function": "Object.startSpan", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": 854, + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 14, - "filename": "[[FILENAME1]]", - "function": "AsyncLocalStorage.run", + "colno": 76, + "filename": "[[FILENAME6]]", + "function": "Tracer.startActiveSpan", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" }, { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "eval", + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 66, - "filename": "[[FILENAME5]]", - "function": "eval", + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 18, + "colno": 40, "filename": "[[FILENAME3]]", - "function": "withScope", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { - "colno": 28, - "filename": "[[FILENAME6]]", - "function": "Hub.withScope", + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" + "lineno": 346, + "module": "node:async_hooks" }, { - "colno": 98, - "filename": "[[FILENAME5]]", + "colno": 17, + "filename": "[[FILENAME2]]", "function": "eval", "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 857, + "module": "@sentry.opentelemetry.cjs:index" }, { "colno": 26, - "filename": "[[FILENAME7]]", - "function": "handleCallbackErrors", + "filename": "[[FILENAME15]]", + "function": "Object.handleCallbackErrors", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" }, { - "colno": 15, - "filename": "[[FILENAME5]]", - "function": "status.status", + "colno": 13, + "filename": "[[FILENAME2]]", + "function": "eval", "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 858, + "module": "@sentry.opentelemetry.cjs:index" }, { "colno": 74, - "filename": "[[FILENAME8]]", + "filename": "[[FILENAME9]]", "function": "eval", "in_app": false, - "lineno": 31, + "lineno": 28, "module": "route.ts" } ] @@ -538,7 +591,7 @@ "accept": "*/*", "accept-encoding": "gzip, deflate, br", "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", + "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=7cd7e0c3aefe457d9b521e2faee8e354", "cache-control": "no-cache", "connection": "keep-alive", "host": "localhost:3030", @@ -547,7 +600,7 @@ "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", + "sentry-trace": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", "user-agent": "[[user-agent]]", "x-forwarded-for": "::ffff:127.0.0.1", "x-forwarded-host": "localhost:3030", @@ -563,35 +616,41 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-error-manual" - }, "timestamp": "[[timestamp]]", - "transaction": " " + "transaction": "GET /api/test-error-manual" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--transaction.json index b7e430e..08db7b0 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,55 +21,43 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 373ms (2131 modules)", "timestamp": "[[timestamp]]" } ], @@ -98,13 +86,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-error-manual/route", + "http.status_code": 200, + "http.target": "/api/test-error-manual", + "next.route": "/api/test-error-manual/route", + "next.rsc": false, + "next.span_name": "GET /api/test-error-manual/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -115,9 +122,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -125,30 +129,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -156,832 +136,126 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", "spans": [ { "data": { + "next.route": "/api/test-error-manual", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", "sentry.origin": "manual" }, - "description": "test-span", + "description": "resolve page components", "origin": "manual", "parent_span_id": "[[ID4]]", "span_id": "[[ID5]]", "start_timestamp": "[[timestamp]]", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { + "next.route": "/api/test-error-manual/route", + "next.span_name": "executing api route (app) /api/test-error-manual/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", "sentry.origin": "manual" }, - "description": "child-span", + "description": "executing api route (app) /api/test-error-manual/route", "origin": "manual", - "parent_span_id": "[[ID5]]", + "parent_span_id": "[[ID4]]", "span_id": "[[ID6]]", "start_timestamp": "[[timestamp]]", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error-manual%2Froute.ts&methodName=eval&arguments=&lineNumber=31&column=74", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", + "description": "test-span", + "origin": "manual", + "parent_span_id": "[[ID6]]", "span_id": "[[ID7]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", + "description": "child-span", + "origin": "manual", + "parent_span_id": "[[ID7]]", "span_id": "[[ID8]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", "span_id": "[[ID9]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID10]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID11]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID12]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID13]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID14]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID15]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID16]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=Module.startSpan&arguments=&lineNumber=101&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID17]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error-manual%2Froute.ts&methodName=eval&arguments=&lineNumber=28&column=53", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID18]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-error-manual%2Froute.ts&methodName=GET%241&arguments=&lineNumber=25&column=49", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID19]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=61&column=44", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID20]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=60&column=108", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID21]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=startSpan&arguments=&lineNumber=101&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID22]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=50&column=83", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID23]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=290&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID24]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=continueTrace&arguments=&lineNumber=289&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID25]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=43&column=75", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID26]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=eval&arguments=&lineNumber=245&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID27]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID28]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID29]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID30]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID31]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID32]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID33]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID34]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID35]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID36]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID37]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID38]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID39]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID40]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID41]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID42]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID43]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID44]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID45]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID46]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID47]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID48]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID49]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID50]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=Module.startSpan&arguments=&lineNumber=101&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID5]]", - "span_id": "[[ID51]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" } ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-error-manual" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-error-manual", + "transaction": "GET /api/test-error-manual/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--event.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--event.json deleted file mode 100644 index d3ce0d2..0000000 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--event.json +++ /dev/null @@ -1,760 +0,0 @@ -[ - { - "dsn": "[[dsn]]", - "event_id": "[[ID1]]", - "sdk": { - "name": "sentry.javascript.nextjs", - "version": "7.110.1" - }, - "sent_at": "[[ISODateString]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]" - } - }, - { - "type": "event" - }, - { - "breadcrumbs": [ - { - "category": "console", - "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 168ms (1194 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "error", - "message": " \u001b[31m\u001b[1m⨯\u001b[22m\u001b[39m Error: Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}\n at GET$1 (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:24:11)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:61:44)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:60:108)\n at status.status (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:119:15)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:118:98)\n at Hub.withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:216:28)\n at withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:214:18)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:102:66)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at startSpan (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:101:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:50:83)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:290:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at continueTrace (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:289:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:43:75)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:245:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at withIsolationScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:244:70)\n at Object.apply (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:37:78)\n at Object.apply (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:64:10)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:53244\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:140:36\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NoopTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18093)\n at ProxyTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18854)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:103\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:28)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46069\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:39157)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45176\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:37592)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45138\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at e_.execute (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:44531)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-caught in 189ms (1196 modules)", - "timestamp": "[[timestamp]]" - } - ], - "contexts": { - "app": { - "app_memory": "[[highNumber]]", - "app_start_time": "[[ISODateString]]" - }, - "cloud_resource": {}, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "device": { - "arch": "arm64", - "boot_time": "[[ISODateString]]", - "cpu_description": "Apple M1 Pro", - "free_memory": "[[highNumber]]", - "memory_size": "[[highNumber]]", - "processor_count": 10, - "processor_frequency": "[[highNumber]]" - }, - "os": { - "build": "23C64", - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "trace": { - "data": { - "sentry.op": "http.server", - "sentry.origin": "auto.function.nextjs", - "sentry.sample_rate": 1, - "sentry.source": "route" - }, - "op": "http.server", - "origin": "auto.function.nextjs", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "trace_id": "[[ID2]]" - } - }, - "environment": "qa", - "event_id": "[[ID1]]", - "exception": { - "values": [ - { - "mechanism": { - "handled": true, - "type": "generic" - }, - "stacktrace": { - "frames": [ - { - "colno": "[[highNumber]]", - "context_line": "'{snip} is.userland.fetchCache;let s=await this.actionAsyncStorage.run({isAppRoute:!0,isAction:function(e){let{isFetchAction:t,isURLEncodedAction:r, {snip}", - "filename": "[[FILENAME1]]", - "function": "e_.execute", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} Action:o,isFetchAction:a}}(e);return!!(t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n= {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} },assetPrefix:(null==n?void 0:n.assetPrefix)||\"\"};return e.run(c,o,c)}};var I=r(\"./dist/compiled/react/index.js\"),U=r.n(I);let F=\"DYNAMIC_SE {snip}", - "filename": "[[FILENAME1]]", - "function": "Object.wrap", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} (t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n=>{var o;let s=n.isStaticGeneration;if( {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} aftMode:r.isDraftMode,prerenderState:a};return r.store=s,e.run(s,n,s)}};function Y(){return new Response(null,{status:400})}function J(){ret {snip}", - "filename": "[[FILENAME1]]", - "function": "Object.wrap", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} SpanAttributes())||o.set(\"next.route\",l),(0,M.getTracer)().trace(d.runHandler,{spanName:`executing api route (app) ${l}`,attributes:{\"next.r {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 28, - "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", - "function": "NextTracerImpl.trace", - "in_app": false, - "lineno": 122, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " const startTime = \"performance\" in globalThis ? globalThis.performance.now() : undefined;", - " const onCleanup = ()=>{", - " rootSpanAttributesStore.delete(spanId);", - " if (startTime && process.env.NEXT_OTEL_PERFORMANCE_PREFIX && _constants.LogSpanAllowList.includes(type || \"\")) {", - " performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-${(type.split(\".\").pop() || \"\").replace(/[A-Z] {snip}", - " start: startTime,", - " end: performance.now()" - ], - "pre_context": [ - " }", - " const spanId = getSpanId();", - " options.attributes = {", - " \"next.span_name\": spanName,", - " \"next.span_type\": type,", - " ...options.attributes", - " };" - ] - }, - { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 103, - "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", - "function": "", - "in_app": false, - "lineno": 122, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " const startTime = \"performance\" in globalThis ? globalThis.performance.now() : undefined;", - " const onCleanup = ()=>{", - " rootSpanAttributesStore.delete(spanId);", - " if (startTime && process.env.NEXT_OTEL_PERFORMANCE_PREFIX && _constants.LogSpanAllowList.includes(type || \"\")) {", - " performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-${(type.split(\".\").pop() || \"\").replace(/[A-Z] {snip}", - " start: startTime,", - " end: performance.now()" - ], - "pre_context": [ - " }", - " const spanId = getSpanId();", - " options.attributes = {", - " \"next.span_name\": spanName,", - " \"next.span_type\": type,", - " ...options.attributes", - " };" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} tiveSpan(e,t,r,n){const a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)}_getTracer(){if(this._delegate){return this. {snip}", - "filename": "[[FILENAME4]]", - "function": "ProxyTracer.startActiveSpan", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} s.startSpan(e,o,u);const g=(0,a.setSpan)(u,l);return c.with(g,s,undefined,l)}}t.NoopTracer=NoopTracer;function isSpanContext(e){return typeo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopTracer.startActiveSpan", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 36, - "context_line": " const result = fn(span);", - "filename": "[[FILENAME3]]", - "function": "", - "in_app": false, - "lineno": 140, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " if (isPromise(result)) {", - " // If there's error make sure it throws", - " return result.then((res)=>{", - " span.end();", - " // Need to pass down the promise result,", - " // it could be react stream response with error { error, stream }", - " return res;" - ], - "pre_context": [ - " if (isRootSpan) {", - " rootSpanAttributesStore.set(spanId, new Map(Object.entries(options.attributes ?? {})));", - " }", - " try {", - " if (fn.length > 1) {", - " return fn(span, (err)=>closeSpanWithError(span, err));", - " }" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} yncStorage:this.staticGenerationAsyncStorage});let o=await r(i,{params:t.params?function(e){let t={};for(let[r,n]of Object.entries(e))void 0 {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 10, - "filename": "[[FILENAME5]]", - "function": "Object.apply", - "in_app": false, - "lineno": 72, - "module": "route.ts" - }, - { - "colno": 78, - "filename": "[[FILENAME6]]", - "function": "Object.apply", - "in_app": false, - "lineno": 37, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME7]]", - "function": "withIsolationScope", - "in_app": false, - "lineno": 244, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME7]]", - "function": "eval", - "in_app": false, - "lineno": 245, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 75, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 43, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "continueTrace", - "in_app": false, - "lineno": 289, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 290, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 83, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 50, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "startSpan", - "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 66, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 18, - "filename": "[[FILENAME7]]", - "function": "withScope", - "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 28, - "filename": "[[FILENAME8]]", - "function": "Hub.withScope", - "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 98, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", - "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" - }, - { - "colno": 15, - "filename": "[[FILENAME10]]", - "function": "status.status", - "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 108, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 60, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", - "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" - }, - { - "colno": 44, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 61, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 15, - "filename": "[[FILENAME5]]", - "function": "GET$1", - "in_app": false, - "lineno": 27, - "module": "route.ts", - "vars": { - "randomVariableToRecord": "LOCAL_VARIABLE" - } - } - ] - }, - "type": "Error", - "value": "Local Variable Error" - } - ] - }, - "modules": {}, - "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Undici", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" - ], - "name": "sentry.javascript.nextjs", - "packages": [ - { - "name": "npm:@sentry/nextjs", - "version": "7.110.1" - }, - { - "name": "npm:@sentry/node", - "version": "7.110.1" - } - ], - "version": "7.110.1" - }, - "server_name": "D9M3PY4LQ7.local", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-local-variables-caught" - }, - "timestamp": "[[timestamp]]", - "transaction": " " - } -] diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--transaction.json index 57919ce..e871d32 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,73 +21,61 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 373ms (2131 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 304ms (2133 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 168ms (1194 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 241ms (2135 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "error", - "message": " \u001b[31m\u001b[1m⨯\u001b[22m\u001b[39m Error: Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}\n at GET$1 (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:24:11)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:61:44)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:60:108)\n at status.status (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:119:15)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:118:98)\n at Hub.withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:216:28)\n at withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:214:18)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:102:66)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at startSpan (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:101:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:50:83)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:290:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at continueTrace (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:289:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:43:75)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:245:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at withIsolationScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:244:70)\n at Object.apply (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:37:78)\n at Object.apply (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:64:10)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:53244\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:140:36\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NoopTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18093)\n at ProxyTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18854)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:103\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:28)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46069\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:39157)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45176\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:37592)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45138\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at e_.execute (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:44531)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-caught in 189ms (1196 modules)", + "message": " \u001b[31m\u001b[1m⨯\u001b[22m\u001b[39m Error: Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}\n at GET$1 (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:23:11)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:75:38)\n at Object.handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/cjs/utils/handleCallbackErrors.js:26:26)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:74:41)\n at startOrUpdateSpan (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:50:10)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:73:24)\n at eval (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1185:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/api/build/esm/api/context.js:95:54)\n at Object.withIsolationScope (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1184:28)\n at Object.withIsolationScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/cjs/currentScopes.js:96:14)\n at Object.withIsolationScopeOrReuseFromRootSpan (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/utils/withIsolationScopeOrReuseFromRootSpan.js:24:17)\n at Object.apply (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:65:52)\n at Object.apply (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:63:10)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:53244\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:140:36\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/api/build/esm/api/context.js:95:54)\n at Tracer.startActiveSpan (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Tracer.js:136:76)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:103\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/node_modules/@opentelemetry/api/build/src/api/context.js:60:46)\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:28)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46069\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:39157)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45176\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:37592)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45138\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at e_.execute (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:44531)\n at e_.handle (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:54503)\n at doRender (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1372:60)\n at cacheEntry.responseCache.get.routeKind (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1594:34)\n at ResponseCache.get (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/response-cache/index.js:49:26)\n at DevServer.renderToResponseWithComponentsImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1502:53)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:997:121\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:105:20)\n at DevServer.renderToResponseWithComponents (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:997:41)\n at DevServer.renderPageComponent (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1919:35)\n at async DevServer.renderToResponseImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1957:32)\n at async DevServer.pipeImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:915:25)\n at async NextNodeServer.handleCatchallRenderRequest (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/next-server.js:272:17)", "timestamp": "[[timestamp]]" } ], @@ -116,13 +104,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-local-variables-caught/route", + "http.status_code": 200, + "http.target": "/api/test-local-variables-caught", + "next.route": "/api/test-local-variables-caught/route", + "next.rsc": false, + "next.span_name": "GET /api/test-local-variables-caught/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -133,9 +140,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -143,30 +147,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -174,42 +154,98 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "spans": [], + "spans": [ + { + "data": { + "next.route": "/api/test-local-variables-caught", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "resolve page components", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.route": "/api/test-local-variables-caught/route", + "next.span_name": "executing api route (app) /api/test-local-variables-caught/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "executing api route (app) /api/test-local-variables-caught/route", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + } + ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-local-variables-caught" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-local-variables-caught", + "transaction": "GET /api/test-local-variables-caught/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--event.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--event.json deleted file mode 100644 index ebc2cbb..0000000 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--event.json +++ /dev/null @@ -1,745 +0,0 @@ -[ - { - "dsn": "[[dsn]]", - "event_id": "[[ID1]]", - "sdk": { - "name": "sentry.javascript.nextjs", - "version": "7.110.1" - }, - "sent_at": "[[ISODateString]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]" - } - }, - { - "type": "event" - }, - { - "breadcrumbs": [ - { - "category": "console", - "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 168ms (1194 modules)", - "timestamp": "[[timestamp]]" - } - ], - "contexts": { - "app": { - "app_memory": "[[highNumber]]", - "app_start_time": "[[ISODateString]]" - }, - "cloud_resource": {}, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "device": { - "arch": "arm64", - "boot_time": "[[ISODateString]]", - "cpu_description": "Apple M1 Pro", - "free_memory": "[[highNumber]]", - "memory_size": "[[highNumber]]", - "processor_count": 10, - "processor_frequency": "[[highNumber]]" - }, - "os": { - "build": "23C64", - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "trace": { - "data": { - "sentry.op": "http.server", - "sentry.origin": "auto.function.nextjs", - "sentry.sample_rate": 1, - "sentry.source": "route" - }, - "op": "http.server", - "origin": "auto.function.nextjs", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "trace_id": "[[ID2]]" - } - }, - "environment": "qa", - "event_id": "[[ID1]]", - "exception": { - "values": [ - { - "mechanism": { - "handled": false, - "type": "generic" - }, - "stacktrace": { - "frames": [ - { - "colno": "[[highNumber]]", - "context_line": "'{snip} is.userland.fetchCache;let s=await this.actionAsyncStorage.run({isAppRoute:!0,isAction:function(e){let{isFetchAction:t,isURLEncodedAction:r, {snip}", - "filename": "[[FILENAME1]]", - "function": "e_.execute", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} Action:o,isFetchAction:a}}(e);return!!(t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n= {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} },assetPrefix:(null==n?void 0:n.assetPrefix)||\"\"};return e.run(c,o,c)}};var I=r(\"./dist/compiled/react/index.js\"),U=r.n(I);let F=\"DYNAMIC_SE {snip}", - "filename": "[[FILENAME1]]", - "function": "Object.wrap", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} (t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n=>{var o;let s=n.isStaticGeneration;if( {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} aftMode:r.isDraftMode,prerenderState:a};return r.store=s,e.run(s,n,s)}};function Y(){return new Response(null,{status:400})}function J(){ret {snip}", - "filename": "[[FILENAME1]]", - "function": "Object.wrap", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} SpanAttributes())||o.set(\"next.route\",l),(0,M.getTracer)().trace(d.runHandler,{spanName:`executing api route (app) ${l}`,attributes:{\"next.r {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 28, - "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", - "function": "NextTracerImpl.trace", - "in_app": false, - "lineno": 122, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " const startTime = \"performance\" in globalThis ? globalThis.performance.now() : undefined;", - " const onCleanup = ()=>{", - " rootSpanAttributesStore.delete(spanId);", - " if (startTime && process.env.NEXT_OTEL_PERFORMANCE_PREFIX && _constants.LogSpanAllowList.includes(type || \"\")) {", - " performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-${(type.split(\".\").pop() || \"\").replace(/[A-Z] {snip}", - " start: startTime,", - " end: performance.now()" - ], - "pre_context": [ - " }", - " const spanId = getSpanId();", - " options.attributes = {", - " \"next.span_name\": spanName,", - " \"next.span_type\": type,", - " ...options.attributes", - " };" - ] - }, - { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 103, - "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", - "function": "", - "in_app": false, - "lineno": 122, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " const startTime = \"performance\" in globalThis ? globalThis.performance.now() : undefined;", - " const onCleanup = ()=>{", - " rootSpanAttributesStore.delete(spanId);", - " if (startTime && process.env.NEXT_OTEL_PERFORMANCE_PREFIX && _constants.LogSpanAllowList.includes(type || \"\")) {", - " performance.measure(`${process.env.NEXT_OTEL_PERFORMANCE_PREFIX}:next-${(type.split(\".\").pop() || \"\").replace(/[A-Z] {snip}", - " start: startTime,", - " end: performance.now()" - ], - "pre_context": [ - " }", - " const spanId = getSpanId();", - " options.attributes = {", - " \"next.span_name\": spanName,", - " \"next.span_type\": type,", - " ...options.attributes", - " };" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} tiveSpan(e,t,r,n){const a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)}_getTracer(){if(this._delegate){return this. {snip}", - "filename": "[[FILENAME4]]", - "function": "ProxyTracer.startActiveSpan", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} s.startSpan(e,o,u);const g=(0,a.setSpan)(u,l);return c.with(g,s,undefined,l)}}t.NoopTracer=NoopTracer;function isSpanContext(e){return typeo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopTracer.startActiveSpan", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", - "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] - }, - { - "colno": 36, - "context_line": " const result = fn(span);", - "filename": "[[FILENAME3]]", - "function": "", - "in_app": false, - "lineno": 140, - "module": "next.dist.server.lib.trace:tracer", - "post_context": [ - " if (isPromise(result)) {", - " // If there's error make sure it throws", - " return result.then((res)=>{", - " span.end();", - " // Need to pass down the promise result,", - " // it could be react stream response with error { error, stream }", - " return res;" - ], - "pre_context": [ - " if (isRootSpan) {", - " rootSpanAttributesStore.set(spanId, new Map(Object.entries(options.attributes ?? {})));", - " }", - " try {", - " if (fn.length > 1) {", - " return fn(span, (err)=>closeSpanWithError(span, err));", - " }" - ] - }, - { - "colno": "[[highNumber]]", - "context_line": "'{snip} yncStorage:this.staticGenerationAsyncStorage});let o=await r(i,{params:t.params?function(e){let t={};for(let[r,n]of Object.entries(e))void 0 {snip}", - "filename": "[[FILENAME1]]", - "function": "", - "in_app": false, - "lineno": 6, - "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], - "pre_context": [ - "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", - " * cookie", - " * Copyright(c) 2012-2014 Roman Shtylman", - " * Copyright(c) 2015 Douglas Christopher Wilson", - " * MIT Licensed" - ] - }, - { - "colno": 10, - "filename": "[[FILENAME5]]", - "function": "Object.apply", - "in_app": false, - "lineno": 64, - "module": "route.ts" - }, - { - "colno": 78, - "filename": "[[FILENAME6]]", - "function": "Object.apply", - "in_app": false, - "lineno": 37, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME7]]", - "function": "withIsolationScope", - "in_app": false, - "lineno": 244, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME7]]", - "function": "eval", - "in_app": false, - "lineno": 245, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 75, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 43, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "continueTrace", - "in_app": false, - "lineno": 289, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 290, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 83, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 50, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "startSpan", - "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 66, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 18, - "filename": "[[FILENAME7]]", - "function": "withScope", - "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 28, - "filename": "[[FILENAME8]]", - "function": "Hub.withScope", - "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 98, - "filename": "[[FILENAME10]]", - "function": "eval", - "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", - "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" - }, - { - "colno": 15, - "filename": "[[FILENAME10]]", - "function": "status.status", - "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 108, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 60, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", - "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" - }, - { - "colno": 44, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 61, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 11, - "filename": "[[FILENAME5]]", - "function": "GET$1", - "in_app": false, - "lineno": 24, - "module": "route.ts" - } - ] - }, - "type": "Error", - "value": "Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}" - } - ] - }, - "modules": {}, - "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Undici", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" - ], - "name": "sentry.javascript.nextjs", - "packages": [ - { - "name": "npm:@sentry/nextjs", - "version": "7.110.1" - }, - { - "name": "npm:@sentry/node", - "version": "7.110.1" - } - ], - "version": "7.110.1" - }, - "server_name": "D9M3PY4LQ7.local", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-local-variables-uncaught" - }, - "timestamp": "[[timestamp]]", - "transaction": " " - } -] diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--transaction.json index 0be0a38..cab9cdf 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,73 +21,67 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 373ms (2131 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 304ms (2133 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 203ms (1194 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 168ms (1194 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-uncaught in 241ms (2135 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "error", - "message": " \u001b[31m\u001b[1m⨯\u001b[22m\u001b[39m Error: Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}\n at GET$1 (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:24:11)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:61:44)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:60:108)\n at status.status (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:119:15)\n at handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/utils/handleCallbackErrors.js:29:26)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:118:98)\n at Hub.withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:216:28)\n at withScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:214:18)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:102:66)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at startSpan (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:101:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:50:83)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:290:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at continueTrace (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/tracing/trace.js:289:70)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:43:75)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:245:12)\n at eval (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:49:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/node/esm/async/hooks.js:48:25)\n at runWithAsyncContext (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/hub.js:799:36)\n at withIsolationScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/esm/exports.js:244:70)\n at Object.apply (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/esm/common/wrapRouteHandlerWithSentry.js:37:78)\n at Object.apply (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:64:10)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:53244\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:140:36\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NoopTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18093)\n at ProxyTracer.startActiveSpan (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:18854)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:103\n at NoopContextManager.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:7062)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/@opentelemetry/api/index.js:1:518)\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:28)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46069\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:39157)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45176\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:37592)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45138\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at e_.execute (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:44531)", + "message": " \u001b[31m\u001b[1m⨯\u001b[22m\u001b[39m Error: Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}\n at GET$1 (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:23:11)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:75:38)\n at Object.handleCallbackErrors (webpack-internal:///(rsc)/../../node_modules/@sentry/core/cjs/utils/handleCallbackErrors.js:26:26)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:74:41)\n at startOrUpdateSpan (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:50:10)\n at eval (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:73:24)\n at eval (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1185:14)\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/api/build/esm/api/context.js:95:54)\n at Object.withIsolationScope (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1184:28)\n at Object.withIsolationScope (webpack-internal:///(rsc)/../../node_modules/@sentry/core/cjs/currentScopes.js:96:14)\n at Object.withIsolationScopeOrReuseFromRootSpan (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/utils/withIsolationScopeOrReuseFromRootSpan.js:24:17)\n at Object.apply (webpack-internal:///(rsc)/./node_modules/@sentry/nextjs/cjs/common/wrapRouteHandlerWithSentry.js:65:52)\n at Object.apply (webpack-internal:///(rsc)/./app/api/test-local-variables-uncaught/route.ts:63:10)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:53244\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:140:36\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/api/build/esm/api/context.js:95:54)\n at Tracer.startActiveSpan (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Tracer.js:136:76)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:103\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js:33:40)\n at SentryContextManager.with (webpack-internal:///(instrument)/../../node_modules/@sentry/opentelemetry/cjs/index.js:1287:24)\n at ContextAPI.with (/Users/sigridh/Documents/DEV/sentry-javascript-examples/node_modules/@opentelemetry/api/build/src/api/context.js:60:46)\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:122:28)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46069\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:39157)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45176\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at Object.wrap (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:37592)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:45138\n at AsyncLocalStorage.run (node:async_hooks:346:14)\n at e_.execute (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:44531)\n at e_.handle (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:54503)\n at doRender (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1372:60)\n at cacheEntry.responseCache.get.routeKind (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1594:34)\n at ResponseCache.get (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/response-cache/index.js:49:26)\n at DevServer.renderToResponseWithComponentsImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1502:53)\n at /Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:997:121\n at NextTracerImpl.trace (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/lib/trace/tracer.js:105:20)\n at DevServer.renderToResponseWithComponents (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:997:41)\n at DevServer.renderPageComponent (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1919:35)\n at async DevServer.renderToResponseImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:1957:32)\n at async DevServer.pipeImpl (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/base-server.js:915:25)\n at async NextNodeServer.handleCatchallRenderRequest (/Users/sigridh/Documents/DEV/sentry-javascript-examples/apps/nextjs-14_2_1/node_modules/next/dist/server/next-server.js:272:17)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-caught in 189ms (1196 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-local-variables-caught in 316ms (2137 modules)", "timestamp": "[[timestamp]]" } ], @@ -116,12 +110,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", + "http.response.status_code": 500, + "http.route": "/api/test-local-variables-uncaught/route", + "http.status_code": 500, + "http.target": "/api/test-local-variables-uncaught", + "next.route": "/api/test-local-variables-uncaught/route", + "next.rsc": false, + "next.span_name": "GET /api/test-local-variables-uncaught/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -139,30 +153,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -170,41 +160,82 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "spans": [], + "spans": [ + { + "data": { + "next.route": "/api/test-local-variables-uncaught", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "resolve page components", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.route": "/api/test-local-variables-uncaught/route", + "next.span_name": "executing api route (app) /api/test-local-variables-uncaught/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "executing api route (app) /api/test-local-variables-uncaught/route", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "status": "unknown_error", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + } + ], "start_timestamp": "[[timestamp]]", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-local-variables-uncaught" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-local-variables-uncaught", + "transaction": "GET /api/test-local-variables-uncaught/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json index 077936b..71e3db1 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json @@ -4,17 +4,9 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, - "sent_at": "[[ISODateString]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "sample_rate": "1", - "sampled": "true", - "trace_id": "[[ID2]]", - "transaction": "GET /api/test-param-error/[param]" - } + "sent_at": "[[ISODateString]]" }, { "type": "event" @@ -24,43 +16,43 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 373ms (2131 modules)", "timestamp": "[[timestamp]]" } ], @@ -94,16 +86,9 @@ "version": "v20.12.1" }, "trace": { - "data": { - "sentry.op": "http.server", - "sentry.origin": "auto.function.nextjs", - "sentry.sample_rate": 1, - "sentry.source": "route" - }, - "op": "http.server", - "origin": "auto.function.nextjs", + "parent_span_id": "[[ID2]]", "span_id": "[[ID3]]", - "trace_id": "[[ID2]]" + "trace_id": "[[ID4]]" } }, "environment": "qa", @@ -117,15 +102,315 @@ }, "stacktrace": { "frames": [ + { + "colno": 20, + "context_line": " return await super.handleRequest(req, res, parsedUrl);", + "filename": "[[FILENAME1]]", + "function": "?", + "in_app": false, + "lineno": 339, + "module": "next.dist.server.dev:next-dev-server", + "post_context": [ + " });", + " const memoryUsage = process.memoryUsage();", + " span.traceChild(\"memory-usage\", {", + " url: req.url,", + " \"memory.rss\": String(memoryUsage.rss),", + " \"memory.heapUsed\": String(memoryUsage.heapUsed),", + " \"memory.heapTotal\": String(memoryUsage.heapTotal)" + ], + "pre_context": [ + " async handleRequest(req, res, parsedUrl) {", + " const span = (0, _trace.trace)(\"handle-request\", undefined, {", + " url: req.url", + " });", + " const result = await span.traceAsyncFn(async ()=>{", + " var _this_ready;", + " await ((_this_ready = this.ready) == null ? void 0 : _this_ready.promise);" + ] + }, + { + "colno": 17, + "context_line": " await this.handleCatchallRenderRequest(req, res, parsedUrl);", + "filename": "[[FILENAME2]]", + "function": "DevServer.handleRequestImpl", + "in_app": false, + "lineno": 811, + "module": "next.dist.server:base-server", + "post_context": [ + " return;", + " }", + " if (process.env.NEXT_RUNTIME !== \"edge\" && req.headers[\"x-middleware-invoke\"]) {", + " finished = await this.normalizeAndAttachMetadata(req, res, parsedUrl);", + " if (finished) return;", + " finished = await this.handleCatchallMiddlewareRequest(req, res, parsedUrl);", + " if (finished) return;" + ], + "pre_context": [ + " }", + " const invokeQuery = req.headers[\"x-invoke-query\"];", + " if (typeof invokeQuery === \"string\") {", + " Object.assign(parsedUrl.query, JSON.parse(decodeURIComponent(invokeQuery)));", + " }", + " finished = await this.normalizeAndAttachMetadata(req, res, parsedUrl);", + " if (finished) return;" + ] + }, + { + "colno": 17, + "context_line": " await this.render(req, res, pathname, query, parsedUrl, true);", + "filename": "[[FILENAME3]]", + "function": "NextNodeServer.handleCatchallRenderRequest", + "in_app": false, + "lineno": 272, + "module": "next.dist.server:next-server", + "post_context": [ + " return true;", + " } catch (err) {", + " if (err instanceof _baseserver.NoFallbackError) {", + " throw err;", + " }", + " try {", + " if (this.renderOpts.dev) {" + ], + "pre_context": [ + " await this.render404(req, res, parsedUrl);", + " return true;", + " }", + " delete query._nextBubbleNoFallback;", + " const handled = await this.handleApiRequest(req, res, query, match);", + " if (handled) return true;", + " }" + ] + }, + { + "colno": 25, + "context_line": " const payload = await fn(ctx);", + "filename": "[[FILENAME2]]", + "function": "DevServer.pipeImpl", + "in_app": false, + "lineno": 915, + "module": "next.dist.server:base-server", + "post_context": [ + " if (payload === null) {", + " return;", + " }", + " const { req, res } = ctx;", + " const originalStatus = res.statusCode;", + " const { body, type } = payload;", + " let { revalidate } = payload;" + ], + "pre_context": [ + " ...partialContext,", + " renderOpts: {", + " ...this.renderOpts,", + " supportsDynamicHTML: !isBotRequest,", + " isBot: !!isBotRequest", + " }", + " };" + ] + }, + { + "colno": 32, + "context_line": " const result = await this.renderPageComponent({", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderToResponseImpl", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " ...ctx,", + " pathname: match.definition.pathname,", + " renderOpts: {", + " ...ctx.renderOpts,", + " params: match.params", + " }", + " }, bubbleNoFallback);" + ], + "pre_context": [ + " for await (const match of this.matchers.matchAll(pathname, options)){", + " // when a specific invoke-output is meant to be matched", + " // ensure a prior dynamic route/page doesn't take priority", + " const invokeOutput = ctx.req.headers[\"x-invoke-output\"];", + " if (!this.minimalMode && typeof invokeOutput === \"string\" && (0, _utils1.isDynamicRoute)(invokeOutput || \"\") && invokeOutput {snip}", + " continue;", + " }" + ] + }, + { + "colno": 24, + "context_line": " return await this.renderToResponseWithComponents(ctx, result);", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderPageComponent", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " } catch (err) {", + " const isNoFallbackError = err instanceof NoFallbackError;", + " if (!isNoFallbackError || isNoFallbackError && bubbleNoFallback) {", + " throw err;", + " }", + " }", + " }" + ], + "pre_context": [ + " // Ensuring for loading page component routes is done via the matcher.", + " shouldEnsure: false", + " });", + " if (result) {", + " var _getTracer_getRootSpanAttributes;", + " (_getTracer_getRootSpanAttributes = (0, _tracer.getTracer)().getRootSpanAttributes()) == null ? void 0 : _getTracer_getRootSpanA {snip}", + " try {" + ] + }, + { + "colno": 5, + "filename": "[[FILENAME4]]", + "function": "process.processTicksAndRejections", + "in_app": false, + "lineno": 95, + "module": "task_queues", + "platform": "nodejs" + }, + { + "colno": 53, + "context_line": " const cacheEntry = await this.responseCache.get(ssgCacheKey, async (hasResolved, previousCacheEntry, isRevalidating)=>{", + "filename": "[[FILENAME2]]", + "function": "DevServer.renderToResponseWithComponentsImpl", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " const isProduction = !this.renderOpts.dev;", + " const didRespond = hasResolved || res.sent;", + " if (!staticPaths) {", + " ({ staticPaths, fallbackMode } = hasStaticPaths ? await this.getStaticPaths({", + " pathname,", + " requestHeaders: req.headers,", + " isAppPath," + ], + "pre_context": [ + " postponed: metadata.postponed,", + " headers,", + " status: isAppPath ? res.statusCode : undefined", + " },", + " revalidate: metadata.revalidate", + " };", + " };" + ] + }, + { + "colno": 26, + "context_line": " if (!key) return responseGenerator(false, null);", + "filename": "[[FILENAME5]]", + "function": "ResponseCache.get", + "in_app": false, + "lineno": 49, + "module": "next.dist.server.response-cache:index", + "post_context": [ + " const { incrementalCache, isOnDemandRevalidate = false } = context;", + " const response = await this.batcher.batch({", + " key,", + " isOnDemandRevalidate", + " }, async (cacheKey, resolve)=>{", + " var _this_previousCacheItem;", + " // We keep the previous cache entry around to leverage when the" + ], + "pre_context": [ + " // because we replace this.minimalMode to true in production bundles.", + " const minimalModeKey = \"minimalMode\";", + " this[minimalModeKey] = minimalMode;", + " }", + " async get(key, responseGenerator, context) {", + " // If there is no key for the cache, we can't possibly look this up in the", + " // cache so just return the result of the response generator." + ] + }, + { + "colno": 46, + "context_line": " const result = await doRender({", + "filename": "[[FILENAME2]]", + "function": "cacheEntry.responseCache.get.routeKind", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " postponed: undefined", + " });", + " if (!result) {", + " return null;", + " }", + " // Prevent caching this result", + " delete result.revalidate;" + ], + "pre_context": [ + " pageData: {}", + " }", + " };", + " } else {", + " query.__nextFallback = \"true\";", + " // We pass `undefined` as there cannot be a postponed state in", + " // development." + ] + }, + { + "colno": 60, + "context_line": " const response = await routeModule.handle(request, context);", + "filename": "[[FILENAME2]]", + "function": "doRender", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "next.dist.server:base-server", + "post_context": [ + " req.fetchMetrics = context.renderOpts.fetchMetrics;", + " const cacheTags = context.renderOpts.fetchTags;", + " // If the request is for a static response, we can cache it so long", + " // as it's not edge.", + " if (isSSG && process.env.NEXT_RUNTIME !== \"edge\") {", + " var _context_renderOpts_store;", + " const blob = await response.blob();" + ], + "pre_context": [ + " supportsDynamicHTML,", + " incrementalCache,", + " isRevalidate: isSSG", + " }", + " };", + " try {", + " const request = _nextrequest.NextRequestAdapter.fromBaseNextRequest(req, (0, _nextrequest.signalFromNodeResponse)(re {snip}" + ] + }, + { + "colno": "[[highNumber]]", + "context_line": "'{snip} handler\");return s}async handle(e,t){try{return await this.execute(e,t)}catch(t){let e=function(e){if(eg(e)){let t=eg(e)?e.digest.split(\";\", {snip}", + "filename": "[[FILENAME6]]", + "function": "e_.handle", + "in_app": false, + "lineno": 6, + "module": "next.dist.compiled.next-server:app-route.runtime.dev", + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], + "pre_context": [ + "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", + " * cookie", + " * Copyright(c) 2012-2014 Roman Shtylman", + " * Copyright(c) 2015 Douglas Christopher Wilson", + " * MIT Licensed" + ] + }, { "colno": "[[highNumber]]", "context_line": "'{snip} is.userland.fetchCache;let s=await this.actionAsyncStorage.run({isAppRoute:!0,isAction:function(e){let{isFetchAction:t,isURLEncodedAction:r, {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME6]]", "function": "e_.execute", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -136,7 +421,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME7]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -145,12 +430,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} Action:o,isFetchAction:a}}(e);return!!(t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n= {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME6]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -162,12 +449,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} },assetPrefix:(null==n?void 0:n.assetPrefix)||\"\"};return e.run(c,o,c)}};var I=r(\"./dist/compiled/react/index.js\"),U=r.n(I);let F=\"DYNAMIC_SE {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME6]]", "function": "Object.wrap", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -178,7 +467,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME7]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -187,12 +476,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} (t||r||n)}(e)},()=>H.wrap(this.requestAsyncStorage,n,()=>V.wrap(this.staticGenerationAsyncStorage,o,n=>{var o;let s=n.isStaticGeneration;if( {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME6]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -204,12 +495,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} aftMode:r.isDraftMode,prerenderState:a};return r.store=s,e.run(s,n,s)}};function Y(){return new Response(null,{status:400})}function J(){ret {snip}", - "filename": "[[FILENAME1]]", + "filename": "[[FILENAME6]]", "function": "Object.wrap", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -220,7 +513,7 @@ }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME7]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -229,12 +522,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} SpanAttributes())||o.set(\"next.route\",l),(0,M.getTracer)().trace(d.runHandler,{spanName:`executing api route (app) ${l}`,attributes:{\"next.r {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME6]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -246,7 +541,7 @@ { "colno": 28, "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", + "filename": "[[FILENAME8]]", "function": "NextTracerImpl.trace", "in_app": false, "lineno": 122, @@ -271,32 +566,61 @@ ] }, { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", + "colno": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "filename": "[[FILENAME9]]", "function": "ContextAPI.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 60, + "module": "@opentelemetry.api.build.src.api:context", + "post_context": [ + " }", + " /**", + " * Bind a context to a target function or event emitter", + " *", + " * @param context context to bind to the event emitter or function. Defaults to the currently active context", + " * @param target function or event emitter to bind", + " */" + ], + "pre_context": [ + " *", + " * @param context context to be active during function execution", + " * @param fn function to execute in a context", + " * @param thisArg optional receiver to be used for calling fn", + " * @param args optional arguments forwarded to fn", + " */", + " with(context, fn, thisArg, ...args) {" + ] }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", + "colno": 24, + "filename": "[[FILENAME10]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME11]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME7]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" }, { "colno": 103, "context_line": " return context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{", - "filename": "[[FILENAME3]]", - "function": "", + "filename": "[[FILENAME8]]", + "function": "?", "in_app": false, "lineno": 122, "module": "next.dist.server.lib.trace:tracer", @@ -320,54 +644,50 @@ ] }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} tiveSpan(e,t,r,n){const a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)}_getTracer(){if(this._delegate){return this. {snip}", - "filename": "[[FILENAME4]]", - "function": "ProxyTracer.startActiveSpan", + "colno": 76, + "filename": "[[FILENAME12]]", + "function": "Tracer.startActiveSpan", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} s.startSpan(e,o,u);const g=(0,a.setSpan)(u,l);return c.with(g,s,undefined,l)}}t.NoopTracer=NoopTracer;function isSpanContext(e){return typeo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopTracer.startActiveSpan", + "colno": 54, + "filename": "[[FILENAME13]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 518, - "context_line": "'{snip} ve()}with(e,t,r,...n){return this._getContextManager().with(e,t,r,...n)}bind(e,t){return this._getContextManager().bind(e,t)}_getContextMana {snip}", - "filename": "[[FILENAME4]]", - "function": "ContextAPI.with", + "colno": 24, + "filename": "[[FILENAME10]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": "[[highNumber]]", - "context_line": "'{snip} r{active(){return n.ROOT_CONTEXT}with(e,t,r,...n){return t.call(r,...n)}bind(e,t){return t}enable(){return this}disable(){return this}}t.Noo {snip}", - "filename": "[[FILENAME4]]", - "function": "NoopContextManager.with", + "colno": 40, + "filename": "[[FILENAME11]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 1, - "module": "next.dist.compiled.@opentelemetry.api:index", - "post_context": [], - "pre_context": [] + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME7]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" }, { "colno": 36, "context_line": " const result = fn(span);", - "filename": "[[FILENAME3]]", - "function": "", + "filename": "[[FILENAME8]]", + "function": "?", "in_app": false, "lineno": 140, "module": "next.dist.server.lib.trace:tracer", @@ -393,12 +713,14 @@ { "colno": "[[highNumber]]", "context_line": "'{snip} yncStorage:this.staticGenerationAsyncStorage});let o=await r(i,{params:t.params?function(e){let t={};for(let[r,n]of Object.entries(e))void 0 {snip}", - "filename": "[[FILENAME1]]", - "function": "", + "filename": "[[FILENAME6]]", + "function": "?", "in_app": false, "lineno": 6, "module": "next.dist.compiled.next-server:app-route.runtime.dev", - "post_context": ["//# sourceMappingURL=app-route.runtime.dev.js.map"], + "post_context": [ + "//# sourceMappingURL=app-route.runtime.dev.js.map" + ], "pre_context": [ "(()=>{var e={\"./dist/compiled/@edge-runtime/cookies/index.js\":e=>{\"use strict\";var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor {snip}", " * cookie", @@ -409,159 +731,71 @@ }, { "colno": 10, - "filename": "[[FILENAME5]]", + "filename": "[[FILENAME14]]", "function": "Object.apply", "in_app": false, - "lineno": 70, + "lineno": 68, "module": "route.ts" }, { - "colno": 78, - "filename": "[[FILENAME6]]", + "colno": 52, + "filename": "[[FILENAME15]]", "function": "Object.apply", "in_app": false, - "lineno": 37, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME7]]", - "function": "withIsolationScope", - "in_app": false, - "lineno": 244, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", - "in_app": false, - "lineno": 346, - "module": "node:async_hooks" - }, - { - "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 12, - "filename": "[[FILENAME7]]", - "function": "eval", - "in_app": false, - "lineno": 245, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 75, - "filename": "[[FILENAME6]]", - "function": "eval", - "in_app": false, - "lineno": 43, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" - }, - { - "colno": 70, - "filename": "[[FILENAME10]]", - "function": "continueTrace", - "in_app": false, - "lineno": 289, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", - "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" - }, - { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", - "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 14, - "filename": "[[FILENAME2]]", - "function": "AsyncLocalStorage.run", + "colno": 17, + "filename": "[[FILENAME16]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", "in_app": false, - "lineno": 346, - "module": "node:async_hooks" + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" }, { "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", + "filename": "[[FILENAME17]]", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" }, { - "colno": 12, + "colno": 28, "filename": "[[FILENAME10]]", - "function": "eval", + "function": "Object.withIsolationScope", "in_app": false, - "lineno": 290, - "module": "@sentry.core.esm.tracing:trace" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 83, - "filename": "[[FILENAME6]]", - "function": "eval", + "colno": 54, + "filename": "[[FILENAME13]]", + "function": "ContextAPI.with", "in_app": false, - "lineno": 50, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" }, { - "colno": 70, + "colno": 24, "filename": "[[FILENAME10]]", - "function": "startSpan", - "in_app": false, - "lineno": 101, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 36, - "filename": "[[FILENAME8]]", - "function": "runWithAsyncContext", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 799, - "module": "@sentry.core.esm:hub" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 25, - "filename": "[[FILENAME9]]", - "function": "Object.runWithAsyncContext", + "colno": 40, + "filename": "[[FILENAME11]]", + "function": "SentryContextManager.with", "in_app": false, - "lineno": 48, - "module": "@sentry.node.esm.async:hooks" + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" }, { "colno": 14, - "filename": "[[FILENAME2]]", + "filename": "[[FILENAME7]]", "function": "AsyncLocalStorage.run", "in_app": false, "lineno": 346, @@ -569,90 +803,58 @@ }, { "colno": 14, - "filename": "[[FILENAME9]]", - "function": "eval", - "in_app": false, - "lineno": 49, - "module": "@sentry.node.esm.async:hooks" - }, - { - "colno": 66, "filename": "[[FILENAME10]]", "function": "eval", "in_app": false, - "lineno": 102, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 18, - "filename": "[[FILENAME7]]", - "function": "withScope", - "in_app": false, - "lineno": 214, - "module": "@sentry.core.esm:exports" - }, - { - "colno": 28, - "filename": "[[FILENAME8]]", - "function": "Hub.withScope", - "in_app": false, - "lineno": 216, - "module": "@sentry.core.esm:hub" + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" }, { - "colno": 98, - "filename": "[[FILENAME10]]", + "colno": 24, + "filename": "[[FILENAME15]]", "function": "eval", "in_app": false, - "lineno": 118, - "module": "@sentry.core.esm.tracing:trace" - }, - { - "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", - "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 15, - "filename": "[[FILENAME10]]", - "function": "status.status", + "colno": 10, + "filename": "[[FILENAME15]]", + "function": "startOrUpdateSpan", "in_app": false, - "lineno": 119, - "module": "@sentry.core.esm.tracing:trace" + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { - "colno": 108, - "filename": "[[FILENAME6]]", + "colno": 41, + "filename": "[[FILENAME15]]", "function": "eval", "in_app": false, - "lineno": 60, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 26, - "filename": "[[FILENAME11]]", - "function": "handleCallbackErrors", + "filename": "[[FILENAME18]]", + "function": "Object.handleCallbackErrors", "in_app": false, - "lineno": 29, - "module": "@sentry.core.esm.utils:handleCallbackErrors" + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" }, { - "colno": 44, - "filename": "[[FILENAME6]]", + "colno": 38, + "filename": "[[FILENAME15]]", "function": "eval", "in_app": false, - "lineno": 61, - "module": "@sentry.nextjs.esm.common:wrapRouteHandlerWithSentry" + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" }, { "colno": 86, - "filename": "[[FILENAME5]]", + "filename": "[[FILENAME14]]", "function": "GET$1", "in_app": false, - "lineno": 24, + "lineno": 22, "module": "route.ts" } ] @@ -670,6 +872,7 @@ "accept": "*/*", "accept-encoding": "gzip, deflate, br", "accept-language": "en-US,en;q=0.5", + "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=7cd7e0c3aefe457d9b521e2faee8e354", "cache-control": "no-cache", "connection": "keep-alive", "host": "localhost:3030", @@ -678,6 +881,7 @@ "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", + "sentry-trace": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", "user-agent": "[[user-agent]]", "x-forwarded-for": "::ffff:127.0.0.1", "x-forwarded-host": "localhost:3030", @@ -693,35 +897,41 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "tags": { - "runtime": "node", - "transaction": "GET /api/test-param-error/[param]" - }, "timestamp": "[[timestamp]]", - "transaction": " " + "transaction": "GET /api/test-param-error/[param]" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--transaction.json index 2f8e330..1717b20 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--transaction.json @@ -4,16 +4,13 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { "environment": "qa", "public_key": "[[publicKey]]", - "sample_rate": "1", - "sampled": "true", - "trace_id": "[[ID2]]", - "transaction": "GET /api/test-param-error/[param]" + "trace_id": "[[ID2]]" } }, { @@ -24,324 +21,38 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 251ms (2129 modules)", "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-param-error%2F%5Bparam%5D%2Froute.ts&methodName=GET%241&arguments=&lineNumber=24&column=86" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=60&column=108" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=61&column=44" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=startSpan&arguments=&lineNumber=101&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=290&column=12" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=50&column=83" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=continueTrace&arguments=&lineNumber=289&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=43&column=75" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=eval&arguments=&lineNumber=245&column=12" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withIsolationScope&arguments=&lineNumber=244&column=70" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=Object.apply&arguments=&lineNumber=37&column=78" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-param-error%2F%5Bparam%5D%2Froute.ts&methodName=Object.apply&arguments=&lineNumber=70&column=10" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" - }, - { - "category": "http", - "data": { - "method": "GET", - "url": "http://localhost:3000/__nextjs_original-stack-frame?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36" - }, - "level": "error", - "timestamp": "[[timestamp]]", - "type": "http" } ], "contexts": { @@ -369,13 +80,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-param-error/[param]/route", + "http.status_code": 200, + "http.target": "/api/test-param-error/1337", + "next.route": "/api/test-param-error/[param]/route", + "next.rsc": false, + "next.span_name": "GET /api/test-param-error/[param]/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -383,11 +113,9 @@ }, "op": "http.server", "origin": "auto.function.nextjs", - "span_id": "[[ID3]]", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -395,28 +123,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -424,519 +130,98 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", "spans": [ { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-param-error%2F%5Bparam%5D%2Froute.ts&methodName=GET%241&arguments=&lineNumber=24&column=86", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=61&column=44", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.route": "/api/test-param-error/[param]", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", + "description": "resolve page components", + "origin": "manual", + "parent_span_id": "[[ID4]]", "span_id": "[[ID5]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.route": "/api/test-param-error/[param]/route", + "next.span_name": "executing api route (app) /api/test-param-error/[param]/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", + "description": "executing api route (app) /api/test-param-error/[param]/route", + "origin": "manual", + "parent_span_id": "[[ID4]]", "span_id": "[[ID6]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=60&column=108", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", "span_id": "[[ID7]]", "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=status.status&arguments=&lineNumber=119&column=15", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID8]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=118&column=98", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID9]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=Hub.withScope&arguments=&lineNumber=216&column=28", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID10]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withScope&arguments=&lineNumber=214&column=18", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID11]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=102&column=66", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID12]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID13]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID14]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID15]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=startSpan&arguments=&lineNumber=101&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID16]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=50&column=83", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID17]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=eval&arguments=&lineNumber=290&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID18]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Ftracing%2Ftrace.js&methodName=continueTrace&arguments=&lineNumber=289&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID19]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=eval&arguments=&lineNumber=43&column=75", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID20]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=eval&arguments=&lineNumber=245&column=12", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID21]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fexports.js&methodName=withIsolationScope&arguments=&lineNumber=244&column=70", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID22]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fnode_modules%2F%40sentry%2Fnextjs%2Fesm%2Fcommon%2FwrapRouteHandlerWithSentry.js&methodName=Object.apply&arguments=&lineNumber=37&column=78", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID23]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F.%2Fapp%2Fapi%2Ftest-param-error%2F%5Bparam%5D%2Froute.ts&methodName=Object.apply&arguments=&lineNumber=70&column=10", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID24]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Futils%2FhandleCallbackErrors.js&methodName=handleCallbackErrors&arguments=&lineNumber=29&column=26", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID25]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID26]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=eval&arguments=&lineNumber=49&column=14", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID27]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID28]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fnode%2Fesm%2Fasync%2Fhooks.js&methodName=Object.runWithAsyncContext&arguments=&lineNumber=48&column=25", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID29]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID30]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]" - }, - { - "data": { - "http.method": "GET", - "http.query": "?isServer=false&isEdgeServer=false&isAppDirectory=true&errorMessage=Error%3A+This+is+an+error&file=webpack-internal%3A%2F%2F%2F%28rsc%29%2F..%2F..%2Fnode_modules%2F%40sentry%2Fcore%2Fesm%2Fhub.js&methodName=runWithAsyncContext&arguments=&lineNumber=799&column=36", - "sentry.op": "http.client", - "sentry.origin": "auto.http.node.undici" - }, - "description": "GET http://localhost:3000/__nextjs_original-stack-frame", - "op": "http.client", - "origin": "auto.http.node.undici", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID31]]", - "start_timestamp": "[[timestamp]]", - "status": "internal_error", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" } ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-param-error/[param]" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-param-error/[param]", + "transaction": "GET /api/test-param-error/[param]/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]--transaction.json index f442e1d..472356b 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,37 +21,25 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" } ], @@ -80,13 +68,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-param-success/[param]/route", + "http.status_code": 200, + "http.target": "/api/test-param-success/1337", + "next.route": "/api/test-param-success/[param]/route", + "next.rsc": false, + "next.span_name": "GET /api/test-param-success/[param]/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -97,9 +104,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -107,30 +111,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -138,42 +118,98 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "spans": [], + "spans": [ + { + "data": { + "next.route": "/api/test-param-success/[param]", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "resolve page components", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.route": "/api/test-param-success/[param]/route", + "next.span_name": "executing api route (app) /api/test-param-success/[param]/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "executing api route (app) /api/test-param-success/[param]/route", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + } + ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-param-success/[param]" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-param-success/[param]", + "transaction": "GET /api/test-param-success/[param]/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-success--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-success--transaction.json index 24ef240..467fa36 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-success--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-success--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,25 +21,19 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" } ], @@ -68,13 +62,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-success/route", + "http.status_code": 200, + "http.target": "/api/test-success", + "next.route": "/api/test-success/route", + "next.rsc": false, + "next.span_name": "GET /api/test-success/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -85,9 +98,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -95,30 +105,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -126,42 +112,98 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", - "spans": [], + "spans": [ + { + "data": { + "next.route": "/api/test-success", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "resolve page components", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.route": "/api/test-success/route", + "next.span_name": "executing api route (app) /api/test-success/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "executing api route (app) /api/test-success/route", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + } + ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-success" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-success", + "transaction": "GET /api/test-success/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual--transaction.json b/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual--transaction.json index 7d0a0c3..b9fcf48 100644 --- a/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual--transaction.json +++ b/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual--transaction.json @@ -4,7 +4,7 @@ "event_id": "[[ID1]]", "sdk": { "name": "sentry.javascript.nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "sent_at": "[[ISODateString]]", "trace": { @@ -21,49 +21,31 @@ { "category": "console", "level": "log", - "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling / ...", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled / in 3s (2143 modules)", + "message": " \u001b[37m\u001b[1m○\u001b[22m\u001b[39m Compiling /api/test-success ...", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /favicon.ico in 181ms (1216 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 1849ms (2123 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success in 130ms (1218 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 481ms (2125 modules)", "timestamp": "[[timestamp]]" }, { "category": "console", "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error in 300ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 237ms (1190 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-error/[param] in 134ms (1192 modules)", - "timestamp": "[[timestamp]]" - }, - { - "category": "console", - "level": "log", - "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-success-manual in 165ms (1192 modules)", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 modules)", "timestamp": "[[timestamp]]" } ], @@ -92,13 +74,32 @@ "name": "macOS", "version": "14.2" }, + "otel": { + "resource": { + "service.name": "node", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0" + } + }, "runtime": { "name": "node", "version": "v20.12.1" }, "trace": { "data": { + "http.method": "GET", "http.response.status_code": 200, + "http.route": "/api/test-success-manual/route", + "http.status_code": 200, + "http.target": "/api/test-success-manual", + "next.route": "/api/test-success-manual/route", + "next.rsc": false, + "next.span_name": "GET /api/test-success-manual/route", + "next.span_type": "BaseServer.handleRequest", + "otel.kind": "SERVER", "sentry.op": "http.server", "sentry.origin": "auto.function.nextjs", "sentry.sample_rate": 1, @@ -109,9 +110,6 @@ "parent_span_id": "[[ID3]]", "span_id": "[[ID4]]", "status": "ok", - "tags": { - "http.status_code": "200" - }, "trace_id": "[[ID2]]" } }, @@ -119,30 +117,6 @@ "event_id": "[[ID1]]", "modules": {}, "platform": "node", - "request": { - "cookies": {}, - "headers": { - "accept": "*/*", - "accept-encoding": "gzip, deflate, br", - "accept-language": "en-US,en;q=0.5", - "baggage": "sentry-environment=qa,sentry-public_key=3b6c388182fb435097f41d181be2b2ba,sentry-trace_id=2cdc9402e1174cd08ca2f51a4804cd16", - "cache-control": "no-cache", - "connection": "keep-alive", - "host": "localhost:3030", - "pragma": "no-cache", - "referer": "http://localhost:3030/", - "sec-fetch-dest": "empty", - "sec-fetch-mode": "cors", - "sec-fetch-site": "same-origin", - "sentry-trace": "2cdc9402e1174cd08ca2f51a4804cd16-abe8d663cfdee8d7", - "user-agent": "[[user-agent]]", - "x-forwarded-for": "::ffff:127.0.0.1", - "x-forwarded-host": "localhost:3030", - "x-forwarded-port": "3030", - "x-forwarded-proto": "http" - }, - "url": "http://localhost:3030" - }, "sdk": { "integrations": [ "InboundFilters", @@ -150,67 +124,126 @@ "LinkedErrors", "RequestData", "Console", - "Undici", + "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "RewriteFrames", - "Http", - "OnUncaughtException" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" ], "name": "sentry.javascript.nextjs", "packages": [ { "name": "npm:@sentry/nextjs", - "version": "7.110.1" + "version": "8.0.0-beta.1" }, { "name": "npm:@sentry/node", - "version": "7.110.1" + "version": "8.0.0-beta.1" } ], - "version": "7.110.1" + "version": "8.0.0-beta.1" }, "server_name": "D9M3PY4LQ7.local", "spans": [ { "data": { + "next.route": "/api/test-success-manual", + "next.span_name": "resolve page components", + "next.span_type": "NextNodeServer.findPageComponents", + "otel.kind": "INTERNAL", "sentry.origin": "manual" }, - "description": "test-span", + "description": "resolve page components", "origin": "manual", "parent_span_id": "[[ID4]]", "span_id": "[[ID5]]", "start_timestamp": "[[timestamp]]", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" }, { "data": { + "next.route": "/api/test-success-manual/route", + "next.span_name": "executing api route (app) /api/test-success-manual/route", + "next.span_type": "AppRouteRouteHandlers.runHandler", + "otel.kind": "INTERNAL", "sentry.origin": "manual" }, - "description": "child-span", + "description": "executing api route (app) /api/test-success-manual/route", "origin": "manual", - "parent_span_id": "[[ID5]]", + "parent_span_id": "[[ID4]]", "span_id": "[[ID6]]", "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "test-span", + "origin": "manual", + "parent_span_id": "[[ID6]]", + "span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "child-span", + "origin": "manual", + "parent_span_id": "[[ID7]]", + "span_id": "[[ID8]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", + "timestamp": "[[timestamp]]", + "trace_id": "[[ID2]]" + }, + { + "data": { + "next.span_name": "start response", + "next.span_type": "NextNodeServer.startResponse", + "otel.kind": "INTERNAL", + "sentry.origin": "manual" + }, + "description": "start response", + "origin": "manual", + "parent_span_id": "[[ID4]]", + "span_id": "[[ID9]]", + "start_timestamp": "[[timestamp]]", + "status": "ok", "timestamp": "[[timestamp]]", "trace_id": "[[ID2]]" } ], "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200", - "runtime": "node", - "transaction": "GET /api/test-success-manual" - }, "timestamp": "[[timestamp]]", - "transaction": "GET /api/test-success-manual", + "transaction": "GET /api/test-success-manual/route", "transaction_info": { "source": "route" }, "type": "transaction" } -] +] \ No newline at end of file diff --git a/payload-files/readme.md b/payload-files/readme.md index adff31f..11a383d 100644 --- a/payload-files/readme.md +++ b/payload-files/readme.md @@ -10,3 +10,4 @@ the generated files go. ### Next.js - v7: "transaction" is " " in sent event (when error happens) +- v8: '/route' is added to transaction name for route handlers