From 38281b17438167b8be12d4ed4d01c44040961170 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Thu, 11 Apr 2024 17:22:32 +0200 Subject: [PATCH 1/9] upgrade to v8 --- apps/express/package.json | 2 +- apps/express/src/app.ts | 13 +- utils/event-proxy-server/package.json | 4 +- yarn.lock | 1064 ++++++++++++++++++++++++- 4 files changed, 1041 insertions(+), 42 deletions(-) diff --git a/apps/express/package.json b/apps/express/package.json index 78c1de7..9fa3c4b 100644 --- a/apps/express/package.json +++ b/apps/express/package.json @@ -15,7 +15,7 @@ "extends": "../../package.json" }, "dependencies": { - "@sentry/node": "^7.109.0", + "@sentry/node": "^8.0.0-alpha.9", "express": "^4.19.2" }, "devDependencies": { diff --git a/apps/express/src/app.ts b/apps/express/src/app.ts index 90a5575..430e095 100644 --- a/apps/express/src/app.ts +++ b/apps/express/src/app.ts @@ -1,4 +1,15 @@ import * as Sentry from '@sentry/node'; + +Sentry.init({ + environment: 'qa', // dynamic sampling bias to keep transactions + dsn: process.env.E2E_TEST_DSN, + includeLocalVariables: true, + debug: true, + tunnel: `http://localhost:3031/`, // proxy server + tracesSampleRate: 1, +}); + +// can use `import` instead of `require` because of `'esModuleInterop': true` in tsconfig.json import express from 'express'; declare global { @@ -91,7 +102,7 @@ app.get('/test-local-variables-caught', function (req, res) { res.send({ exceptionId, randomVariableToRecord }); }); -app.use(Sentry.Handlers.errorHandler()); +Sentry.setupExpressErrorHandler(app); // @ts-ignore app.use(function onError(err, req, res, next) { diff --git a/utils/event-proxy-server/package.json b/utils/event-proxy-server/package.json index aece06a..42cdb72 100644 --- a/utils/event-proxy-server/package.json +++ b/utils/event-proxy-server/package.json @@ -16,8 +16,8 @@ "clean": "rimraf -g ./node_modules ./build" }, "dependencies": { - "@sentry/types": "7.109.0", - "@sentry/utils": "7.109.0" + "@sentry/types": "8.0.0-alpha.9", + "@sentry/utils": "8.0.0-alpha.9" }, "volta": { "extends": "../../package.json" diff --git a/yarn.lock b/yarn.lock index 28a4a90..5090b49 100644 --- a/yarn.lock +++ b/yarn.lock @@ -81,6 +81,97 @@ __metadata: languageName: node linkType: hard +"@hapi/b64@npm:5.x.x": + version: 5.0.0 + resolution: "@hapi/b64@npm:5.0.0" + dependencies: + "@hapi/hoek": "npm:9.x.x" + checksum: 10c0/01389a2de70a3d48252f71786ee6b9487d571f999a46ea80b3481f84af66974e551e751286c85612d570ef714b35c07f9b71f765a05816584062f2726ad69ad8 + languageName: node + linkType: hard + +"@hapi/boom@npm:9.x.x, @hapi/boom@npm:^9.0.0": + version: 9.1.4 + resolution: "@hapi/boom@npm:9.1.4" + dependencies: + "@hapi/hoek": "npm:9.x.x" + checksum: 10c0/49bb99443e7bdbbdc87ee8de97cd64351e173b57d7c59061c69972d2de77fb98f2f440c1be42b37e1ac04f57c60fbb79f8fd3e9e5695360add560c37e2d584db + languageName: node + linkType: hard + +"@hapi/bourne@npm:2.x.x": + version: 2.1.0 + resolution: "@hapi/bourne@npm:2.1.0" + checksum: 10c0/0dddacffeb1874d60dd9309f2d8f7103d971c21c4bfb0cfadb406f1dcc0bc00c0b5eed09fbd45a27fe179b6c9f99015500c2197213914d6f93efa584b9313ffd + languageName: node + linkType: hard + +"@hapi/cryptiles@npm:5.x.x": + version: 5.1.0 + resolution: "@hapi/cryptiles@npm:5.1.0" + dependencies: + "@hapi/boom": "npm:9.x.x" + checksum: 10c0/844b337d94febcd0b40990fcdbcb12bf06f19afc3c3a555a1f73d586250c5227f3a3368ac9a445f53d6bdef7acf0267376087280dfc6917387012d61b307f8b7 + languageName: node + linkType: hard + +"@hapi/hoek@npm:9.x.x, @hapi/hoek@npm:^9.0.0, @hapi/hoek@npm:^9.3.0": + version: 9.3.0 + resolution: "@hapi/hoek@npm:9.3.0" + checksum: 10c0/a096063805051fb8bba4c947e293c664b05a32b47e13bc654c0dd43813a1cec993bdd8f29ceb838020299e1d0f89f68dc0d62a603c13c9cc8541963f0beca055 + languageName: node + linkType: hard + +"@hapi/iron@npm:^6.0.0": + version: 6.0.0 + resolution: "@hapi/iron@npm:6.0.0" + dependencies: + "@hapi/b64": "npm:5.x.x" + "@hapi/boom": "npm:9.x.x" + "@hapi/bourne": "npm:2.x.x" + "@hapi/cryptiles": "npm:5.x.x" + "@hapi/hoek": "npm:9.x.x" + checksum: 10c0/81678335c546165440b7214d5275fa58313ff81b4e928ef7862dfe14b2f03269db64a7c8d251e277683d007c8413a921db82c9d46c394159afa625d919c9d3cb + languageName: node + linkType: hard + +"@hapi/podium@npm:^4.1.3": + version: 4.1.3 + resolution: "@hapi/podium@npm:4.1.3" + dependencies: + "@hapi/hoek": "npm:9.x.x" + "@hapi/teamwork": "npm:5.x.x" + "@hapi/validate": "npm:1.x.x" + checksum: 10c0/483b999707d5214291ef2c51d5313dfe5d48968411369fc52258f07e230836c070fdd5402a6d85ed667de9e72806bb45c052e17b57dff07543b40b0b7e72bed0 + languageName: node + linkType: hard + +"@hapi/teamwork@npm:5.x.x": + version: 5.1.1 + resolution: "@hapi/teamwork@npm:5.1.1" + checksum: 10c0/8174a4693a00cb82474d75b0296b345b7e1c020dc440a5dc21f4f5a091306068553faab70dc6cf642ac36f49e20ee1e1aed6a81f99ffca5b1a42633d0fa437bb + languageName: node + linkType: hard + +"@hapi/topo@npm:^5.0.0, @hapi/topo@npm:^5.1.0": + version: 5.1.0 + resolution: "@hapi/topo@npm:5.1.0" + dependencies: + "@hapi/hoek": "npm:^9.0.0" + checksum: 10c0/b16b06d9357947149e032bdf10151eb71aea8057c79c4046bf32393cb89d0d0f7ca501c40c0f7534a5ceca078de0700d2257ac855c15e59fe4e00bba2f25c86f + languageName: node + linkType: hard + +"@hapi/validate@npm:1.x.x": + version: 1.1.3 + resolution: "@hapi/validate@npm:1.1.3" + dependencies: + "@hapi/hoek": "npm:^9.0.0" + "@hapi/topo": "npm:^5.0.0" + checksum: 10c0/dff9f31a5cae3356ae98cef99d5c5cf9c056b452a22755945ed27df987f5a690f6372fcd7f55c319c8c546906b5943fd6783d5620a0f0369d243a2b47f0fbee7 + languageName: node + linkType: hard + "@humanwhocodes/config-array@npm:^0.12.3": version: 0.12.3 resolution: "@humanwhocodes/config-array@npm:0.12.3" @@ -193,6 +284,373 @@ __metadata: languageName: node linkType: hard +"@opentelemetry/api@npm:1.7.0": + version: 1.7.0 + resolution: "@opentelemetry/api@npm:1.7.0" + checksum: 10c0/b5468115d1cec45dd2b86b39210fdc03620a93b9f07c3d20b14081f75e2f7c9b37ceceeb60d5f35c6d4f9819ae07eee0b4874e53e7362376db21db1e00f483f8 + languageName: node + linkType: hard + +"@opentelemetry/api@npm:^1.6.0": + version: 1.8.0 + resolution: "@opentelemetry/api@npm:1.8.0" + checksum: 10c0/66d5504bfbf9c19a14ea549f5fca975a73a5e1e8a1e40a6dc2d662893c942b9ba66c009262816dee2b9ffd0267acd707ec692eba20db11a09d4ee114c00dc161 + languageName: node + linkType: hard + +"@opentelemetry/context-async-hooks@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/context-async-hooks@npm:1.21.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/568bfdb76fa423a22f05a78b2a722dec64698c93a2f7e67ebc707c6f0c152b975ece9c93d472dfe58b1a479e144e76c7d6c419579db8310f5e23f3cebbe1346a + languageName: node + linkType: hard + +"@opentelemetry/core@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/core@npm:1.20.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.20.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/70091bd7756abfce0cdd1fbf0fc2e03c4d84660a115effce99784b7f6a628857bdf9b89aa3dff3b745d82ea3004ac548fa094954395fc4b7613bd60a34d46099 + languageName: node + linkType: hard + +"@opentelemetry/core@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/core@npm:1.21.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.21.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/e6f1adcd224944f725ccfc4a337cb20405cb2081fa0a2a66a47a9044b248f47318f43c6d140e8ebbd4082d8657894e9d1a8e1a10db112ca8896c6bc4494c346c + languageName: node + linkType: hard + +"@opentelemetry/core@npm:1.23.0, @opentelemetry/core@npm:^1.1.0, @opentelemetry/core@npm:^1.8.0": + version: 1.23.0 + resolution: "@opentelemetry/core@npm:1.23.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.23.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.9.0" + checksum: 10c0/b68442034315c182fd5e6c1bcca7b249a4995dc219c6935718fb143d24b13cee5e7884c6750b9f55ae8f4477b7edb9b3140c6663112485b49f2a9bc5a243f5f2 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-express@npm:0.35.0": + version: 0.35.0 + resolution: "@opentelemetry/instrumentation-express@npm:0.35.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/361b1c7ea191979645c31224e3e9a20e4d2aab26101bd70816b76ecc6ec34858f97bacf4c5c03d912f2a8cd246792e7f4883415ad977f97d24f8e1210f2198d4 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-fastify@npm:0.33.0": + version: 0.33.0 + resolution: "@opentelemetry/instrumentation-fastify@npm:0.33.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/2b03e742e43826ffcd67cb7653018d6f966517e740ad6d282a2ae8da38265c21aca01e89f26a3a50b1911162380288adb984958a70625f10a4182d5adccbbeff + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-graphql@npm:0.37.0": + version: 0.37.0 + resolution: "@opentelemetry/instrumentation-graphql@npm:0.37.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/8501e09d5aaac4558b183c76e423439a2ed743355e251b6d1de306efdc9366b971bc849c1440e77c94b0224ef75348d97ccb1499b1b7098efe2c314294eb0e84 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-hapi@npm:0.34.0": + version: 0.34.0 + resolution: "@opentelemetry/instrumentation-hapi@npm:0.34.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + "@types/hapi__hapi": "npm:20.0.13" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/1c789e0cc4e6baa99b1c2044d5e9022d22ca22778280dbd5169f7cfa08a069ddb999c1544f04c2580ebfe06fd17dd0c5bdaa9b77d6851759abb0d7a4ecdc15b5 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-http@npm:0.48.0": + version: 0.48.0 + resolution: "@opentelemetry/instrumentation-http@npm:0.48.0" + dependencies: + "@opentelemetry/core": "npm:1.21.0" + "@opentelemetry/instrumentation": "npm:0.48.0" + "@opentelemetry/semantic-conventions": "npm:1.21.0" + semver: "npm:^7.5.2" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/c02e3b4168d709c453c14e29d11e37e9c29b1791c5266948f0ead77777c1e343c6450e9851558790596a311bf4bf068b685a0314713d3fda083994c5463fae28 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-koa@npm:0.37.0": + version: 0.37.0 + resolution: "@opentelemetry/instrumentation-koa@npm:0.37.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + "@types/koa": "npm:2.14.0" + "@types/koa__router": "npm:12.0.3" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/bb7bc4a5841fc1172597828d05ee44803510f28907e4b1f01ccf81801d407e15b8f6e08c4276425e8f961ad127c82bfe9f6ae21324dfc5a9b2302dd08428e617 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mongodb@npm:0.39.0": + version: 0.39.0 + resolution: "@opentelemetry/instrumentation-mongodb@npm:0.39.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/sdk-metrics": "npm:^1.9.1" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/7dc7fe5fb9c18cdbdd882ccc83ecf9587e4822cfa5b730bd8b437029cc8df6d3e4e4838e3e2c4c04d568b88a053006328ed1055bf874d5ee6b5eefeabcd15386 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mongoose@npm:0.35.0": + version: 0.35.0 + resolution: "@opentelemetry/instrumentation-mongoose@npm:0.35.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/dac272772644525af92f6aebc9618f858b13a0f89ddffd4144621adfb6e8fd5309b69612abeb94523bc7f369a94d59710174975325cbbdc68372517230cca1c8 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mysql2@npm:0.35.0": + version: 0.35.0 + resolution: "@opentelemetry/instrumentation-mysql2@npm:0.35.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + "@opentelemetry/sql-common": "npm:^0.40.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/c83d031df6db68efa76450b8ca13f1f76fd106bab7b4dcd0932f44966c8018cd7afa13994bd9ad1a2334d9b8622f6d58448d45212ea3b8cffe711d971b64ca70 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mysql@npm:0.35.0": + version: 0.35.0 + resolution: "@opentelemetry/instrumentation-mysql@npm:0.35.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + "@types/mysql": "npm:2.15.22" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/24f92429f71df9e56a7875aa57a4e694260bb202c9110983b432190be7f6dc211a987e4ba3e7d572d4e53fa1f52a227d6e76c70767139a0c34304aec06540c72 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-nestjs-core@npm:0.34.0": + version: 0.34.0 + resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.34.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/f6929e44b6cb85488f35fc059a2b689b7406c402ba83226a21a25e9942d8e11eae208de259cd080f7f459a0de590220d248d2dc9dc7f957f2521c5923d815497 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-pg@npm:0.38.0": + version: 0.38.0 + resolution: "@opentelemetry/instrumentation-pg@npm:0.38.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.48.0" + "@opentelemetry/semantic-conventions": "npm:^1.0.0" + "@opentelemetry/sql-common": "npm:^0.40.0" + "@types/pg": "npm:8.6.1" + "@types/pg-pool": "npm:2.0.4" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/bac92340d2ca5b24b83a79d10d0f1822a4960cba996f510bb132bce8f8df3e3e2e02aaa1eadff7ceffa41d4a4cf1b64f13f6531b60afbd1e13ff091f4b38001e + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/instrumentation@npm:0.47.0" + dependencies: + "@types/shimmer": "npm:^1.0.2" + import-in-the-middle: "npm:^1.7.2" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/cc4c0ed030ec60c58d805d96c509e5ce1d33ae40b64622824319ed24d9e7c9e9a7c0864360c08107126ab29c026848a30b29a91295b9007aa21d0a67dc200a8e + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:0.48.0, @opentelemetry/instrumentation@npm:^0.48.0": + version: 0.48.0 + resolution: "@opentelemetry/instrumentation@npm:0.48.0" + dependencies: + "@types/shimmer": "npm:^1.0.2" + import-in-the-middle: "npm:1.7.1" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/627d4246c1a6d62d0b1b96d967c62284bf98cefae76f5c5b07f827473cec89030121d343c0c0631f251e8d52cd01822bc4af704970d9c0988be6b4d0c226c8b4 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:^0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation@npm:0.43.0" + dependencies: + "@types/shimmer": "npm:^1.0.2" + import-in-the-middle: "npm:1.4.2" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/78682576ec5094eaa20e5e6766f93329d495cb4a58cbc56a95752ff15bfc58a511ffe0981b596eb7b893014441f4c748028448b35ff5e37f82b1e1917f9610c7 + languageName: node + linkType: hard + +"@opentelemetry/resources@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/resources@npm:1.20.0" + dependencies: + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/4a8a030e2e627a32c1f32e02dd0093d93d2202ea646035f84eae71d9ec9417d3d0d82d110cbf5b79bec2ea918f97dcd62b4f09ce22936436f34bba42b7a7576a + languageName: node + linkType: hard + +"@opentelemetry/resources@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/resources@npm:1.21.0" + dependencies: + "@opentelemetry/core": "npm:1.21.0" + "@opentelemetry/semantic-conventions": "npm:1.21.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/0ac61b835e20d3323e1e6a5c74cbb64a9200e165724d6d1449f01bd18a0c5af3da854dacdc729cdb4ed00cb740639c76d6cd7c638ad6efffc23f9da0de36406a + languageName: node + linkType: hard + +"@opentelemetry/resources@npm:1.23.0": + version: 1.23.0 + resolution: "@opentelemetry/resources@npm:1.23.0" + dependencies: + "@opentelemetry/core": "npm:1.23.0" + "@opentelemetry/semantic-conventions": "npm:1.23.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.9.0" + checksum: 10c0/b1abc023f2f32ed6f328f27821ae70b7a936964a19d29246072e11a9abdf588158ba65a1e9f1177933868906d53d836c837304bb98d37231a01e31bc77b38476 + languageName: node + linkType: hard + +"@opentelemetry/sdk-metrics@npm:^1.9.1": + version: 1.23.0 + resolution: "@opentelemetry/sdk-metrics@npm:1.23.0" + dependencies: + "@opentelemetry/core": "npm:1.23.0" + "@opentelemetry/resources": "npm:1.23.0" + lodash.merge: "npm:^4.6.2" + peerDependencies: + "@opentelemetry/api": ">=1.3.0 <1.9.0" + checksum: 10c0/dd70dc372750c23cda642a4a52f24c69633f21186360104ce7857001edcfc02a30336ad673c7ec99b61eca0664b0f5ec9a7a01a4a1992347982cc0f33aaf6e60 + languageName: node + linkType: hard + +"@opentelemetry/sdk-trace-base@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/sdk-trace-base@npm:1.20.0" + dependencies: + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/d92dea3bb9eba044fd20549200c4ecf66b935d7568be1eaa00c51ddfb9b66505baaaacead2a0ab6624def79e1b2a6e22ce487e3c9a91c7ec9d951f42b6d6e171 + languageName: node + linkType: hard + +"@opentelemetry/sdk-trace-base@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/sdk-trace-base@npm:1.21.0" + dependencies: + "@opentelemetry/core": "npm:1.21.0" + "@opentelemetry/resources": "npm:1.21.0" + "@opentelemetry/semantic-conventions": "npm:1.21.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.8.0" + checksum: 10c0/0d68bfb614c45713185d20ad6aa766f38060fc5716d4fd196bb3195386f8bf22e3a9a56d3ec2a2c6753f9edb0d0b0e780f0d271a2d50ca866440ae624b4268ab + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.20.0" + checksum: 10c0/71299d2040b1d3f665128107fda6bde818244e7a49932d7e4ac451c088fd4116ace91d119376df30c15eb1a61da76ab50edade2c90214ba7db9284d4c3e43197 + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.21.0": + version: 1.21.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.21.0" + checksum: 10c0/ba1eabdbe5cdc04cbb7ce28f2df91fc95000e14861eb93937cfc7768d29c7e57692eb4fb2645f6ba87ae046acc1d1e27e4e6415e46e03015d54a6fdaf8e9635b + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.23.0, @opentelemetry/semantic-conventions@npm:^1.0.0, @opentelemetry/semantic-conventions@npm:^1.17.0": + version: 1.23.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.23.0" + checksum: 10c0/2712f3874a45607bc7024e0d1a01c91a7e4671e7b925e2fcc79227f350c16c59a29ba36d8ab5f0842fe003ff464d24ab576033b35390316886bb120477f96ca6 + languageName: node + linkType: hard + +"@opentelemetry/sql-common@npm:^0.40.0": + version: 0.40.0 + resolution: "@opentelemetry/sql-common@npm:0.40.0" + dependencies: + "@opentelemetry/core": "npm:^1.1.0" + peerDependencies: + "@opentelemetry/api": ^1.1.0 + checksum: 10c0/c82454ca9ce69564f8a19e9d47bfb6b7fa96720dc178c04df56de0c7666fba535f62c638b2c3f03832f61872adf258178c7f9787823d64e0483ad780a25daeff + languageName: node + linkType: hard + "@pkgjs/parseargs@npm:^0.11.0": version: 0.11.0 resolution: "@pkgjs/parseargs@npm:0.11.0" @@ -200,52 +658,115 @@ __metadata: languageName: node linkType: hard -"@sentry-internal/tracing@npm:7.109.0": - version: 7.109.0 - resolution: "@sentry-internal/tracing@npm:7.109.0" +"@prisma/instrumentation@npm:5.9.0": + version: 5.9.0 + resolution: "@prisma/instrumentation@npm:5.9.0" + dependencies: + "@opentelemetry/api": "npm:1.7.0" + "@opentelemetry/instrumentation": "npm:0.47.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" + checksum: 10c0/4f1bf75da102e37e4a2a62859bfa08a4192698f8d56a9fa181cccf63c5868e1de81cf44c8a57366ff51e4d17474746198ec106c4e71928dbc961123ebfcd2f93 + languageName: node + linkType: hard + +"@sentry/core@npm:8.0.0-alpha.9": + version: 8.0.0-alpha.9 + resolution: "@sentry/core@npm:8.0.0-alpha.9" + dependencies: + "@sentry/types": "npm:8.0.0-alpha.9" + "@sentry/utils": "npm:8.0.0-alpha.9" + checksum: 10c0/1e465ef8cfeec57edd7ca04ac57091544934677140d3a5a1f65b4e7f516414c49909336b9a297bc95c0e3728067992b61306fd8fc61dd66e0c088fb09770164c + languageName: node + linkType: hard + +"@sentry/node@npm:^8.0.0-alpha.9": + version: 8.0.0-alpha.9 + resolution: "@sentry/node@npm:8.0.0-alpha.9" + dependencies: + "@opentelemetry/api": "npm:1.7.0" + "@opentelemetry/context-async-hooks": "npm:1.21.0" + "@opentelemetry/core": "npm:1.21.0" + "@opentelemetry/instrumentation": "npm:0.48.0" + "@opentelemetry/instrumentation-express": "npm:0.35.0" + "@opentelemetry/instrumentation-fastify": "npm:0.33.0" + "@opentelemetry/instrumentation-graphql": "npm:0.37.0" + "@opentelemetry/instrumentation-hapi": "npm:0.34.0" + "@opentelemetry/instrumentation-http": "npm:0.48.0" + "@opentelemetry/instrumentation-koa": "npm:0.37.0" + "@opentelemetry/instrumentation-mongodb": "npm:0.39.0" + "@opentelemetry/instrumentation-mongoose": "npm:0.35.0" + "@opentelemetry/instrumentation-mysql": "npm:0.35.0" + "@opentelemetry/instrumentation-mysql2": "npm:0.35.0" + "@opentelemetry/instrumentation-nestjs-core": "npm:0.34.0" + "@opentelemetry/instrumentation-pg": "npm:0.38.0" + "@opentelemetry/resources": "npm:1.21.0" + "@opentelemetry/sdk-trace-base": "npm:1.21.0" + "@opentelemetry/semantic-conventions": "npm:1.21.0" + "@prisma/instrumentation": "npm:5.9.0" + "@sentry/core": "npm:8.0.0-alpha.9" + "@sentry/opentelemetry": "npm:8.0.0-alpha.9" + "@sentry/types": "npm:8.0.0-alpha.9" + "@sentry/utils": "npm:8.0.0-alpha.9" + opentelemetry-instrumentation-fetch-node: "npm:1.1.2" + dependenciesMeta: + opentelemetry-instrumentation-fetch-node: + optional: true + checksum: 10c0/79dc8a1c33ab08e22b6a6d8afa3550f8a31ac7d99527e32fba27454472560d353185179c60868b3c894df8d8b83c4791b0df0f4e8095c758a8756a8cc708dc54 + languageName: node + linkType: hard + +"@sentry/opentelemetry@npm:8.0.0-alpha.9": + version: 8.0.0-alpha.9 + resolution: "@sentry/opentelemetry@npm:8.0.0-alpha.9" dependencies: - "@sentry/core": "npm:7.109.0" - "@sentry/types": "npm:7.109.0" - "@sentry/utils": "npm:7.109.0" - checksum: 10c0/6353e3610dc56fa55ab71f7fe7b9d1b78175512c822e4441482d67d24f80ef7d21fcbdfb125a4bc385836fdb7e966f9636217611ffbddf1202df4bc4432d6f18 + "@sentry/core": "npm:8.0.0-alpha.9" + "@sentry/types": "npm:8.0.0-alpha.9" + "@sentry/utils": "npm:8.0.0-alpha.9" + peerDependencies: + "@opentelemetry/api": ^1.0.0 + "@opentelemetry/core": ^1.0.0 + "@opentelemetry/sdk-trace-base": ^1.0.0 + "@opentelemetry/semantic-conventions": ^1.0.0 + checksum: 10c0/0e74d3a49f5dd0c20606aa94597eaf7c999d47e2d600e404a053f4dc8e417ee2966483893e8791e53a929edd7499bd435276eb2490d65115d16da8de33fcb1e2 + languageName: node + linkType: hard + +"@sentry/types@npm:8.0.0-alpha.9": + version: 8.0.0-alpha.9 + resolution: "@sentry/types@npm:8.0.0-alpha.9" + checksum: 10c0/01ce71189b811168b75da85759e855ad2400be9fec548fe2592ffe69d1f3b3a3868ba47ef85ea4bbc6e635973a22443a89a459020b17db8c17a2965b945d157a languageName: node linkType: hard -"@sentry/core@npm:7.109.0": - version: 7.109.0 - resolution: "@sentry/core@npm:7.109.0" +"@sentry/utils@npm:8.0.0-alpha.9": + version: 8.0.0-alpha.9 + resolution: "@sentry/utils@npm:8.0.0-alpha.9" dependencies: - "@sentry/types": "npm:7.109.0" - "@sentry/utils": "npm:7.109.0" - checksum: 10c0/0414c4682e27435f62d4708e0aa3c50a92d0b154e0e2d92a30a846078f4e351d1fda849a0a728f744dcf4bc1f164d4120d83600c341173645168762d0d2024af + "@sentry/types": "npm:8.0.0-alpha.9" + checksum: 10c0/703ca39d3ba8fe6658ca8090ca21ce9baa54ce694fe2913d455cde02991f472705e6a4256eb394d81145d35f28e4b80124bcd90c3dbb80916711ec1e77300f74 languageName: node linkType: hard -"@sentry/node@npm:^7.109.0": - version: 7.109.0 - resolution: "@sentry/node@npm:7.109.0" +"@sideway/address@npm:^4.1.5": + version: 4.1.5 + resolution: "@sideway/address@npm:4.1.5" dependencies: - "@sentry-internal/tracing": "npm:7.109.0" - "@sentry/core": "npm:7.109.0" - "@sentry/types": "npm:7.109.0" - "@sentry/utils": "npm:7.109.0" - checksum: 10c0/c7ea596ad65fcdbfc769dde58f328c24f74481c1fe0f4cc38371996634f9ab3b3d403d23ff17bd13434ba6365cd3c7e1719631466345bb9ed80579d42a774b71 + "@hapi/hoek": "npm:^9.0.0" + checksum: 10c0/638eb6f7e7dba209053dd6c8da74d7cc995e2b791b97644d0303a7dd3119263bcb7225a4f6804d4db2bc4f96e5a9d262975a014f58eae4d1753c27cbc96ef959 languageName: node linkType: hard -"@sentry/types@npm:7.109.0": - version: 7.109.0 - resolution: "@sentry/types@npm:7.109.0" - checksum: 10c0/0c2953999b94b1549919b89fd0c956c2229c9fbcdee2c692ee8f94841b10905ea03cc361e89aa4387fe231a1c08d02fe27080d40874ad0da3785e43d17d941bc +"@sideway/formula@npm:^3.0.1": + version: 3.0.1 + resolution: "@sideway/formula@npm:3.0.1" + checksum: 10c0/3fe81fa9662efc076bf41612b060eb9b02e846ea4bea5bd114f1662b7f1541e9dedcf98aff0d24400bcb92f113964a50e0290b86e284edbdf6346fa9b7e2bf2c languageName: node linkType: hard -"@sentry/utils@npm:7.109.0": - version: 7.109.0 - resolution: "@sentry/utils@npm:7.109.0" - dependencies: - "@sentry/types": "npm:7.109.0" - checksum: 10c0/32bbb7515e4d36166941ec81c072574333401782d64cfb25da5dac2c4a5b8760b1dfe4859211d3447e676f530a1fdec58b15624b6b0180a865fa109aec2bd6a5 +"@sideway/pinpoint@npm:^2.0.0": + version: 2.0.0 + resolution: "@sideway/pinpoint@npm:2.0.0" + checksum: 10c0/d2ca75dacaf69b8fc0bb8916a204e01def3105ee44d8be16c355e5f58189eb94039e15ce831f3d544f229889ccfa35562a0ce2516179f3a7ee1bbe0b71e55b36 languageName: node linkType: hard @@ -277,6 +798,15 @@ __metadata: languageName: node linkType: hard +"@types/accepts@npm:*": + version: 1.3.7 + resolution: "@types/accepts@npm:1.3.7" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/7b21efc78b98ed57063ac31588f871f11501c080cd1201ca3743cf02ee0aee74bdb5a634183bc0987dc8dc582b26316789fd203650319ccc89a66cf88311d64f + languageName: node + linkType: hard + "@types/body-parser@npm:*": version: 1.19.5 resolution: "@types/body-parser@npm:1.19.5" @@ -296,6 +826,25 @@ __metadata: languageName: node linkType: hard +"@types/content-disposition@npm:*": + version: 0.5.8 + resolution: "@types/content-disposition@npm:0.5.8" + checksum: 10c0/f10baeab2ec44579012c1170763851687e740ea30531a80cd7a403475730ce7d7ead4f88927cea6970cc2d5e74fa7af38cdf4f039c5f115fba1bb98ec0014977 + languageName: node + linkType: hard + +"@types/cookies@npm:*": + version: 0.9.0 + resolution: "@types/cookies@npm:0.9.0" + dependencies: + "@types/connect": "npm:*" + "@types/express": "npm:*" + "@types/keygrip": "npm:*" + "@types/node": "npm:*" + checksum: 10c0/ce95c1968532af674185efd4092cbdec8d5d3bda72f729e512bf37fa77877f466ad4bd5f00fca299f94c6e3d2a3875744ae5a705ffc5113183f5e46b76d8846a + languageName: node + linkType: hard + "@types/express-serve-static-core@npm:^4.17.33": version: 4.19.0 resolution: "@types/express-serve-static-core@npm:4.19.0" @@ -308,7 +857,7 @@ __metadata: languageName: node linkType: hard -"@types/express@npm:^4": +"@types/express@npm:*, @types/express@npm:^4": version: 4.17.21 resolution: "@types/express@npm:4.17.21" dependencies: @@ -320,6 +869,54 @@ __metadata: languageName: node linkType: hard +"@types/hapi__catbox@npm:*": + version: 10.2.6 + resolution: "@types/hapi__catbox@npm:10.2.6" + checksum: 10c0/782d5c0a12655f785eab0e2c83bd415435cc825277165f7fec44229edce092b97f5c7bb73f00296a246a550bf074ca679b359b5b07a4669d0c6331a22e5be174 + languageName: node + linkType: hard + +"@types/hapi__hapi@npm:20.0.13": + version: 20.0.13 + resolution: "@types/hapi__hapi@npm:20.0.13" + dependencies: + "@hapi/boom": "npm:^9.0.0" + "@hapi/iron": "npm:^6.0.0" + "@hapi/podium": "npm:^4.1.3" + "@types/hapi__catbox": "npm:*" + "@types/hapi__mimos": "npm:*" + "@types/hapi__shot": "npm:*" + "@types/node": "npm:*" + joi: "npm:^17.3.0" + checksum: 10c0/7e993ead7c6b7d3d3d8ab0abeb39b4fa29f3608a29e585d5ccef16823b1f09959e94bbe8a72c4722e95016167da91c57ae2f18c4b13e2b9fc472a67f087e3bc2 + languageName: node + linkType: hard + +"@types/hapi__mimos@npm:*": + version: 4.1.4 + resolution: "@types/hapi__mimos@npm:4.1.4" + dependencies: + "@types/mime-db": "npm:*" + checksum: 10c0/c3e960a375bd02bb067dc041b7b64fcbc6b3520ca16229ab72c63e9b886b3c1b1b03bc08d2b01e9368ea177dae5e9a00d5cd3c8f37fd872a49fad2307805db22 + languageName: node + linkType: hard + +"@types/hapi__shot@npm:*": + version: 4.1.6 + resolution: "@types/hapi__shot@npm:4.1.6" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/ffd39b424e593a54f044df11bc2216e2cc5c09a104e30be5ce8b8969693c713536b19bf6f472749ed12c2cf742aa11aa4184c48c5bd5124565ae1532db663c3b + languageName: node + linkType: hard + +"@types/http-assert@npm:*": + version: 1.5.5 + resolution: "@types/http-assert@npm:1.5.5" + checksum: 10c0/02e7ba584d6d14bdb4dad05dd36ecbc4a2f4209472287e6d558e222c93182214445a0c6cd096f114bfc88446be03d82ef6db24ecda13922b0d697918c76b4067 + languageName: node + linkType: hard + "@types/http-errors@npm:*": version: 2.0.4 resolution: "@types/http-errors@npm:2.0.4" @@ -334,6 +931,70 @@ __metadata: languageName: node linkType: hard +"@types/keygrip@npm:*": + version: 1.0.6 + resolution: "@types/keygrip@npm:1.0.6" + checksum: 10c0/1045a79913259f539ac1d04384ea8f61cf29f1d299040eb4b67d92304ec3bcea59b7e4b83cf95a73aa251ff62e55924e380d0c563a21fe8f6e91de20cc610386 + languageName: node + linkType: hard + +"@types/koa-compose@npm:*": + version: 3.2.8 + resolution: "@types/koa-compose@npm:3.2.8" + dependencies: + "@types/koa": "npm:*" + checksum: 10c0/f2bfb7376c1e9075e8df7a46a5fce073159b01b94ec7dcca6e9f68627d48ea86a726bcfbd06491e1c99f68c0f27b8174b498081f9a3e4f976694452b5d0b5f01 + languageName: node + linkType: hard + +"@types/koa@npm:*": + version: 2.15.0 + resolution: "@types/koa@npm:2.15.0" + dependencies: + "@types/accepts": "npm:*" + "@types/content-disposition": "npm:*" + "@types/cookies": "npm:*" + "@types/http-assert": "npm:*" + "@types/http-errors": "npm:*" + "@types/keygrip": "npm:*" + "@types/koa-compose": "npm:*" + "@types/node": "npm:*" + checksum: 10c0/3fd591e25ecffc32ffa7cb152d2c5caeccefe5a72cb09d187102d8f41101bdaeeb802a07a6672eac58f805fa59892e79c1cc203ca7b27b0de75d7eac508c2b47 + languageName: node + linkType: hard + +"@types/koa@npm:2.14.0": + version: 2.14.0 + resolution: "@types/koa@npm:2.14.0" + dependencies: + "@types/accepts": "npm:*" + "@types/content-disposition": "npm:*" + "@types/cookies": "npm:*" + "@types/http-assert": "npm:*" + "@types/http-errors": "npm:*" + "@types/keygrip": "npm:*" + "@types/koa-compose": "npm:*" + "@types/node": "npm:*" + checksum: 10c0/783536ea905244ec8edcda5f6063f34b3f4bfe16ff75f4d8faaa9b3ce58455ff140b20e63064a31491c1e7f34de4e869bce410fb116012887b9792c98591f744 + languageName: node + linkType: hard + +"@types/koa__router@npm:12.0.3": + version: 12.0.3 + resolution: "@types/koa__router@npm:12.0.3" + dependencies: + "@types/koa": "npm:*" + checksum: 10c0/f9e2c360bed2f326df2d2cb3d1dd508a14360ae2299516579bed9690084f92056df09f28946d3245e9ef67ee0688af4a27990036f0e9afc9eb31241852884612 + languageName: node + linkType: hard + +"@types/mime-db@npm:*": + version: 1.43.5 + resolution: "@types/mime-db@npm:1.43.5" + checksum: 10c0/226af9f9126d1e4cc7241e8960087fb72b598179fb3aee2d35024d1583e2e83222199c0c63afa23763f1abc575e5514b3677505497608688d25155f8fd828a65 + languageName: node + linkType: hard + "@types/mime@npm:^1": version: 1.3.5 resolution: "@types/mime@npm:1.3.5" @@ -341,6 +1002,15 @@ __metadata: languageName: node linkType: hard +"@types/mysql@npm:2.15.22": + version: 2.15.22 + resolution: "@types/mysql@npm:2.15.22" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/872e7389985c954e7bf507cbe8f62f33c779d28e456b711d18133eaf9636487d0521e7f2c32e22eae0aa71f2d1c6e10d6212fbace50f73ab0a803949cc71f2cc + languageName: node + linkType: hard + "@types/node@npm:*, @types/node@npm:^20.12.5": version: 20.12.5 resolution: "@types/node@npm:20.12.5" @@ -350,6 +1020,37 @@ __metadata: languageName: node linkType: hard +"@types/pg-pool@npm:2.0.4": + version: 2.0.4 + resolution: "@types/pg-pool@npm:2.0.4" + dependencies: + "@types/pg": "npm:*" + checksum: 10c0/1c6b83e1c33c66e6b1ee11332ecf74ad393ba2a3966d5ee7ffaa40ddfe1f3cb4df224263515967d39101fa13b10c1f70da45795ca6eaeeea7d8e9edeeb58093f + languageName: node + linkType: hard + +"@types/pg@npm:*": + version: 8.11.5 + resolution: "@types/pg@npm:8.11.5" + dependencies: + "@types/node": "npm:*" + pg-protocol: "npm:*" + pg-types: "npm:^4.0.1" + checksum: 10c0/d64d183bee2df96cd0558231190ff629558e8c0fd3203b880f48a7d34b1eaea528d20c09b57b19c0939f369136e6c6941533592eadd71174be78d1ec0ca5e60e + languageName: node + linkType: hard + +"@types/pg@npm:8.6.1": + version: 8.6.1 + resolution: "@types/pg@npm:8.6.1" + dependencies: + "@types/node": "npm:*" + pg-protocol: "npm:*" + pg-types: "npm:^2.2.0" + checksum: 10c0/8d16660c9a4f050d6d5e391c59f9a62e9d377a2a6a7eb5865f8828082dbdfeab700fd707e585f42d67b29e796b32863aea5bd6d5cbb8ceda2d598da5d0c61693 + languageName: node + linkType: hard + "@types/qs@npm:*": version: 6.9.14 resolution: "@types/qs@npm:6.9.14" @@ -392,6 +1093,13 @@ __metadata: languageName: node linkType: hard +"@types/shimmer@npm:^1.0.2": + version: 1.0.5 + resolution: "@types/shimmer@npm:1.0.5" + checksum: 10c0/bbdcfebd46732267a7f861ca2e25b8f113ca303bfb1ebf891aeeb509b0507f816f95611fa82acdd4d1d534472a54754f6be3301b2cf77659654671e3e31318ec + languageName: node + linkType: hard + "@types/triple-beam@npm:^1.3.2": version: 1.3.5 resolution: "@types/triple-beam@npm:1.3.5" @@ -546,6 +1254,15 @@ __metadata: languageName: node linkType: hard +"acorn-import-assertions@npm:^1.9.0": + version: 1.9.0 + resolution: "acorn-import-assertions@npm:1.9.0" + peerDependencies: + acorn: ^8 + checksum: 10c0/3b4a194e128efdc9b86c2b1544f623aba4c1aa70d638f8ab7dc3971a5b4aa4c57bd62f99af6e5325bb5973c55863b4112e708a6f408bad7a138647ca72283afe + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -571,7 +1288,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.11.3, acorn@npm:^8.4.1": +"acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.8.2": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -831,6 +1548,13 @@ __metadata: languageName: node linkType: hard +"cjs-module-lexer@npm:^1.2.2": + version: 1.2.3 + resolution: "cjs-module-lexer@npm:1.2.3" + checksum: 10c0/0de9a9c3fad03a46804c0d38e7b712fb282584a9c7ef1ed44cae22fb71d9bb600309d66a9711ac36a596fd03422f5bb03e021e8f369c12a39fa1786ae531baab + languageName: node + linkType: hard + "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" @@ -971,7 +1695,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -1263,8 +1987,8 @@ __metadata: version: 0.0.0-use.local resolution: "event-proxy-server@workspace:utils/event-proxy-server" dependencies: - "@sentry/types": "npm:7.109.0" - "@sentry/utils": "npm:7.109.0" + "@sentry/types": "npm:8.0.0-alpha.9" + "@sentry/utils": "npm:8.0.0-alpha.9" languageName: unknown linkType: soft @@ -1279,7 +2003,7 @@ __metadata: version: 0.0.0-use.local resolution: "express-test-application@workspace:apps/express" dependencies: - "@sentry/node": "npm:^7.109.0" + "@sentry/node": "npm:^8.0.0-alpha.9" "@types/express": "npm:^4" express: "npm:^4.19.2" languageName: unknown @@ -1734,6 +2458,42 @@ __metadata: languageName: node linkType: hard +"import-in-the-middle@npm:1.4.2": + version: 1.4.2 + resolution: "import-in-the-middle@npm:1.4.2" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-assertions: "npm:^1.9.0" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 10c0/499c8abc90fa5197b9f5823c221fadbb2f6a467650761151519d855c160c2a55fae5e55334634ca9fc0c42fe97b94754fb17ccd61132e8507760de6e9bf33795 + languageName: node + linkType: hard + +"import-in-the-middle@npm:1.7.1": + version: 1.7.1 + resolution: "import-in-the-middle@npm:1.7.1" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-assertions: "npm:^1.9.0" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 10c0/992619fba916a758a1ed06cd47b6ab47f25cbab61987a887e0971cdbadff8c619a2f27b06d630f6d12ac644b9171d15538299e36355c001c58ca1b85c87a8a5a + languageName: node + linkType: hard + +"import-in-the-middle@npm:^1.7.2": + version: 1.7.3 + resolution: "import-in-the-middle@npm:1.7.3" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-assertions: "npm:^1.9.0" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 10c0/68a904ba5893670a212a9e6b651fb535feab274cdd86b38a095a2a9ff3d344306fa6a1b4aa2dc21bfa3206f81912ad1b633b5da5e81ddfbbce4a5d62900bf65f + languageName: node + linkType: hard + "imurmurhash@npm:^0.1.4": version: 0.1.4 resolution: "imurmurhash@npm:0.1.4" @@ -1788,6 +2548,15 @@ __metadata: languageName: node linkType: hard +"is-core-module@npm:^2.13.0": + version: 2.13.1 + resolution: "is-core-module@npm:2.13.1" + dependencies: + hasown: "npm:^2.0.0" + checksum: 10c0/2cba9903aaa52718f11c4896dabc189bab980870aae86a62dc0d5cedb546896770ee946fb14c84b7adf0735f5eaea4277243f1b95f5cefa90054f92fbcac2518 + languageName: node + linkType: hard + "is-extglob@npm:^2.1.1": version: 2.1.1 resolution: "is-extglob@npm:2.1.1" @@ -1866,6 +2635,19 @@ __metadata: languageName: node linkType: hard +"joi@npm:^17.3.0": + version: 17.12.3 + resolution: "joi@npm:17.12.3" + dependencies: + "@hapi/hoek": "npm:^9.3.0" + "@hapi/topo": "npm:^5.1.0" + "@sideway/address": "npm:^4.1.5" + "@sideway/formula": "npm:^3.0.1" + "@sideway/pinpoint": "npm:^2.0.0" + checksum: 10c0/818e51bd2d219339cff91f9d6fef8bab2da396e80a051cf73fb8ce7362c191af395bfa2d0e54eaa9c9cb8d5afafddb54eb768bc3068ab33908cbd5a1697e7d3e + languageName: node + linkType: hard + "js-yaml@npm:^4.1.0": version: 4.1.0 resolution: "js-yaml@npm:4.1.0" @@ -2177,6 +2959,13 @@ __metadata: languageName: node linkType: hard +"module-details-from-path@npm:^1.0.3": + version: 1.0.3 + resolution: "module-details-from-path@npm:1.0.3" + checksum: 10c0/3d881f3410c142e4c2b1307835a2862ba04e5b3ec6e90655614a0ee2c4b299b4c1d117fb525d2435bf436990026f18d338a197b54ad6bd36252f465c336ff423 + languageName: node + linkType: hard + "ms@npm:2.0.0": version: 2.0.0 resolution: "ms@npm:2.0.0" @@ -2288,6 +3077,13 @@ __metadata: languageName: node linkType: hard +"obuf@npm:~1.1.2": + version: 1.1.2 + resolution: "obuf@npm:1.1.2" + checksum: 10c0/520aaac7ea701618eacf000fc96ae458e20e13b0569845800fc582f81b386731ab22d55354b4915d58171db00e79cfcd09c1638c02f89577ef092b38c65b7d81 + languageName: node + linkType: hard + "on-finished@npm:2.4.1": version: 2.4.1 resolution: "on-finished@npm:2.4.1" @@ -2306,6 +3102,17 @@ __metadata: languageName: node linkType: hard +"opentelemetry-instrumentation-fetch-node@npm:1.1.2": + version: 1.1.2 + resolution: "opentelemetry-instrumentation-fetch-node@npm:1.1.2" + dependencies: + "@opentelemetry/api": "npm:^1.6.0" + "@opentelemetry/instrumentation": "npm:^0.43.0" + "@opentelemetry/semantic-conventions": "npm:^1.17.0" + checksum: 10c0/d3ef3cfd1695ac6fbcd7bd182f925eb850e3da10a683e7fad65327a698495bce0ecc4e2d046ef7ab1036c968ccd066b3eb7dca38a343b8ad9f5648c32dc76749 + languageName: node + linkType: hard + "optionator@npm:^0.9.3": version: 0.9.3 resolution: "optionator@npm:0.9.3" @@ -2377,6 +3184,13 @@ __metadata: languageName: node linkType: hard +"path-parse@npm:^1.0.7": + version: 1.0.7 + resolution: "path-parse@npm:1.0.7" + checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 + languageName: node + linkType: hard + "path-scurry@npm:^1.10.2": version: 1.10.2 resolution: "path-scurry@npm:1.10.2" @@ -2401,6 +3215,55 @@ __metadata: languageName: node linkType: hard +"pg-int8@npm:1.0.1": + version: 1.0.1 + resolution: "pg-int8@npm:1.0.1" + checksum: 10c0/be6a02d851fc2a4ae3e9de81710d861de3ba35ac927268973eb3cb618873a05b9424656df464dd43bd7dc3fc5295c3f5b3c8349494f87c7af50ec59ef14e0b98 + languageName: node + linkType: hard + +"pg-numeric@npm:1.0.2": + version: 1.0.2 + resolution: "pg-numeric@npm:1.0.2" + checksum: 10c0/43dd9884e7b52c79ddc28d2d282d7475fce8bba13452d33c04ceb2e0a65f561edf6699694e8e1c832ff9093770496363183c950dd29608e1bdd98f344b25bca9 + languageName: node + linkType: hard + +"pg-protocol@npm:*": + version: 1.6.1 + resolution: "pg-protocol@npm:1.6.1" + checksum: 10c0/7eadef4010ac0a3925c460be7332ca4098a5c6d5181725a62193fcfa800000ae6632d98d814f3989b42cf5fdc3b45e34c714a1959d29174e81e30730e140ae5f + languageName: node + linkType: hard + +"pg-types@npm:^2.2.0": + version: 2.2.0 + resolution: "pg-types@npm:2.2.0" + dependencies: + pg-int8: "npm:1.0.1" + postgres-array: "npm:~2.0.0" + postgres-bytea: "npm:~1.0.0" + postgres-date: "npm:~1.0.4" + postgres-interval: "npm:^1.1.0" + checksum: 10c0/ab3f8069a323f601cd2d2279ca8c425447dab3f9b61d933b0601d7ffc00d6200df25e26a4290b2b0783b59278198f7dd2ed03e94c4875797919605116a577c65 + languageName: node + linkType: hard + +"pg-types@npm:^4.0.1": + version: 4.0.2 + resolution: "pg-types@npm:4.0.2" + dependencies: + pg-int8: "npm:1.0.1" + pg-numeric: "npm:1.0.2" + postgres-array: "npm:~3.0.1" + postgres-bytea: "npm:~3.0.0" + postgres-date: "npm:~2.1.0" + postgres-interval: "npm:^3.0.0" + postgres-range: "npm:^1.1.1" + checksum: 10c0/780fccda2f3fa2a34e85a72e8e7dadb7d88fbe71ce88f126cb3313f333ad836d02488ec4ff3d94d0c1e5846f735d6e6c6281f8059e6b8919d2180429acaec3e2 + languageName: node + linkType: hard + "picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" @@ -2408,6 +3271,73 @@ __metadata: languageName: node linkType: hard +"postgres-array@npm:~2.0.0": + version: 2.0.0 + resolution: "postgres-array@npm:2.0.0" + checksum: 10c0/cbd56207e4141d7fbf08c86f2aebf21fa7064943d3f808ec85f442ff94b48d891e7a144cc02665fb2de5dbcb9b8e3183a2ac749959e794b4a4cfd379d7a21d08 + languageName: node + linkType: hard + +"postgres-array@npm:~3.0.1": + version: 3.0.2 + resolution: "postgres-array@npm:3.0.2" + checksum: 10c0/644aa071f67a66a59f641f8e623887d2b915bc102a32643e2aa8b54c11acd343c5ad97831ea444dd37bd4b921ba35add4aa2cb0c6b76700a8252c2324aeba5b4 + languageName: node + linkType: hard + +"postgres-bytea@npm:~1.0.0": + version: 1.0.0 + resolution: "postgres-bytea@npm:1.0.0" + checksum: 10c0/febf2364b8a8953695cac159eeb94542ead5886792a9627b97e33f6b5bb6e263bc0706ab47ec221516e79fbd6b2452d668841830fb3b49ec6c0fc29be61892ce + languageName: node + linkType: hard + +"postgres-bytea@npm:~3.0.0": + version: 3.0.0 + resolution: "postgres-bytea@npm:3.0.0" + dependencies: + obuf: "npm:~1.1.2" + checksum: 10c0/41c79cc48aa730c5ba3eda6ab989a940034f07a1f57b8f2777dce56f1b8cca16c5870582932b5b10cc605048aef9b6157e06253c871b4717cafc6d00f55376aa + languageName: node + linkType: hard + +"postgres-date@npm:~1.0.4": + version: 1.0.7 + resolution: "postgres-date@npm:1.0.7" + checksum: 10c0/0ff91fccc64003e10b767fcfeefb5eaffbc522c93aa65d5051c49b3c4ce6cb93ab091a7d22877a90ad60b8874202c6f1d0f935f38a7235ed3b258efd54b97ca9 + languageName: node + linkType: hard + +"postgres-date@npm:~2.1.0": + version: 2.1.0 + resolution: "postgres-date@npm:2.1.0" + checksum: 10c0/00a7472c10788f6b0d08d24108bf1eb80858de1bd6317740198a564918ea4a69b80c98148167b92ae688abd606483020d0de0dd3a36f3ea9a3e26bbeef3464f4 + languageName: node + linkType: hard + +"postgres-interval@npm:^1.1.0": + version: 1.2.0 + resolution: "postgres-interval@npm:1.2.0" + dependencies: + xtend: "npm:^4.0.0" + checksum: 10c0/c1734c3cb79e7f22579af0b268a463b1fa1d084e742a02a7a290c4f041e349456f3bee3b4ee0bb3f226828597f7b76deb615c1b857db9a742c45520100456272 + languageName: node + linkType: hard + +"postgres-interval@npm:^3.0.0": + version: 3.0.0 + resolution: "postgres-interval@npm:3.0.0" + checksum: 10c0/8b570b30ea37c685e26d136d34460f246f98935a1533defc4b53bb05ee23ae3dc7475b718ec7ea607a57894d8c6b4f1adf67ca9cc83a75bdacffd427d5c68de8 + languageName: node + linkType: hard + +"postgres-range@npm:^1.1.1": + version: 1.1.4 + resolution: "postgres-range@npm:1.1.4" + checksum: 10c0/254494ef81df208e0adeae6b66ce394aba37914ea14c7ece55a45fb6691b7db04bee74c825380a47c887a9f87158fd3d86f758f9cc60b76d3a38ce5aca7912e8 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -2520,6 +3450,17 @@ __metadata: languageName: node linkType: hard +"require-in-the-middle@npm:^7.1.1": + version: 7.3.0 + resolution: "require-in-the-middle@npm:7.3.0" + dependencies: + debug: "npm:^4.1.1" + module-details-from-path: "npm:^1.0.3" + resolve: "npm:^1.22.1" + checksum: 10c0/a8e29393b647f7109f8c07e9276123482ba19d7be4b749d247036573ef4539eaf527bdb66c2e2730b99a74e7badc36f7b6d4a75c6e5b5f798a5f304e78ade797 + languageName: node + linkType: hard + "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" @@ -2527,6 +3468,32 @@ __metadata: languageName: node linkType: hard +"resolve@npm:^1.22.1": + version: 1.22.8 + resolution: "resolve@npm:1.22.8" + dependencies: + is-core-module: "npm:^2.13.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10c0/07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a + languageName: node + linkType: hard + +"resolve@patch:resolve@npm%3A^1.22.1#optional!builtin": + version: 1.22.8 + resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" + dependencies: + is-core-module: "npm:^2.13.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10c0/0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729 + languageName: node + linkType: hard + "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" @@ -2571,7 +3538,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.6.0": +"semver@npm:^7.3.5, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.6.0": version: 7.6.0 resolution: "semver@npm:7.6.0" dependencies: @@ -2671,6 +3638,13 @@ __metadata: languageName: node linkType: hard +"shimmer@npm:^1.2.1": + version: 1.2.1 + resolution: "shimmer@npm:1.2.1" + checksum: 10c0/ae8b27c389db2a00acfc8da90240f11577685a8f3e40008f826a3bea8b4f3b3ecd305c26be024b4a0fd3b123d132c1569d6e238097960a9a543b6c60760fb46a + languageName: node + linkType: hard + "side-channel@npm:^1.0.4": version: 1.0.6 resolution: "side-channel@npm:1.0.6" @@ -2856,6 +3830,13 @@ __metadata: languageName: node linkType: hard +"supports-preserve-symlinks-flag@npm:^1.0.0": + version: 1.0.0 + resolution: "supports-preserve-symlinks-flag@npm:1.0.0" + checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39 + languageName: node + linkType: hard + "tar@npm:^6.1.11, tar@npm:^6.1.2": version: 6.2.1 resolution: "tar@npm:6.2.1" @@ -3170,6 +4151,13 @@ __metadata: languageName: node linkType: hard +"xtend@npm:^4.0.0": + version: 4.0.2 + resolution: "xtend@npm:4.0.2" + checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e + languageName: node + linkType: hard + "yallist@npm:^4.0.0": version: 4.0.0 resolution: "yallist@npm:4.0.0" From 92e2f79cacab0c29d8a5afdfe523b0c199c7800f Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Thu, 11 Apr 2024 17:22:52 +0200 Subject: [PATCH 2/9] save payload --- apps/express/src/app.ts | 13 - .../express/test-error--event.json | 75 ++-- .../express/test-error--transaction.json | 207 ----------- .../express/test-error-manual--event.json | 335 +++++++++--------- .../test-error-manual--transaction.json | 234 ------------ .../test-local-variables-caught--event.json | 162 ++++----- ...local-variables-uncaught--transaction.json | 222 ------------ .../express/test-param-error_1337--event.json | 71 ++-- .../test-param-error_1337--transaction.json | 207 ----------- .../test-param-success_1337--transaction.json | 207 ----------- .../express/test-success--transaction.json | 207 ----------- 11 files changed, 326 insertions(+), 1614 deletions(-) delete mode 100644 utils/event-proxy-server/payload-files/express/test-error--transaction.json delete mode 100644 utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json delete mode 100644 utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json delete mode 100644 utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json delete mode 100644 utils/event-proxy-server/payload-files/express/test-param-success_1337--transaction.json delete mode 100644 utils/event-proxy-server/payload-files/express/test-success--transaction.json diff --git a/apps/express/src/app.ts b/apps/express/src/app.ts index 430e095..03cdbcc 100644 --- a/apps/express/src/app.ts +++ b/apps/express/src/app.ts @@ -21,19 +21,6 @@ declare global { const app = express(); const port = 3030; -Sentry.init({ - environment: 'qa', // dynamic sampling bias to keep transactions - dsn: process.env.E2E_TEST_DSN, - includeLocalVariables: true, - debug: true, - tunnel: `http://127.0.0.1:3031/`, // proxy server - tracesSampleRate: 1, - integrations: [new Sentry.Integrations.Express({ app })], -}); - -app.use(Sentry.Handlers.requestHandler()); -app.use(Sentry.Handlers.tracingHandler()); - app.get('/test-success', function (req, res) { res.send({ version: 'v1' }); }); diff --git a/utils/event-proxy-server/payload-files/express/test-error--event.json b/utils/event-proxy-server/payload-files/express/test-error--event.json index 193ea51..845092a 100644 --- a/utils/event-proxy-server/payload-files/express/test-error--event.json +++ b/utils/event-proxy-server/payload-files/express/test-error--event.json @@ -4,17 +4,9 @@ "sent_at": "[[ISODateString]]", "sdk": { "name": "sentry.javascript.node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-error", - "sampled": "true" - } + "dsn": "[[dsn]]" }, { "type": "event" @@ -111,14 +103,14 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", - "lineno": 85, + "function": "?", + "lineno": 83, "colno": 12, "in_app": true, "pre_context": [ + "var app = (0, express_1.default)();", + "var port = 3030;", "// todo: add express integration to docs", - "app.use(Sentry.Handlers.requestHandler());", - "app.use(Sentry.Handlers.tracingHandler());", "app.get('/test-success', function (req, res) {", " res.send({ version: 'v1' });", "});", @@ -171,7 +163,7 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", + "function": "?", "lineno": 31, "colno": 71, "in_app": true, @@ -252,8 +244,8 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", - "lineno": 90, + "function": "?", + "lineno": 88, "colno": 59, "in_app": true, "pre_context": [ @@ -289,16 +281,8 @@ "platform": "node", "contexts": { "trace": { - "data": { - "sentry.source": "route", - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1 - }, - "op": "http.server", - "span_id": "[[ID3]]", "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" + "span_id": "[[ID3]]" }, "runtime": { "name": "node", @@ -340,27 +324,34 @@ "RequestData", "Console", "Http", - "Undici", + "NodeFetch", "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "Express" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" ], "name": "sentry.javascript.node", - "version": "7.109.0", + "version": "8.0.0-alpha.9", "packages": [ { "name": "npm:@sentry/node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" } ] }, - "tags": { - "transaction": "GET /test-error" - }, "breadcrumbs": [ { "timestamp": "[[timestamp]]", @@ -387,11 +378,22 @@ "pragma": "no-cache", "cache-control": "no-cache" }, - "query_string": {}, "url": "http://localhost:3030/test-error" }, "transaction": "GET /test-error", "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", "express": "4.19.2", "body-parser": "1.20.2", "depd": "2.0.0", @@ -415,8 +417,6 @@ "es-errors": "1.3.0", "has-symbols": "1.0.3", "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", "call-bind": "1.0.7", "set-function-length": "1.2.2", "define-data-property": "1.1.4", @@ -453,7 +453,8 @@ "raw-body": "2.5.2", "iconv-lite": "0.4.24", "safer-buffer": "2.1.2", - "serve-static": "1.15.0" + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" } } ] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-error--transaction.json b/utils/event-proxy-server/payload-files/express/test-error--transaction.json deleted file mode 100644 index b344ea7..0000000 --- a/utils/event-proxy-server/payload-files/express/test-error--transaction.json +++ /dev/null @@ -1,207 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-error", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 200, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-error" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "ok", - "tags": { - "http.status_code": "200" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-error", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-error" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-error-manual--event.json b/utils/event-proxy-server/payload-files/express/test-error-manual--event.json index c128485..95941e4 100644 --- a/utils/event-proxy-server/payload-files/express/test-error-manual--event.json +++ b/utils/event-proxy-server/payload-files/express/test-error-manual--event.json @@ -4,17 +4,9 @@ "sent_at": "[[ISODateString]]", "sdk": { "name": "sentry.javascript.node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-error-manual", - "sampled": "true" - } + "dsn": "[[dsn]]" }, { "type": "event" @@ -29,172 +21,172 @@ "frames": [ { "filename": "[[FILENAME1]]", - "module": "@sentry.node.cjs.async:hooks", - "function": "Object.runWithAsyncContext", - "lineno": 41, - "colno": 25, + "module": "@sentry.opentelemetry.cjs:index", + "function": "Object.startSpan", + "lineno": 874, + "colno": 17, "in_app": false, "pre_context": [ - " // We're already in an async context, so we don't need to create a new one", - " // just call the callback with the current hub", - " return callback();", - " }", "", - " const newHub = createNewHub(existingHub);", + " const activeCtx = getContext(options.scope, options.forceTransaction);", + " const shouldSkipSpan = options.onlyIfParent && !api.trace.getSpan(activeCtx);", + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", "" ], - "context_line": " return asyncStorage.run(newHub, () => {", + "context_line": " return tracer.startActiveSpan(name, spanContext, ctx, span => {", "post_context": [ - " return callback();", - " });", - " }", + " _applySentryAttributesToSpan(span, options);", "", - " core.setAsyncContextStrategy({ getCurrentHub, runWithAsyncContext });", - "}", - "" + " return core.handleCallbackErrors(", + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {" ] }, { "filename": "[[FILENAME2]]", - "module": "node:async_hooks", - "function": "AsyncLocalStorage.run", - "lineno": 346, - "colno": 14, - "in_app": false - }, - { - "filename": "[[FILENAME1]]", - "module": "@sentry.node.cjs.async:hooks", - "function": "", - "lineno": 42, - "colno": 14, + "module": "@opentelemetry.sdk-trace-base.build.src:Tracer", + "function": "Tracer.startActiveSpan", + "lineno": 121, + "colno": 32, "in_app": false, "pre_context": [ - " // just call the callback with the current hub", - " return callback();", - " }", - "", - " const newHub = createNewHub(existingHub);", - "", - " return asyncStorage.run(newHub, () => {" + " opts = arg2;", + " ctx = arg3;", + " fn = arg4;", + " }", + " const parentContext = ctx !== null && ctx !== void 0 ? ctx : api.context.active();", + " const span = this.startSpan(name, opts, parentContext);", + " const contextWithSpanSet = api.trace.setSpan(parentContext, span);" ], - "context_line": " return callback();", + "context_line": " return api.context.with(contextWithSpanSet, fn, undefined, span);", "post_context": [ - " });", - " }", - "", - " core.setAsyncContextStrategy({ getCurrentHub, runWithAsyncContext });", - "}", - "", - "exports.setHooksAsyncContextStrategy = setHooksAsyncContextStrategy;" + " }", + " /** Returns the active {@link GeneralLimits}. */", + " getGeneralLimits() {", + " return this._generalLimits;", + " }", + " /** Returns the active {@link SpanLimits}. */", + " getSpanLimits() {" ] }, { "filename": "[[FILENAME3]]", - "module": "@sentry.core.cjs.tracing:trace", - "function": "", - "lineno": 83, - "colno": 22, + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, "in_app": false, "pre_context": [ - " * or you didn't set `tracesSampleRate`, this function will not generate spans", - " * and the `span` returned from the callback will be undefined.", - " */", - "function startSpan(context, callback) {", - " const spanContext = normalizeContext(context);", - "", - " return hub.runWithAsyncContext(() => {" + " *", + " * @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) {" ], - "context_line": " return exports$1.withScope(context.scope, scope => {", + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", "post_context": [ - " // eslint-disable-next-line deprecation/deprecation", - " const hub$1 = hub.getCurrentHub();", - " // eslint-disable-next-line deprecation/deprecation", - " const parentSpan = scope.getSpan();", - "", - " const shouldSkipSpan = context.onlyIfParent && !parentSpan;", - " const activeSpan = shouldSkipSpan" + " }", + " /**", + " * 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", + " */" ] }, { - "filename": "[[FILENAME4]]", - "module": "@sentry.core.cjs:exports", - "function": "Object.withScope", - "lineno": 170, - "colno": 20, + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, "in_app": false, "pre_context": [ - " const hub$1 = hub.getCurrentHub();", + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", "", - " // If a scope is defined, we want to make this the active scope instead of the default one", - " if (rest.length === 2) {", - " const [scope, callback] = rest;", - " if (!scope) {", - " // eslint-disable-next-line deprecation/deprecation" + " setContextOnScope(newCurrentScope, ctx2);", + "" ], - "context_line": " return hub$1.withScope(callback);", + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", "post_context": [ " }", + " }", "", - " // eslint-disable-next-line deprecation/deprecation", - " return hub$1.withScope(() => {", - " // eslint-disable-next-line deprecation/deprecation", - " hub$1.getStackTop().scope = scope ;", - " return callback(scope );" + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" ] }, { - "filename": "[[FILENAME5]]", - "module": "@sentry.core.cjs:hub", - "function": "Hub.withScope", - "lineno": 185, - "colno": 28, + "filename": "[[FILENAME4]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, "in_app": false, "pre_context": [ - " */", - " withScope(callback) {", - " // eslint-disable-next-line deprecation/deprecation", - " const scope = this.pushScope();", - "", - " let maybePromiseResult;", - " try {" + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" ], - "context_line": " maybePromiseResult = callback(scope);", + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", "post_context": [ - " } catch (e) {", - " // eslint-disable-next-line deprecation/deprecation", - " this.popScope();", - " throw e;", " }", - "", - " if (utils.isThenable(maybePromiseResult)) {" + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" ] }, { - "filename": "[[FILENAME3]]", - "module": "@sentry.core.cjs.tracing:trace", - "function": "", - "lineno": 99, - "colno": 35, + "filename": "[[FILENAME5]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 877, + "colno": 17, "in_app": false, "pre_context": [ - " : createChildSpanOrTransaction(hub$1, {", - " parentSpan,", - " spanContext,", - " forceTransaction: context.forceTransaction,", - " scope,", - " });", + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", "" ], - "context_line": " return handleCallbackErrors.handleCallbackErrors(", + "context_line": " return core.handleCallbackErrors(", "post_context": [ - " () => callback(activeSpan),", - " () => {", - " // Only update the span status if it hasn't been changed yet", - " if (activeSpan) {", - " const { status } = spanUtils.spanToJSON(activeSpan);", - " if (!status || status === 'ok') {", - " activeSpan.setStatus('internal_error');" + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " }," ] }, { @@ -225,37 +217,37 @@ ] }, { - "filename": "[[FILENAME3]]", - "module": "@sentry.core.cjs.tracing:trace", - "function": "handleCallbackErrors.handleCallbackErrors.status.status", - "lineno": 100, - "colno": 15, + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 878, + "colno": 13, "in_app": false, "pre_context": [ - " parentSpan,", - " spanContext,", - " forceTransaction: context.forceTransaction,", - " scope,", - " });", "", - " return handleCallbackErrors.handleCallbackErrors(" + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", + "", + " return core.handleCallbackErrors(" ], - "context_line": " () => callback(activeSpan),", + "context_line": " () => callback(span),", "post_context": [ - " () => {", - " // Only update the span status if it hasn't been changed yet", - " if (activeSpan) {", - " const { status } = spanUtils.spanToJSON(activeSpan);", - " if (!status || status === 'ok') {", - " activeSpan.setStatus('internal_error');", - " }" + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " },", + " () => span.end()," ] }, { "filename": "[[FILENAME7]]", "module": "app", - "function": "", - "lineno": 145, + "function": "?", + "lineno": 143, "colno": 53, "in_app": true, "pre_context": [ @@ -291,13 +283,9 @@ "platform": "node", "contexts": { "trace": { - "data": { - "sentry.origin": "manual" - }, - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", "trace_id": "[[ID2]]", - "origin": "manual" + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" }, "runtime": { "name": "node", @@ -339,27 +327,34 @@ "RequestData", "Console", "Http", - "Undici", + "NodeFetch", "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "Express" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" ], "name": "sentry.javascript.node", - "version": "7.109.0", + "version": "8.0.0-alpha.9", "packages": [ { "name": "npm:@sentry/node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" } ] }, - "tags": { - "transaction": "GET /test-error-manual" - }, "breadcrumbs": [ { "timestamp": "[[timestamp]]", @@ -386,11 +381,22 @@ "pragma": "no-cache", "cache-control": "no-cache" }, - "query_string": {}, "url": "http://localhost:3030/test-error-manual" }, "transaction": "GET /test-error-manual", "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", "express": "4.19.2", "body-parser": "1.20.2", "depd": "2.0.0", @@ -414,8 +420,6 @@ "es-errors": "1.3.0", "has-symbols": "1.0.3", "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", "call-bind": "1.0.7", "set-function-length": "1.2.2", "define-data-property": "1.1.4", @@ -452,7 +456,8 @@ "raw-body": "2.5.2", "iconv-lite": "0.4.24", "safer-buffer": "2.1.2", - "serve-static": "1.15.0" + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" } } ] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json b/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json deleted file mode 100644 index d8a11ff..0000000 --- a/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json +++ /dev/null @@ -1,234 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-error-manual", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 200, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-error-manual" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "ok", - "tags": { - "http.status_code": "200" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [ - { - "data": { - "sentry.origin": "manual", - "sentry.op": "e2e-test" - }, - "description": "test-transaction", - "op": "e2e-test", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "start_timestamp": "[[timestamp]]", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]", - "origin": "manual" - }, - { - "data": { - "sentry.origin": "manual" - }, - "description": "test-span", - "parent_span_id": "[[ID4]]", - "span_id": "[[ID5]]", - "start_timestamp": "[[timestamp]]", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]", - "origin": "manual" - } - ], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-error-manual", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-error-manual" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json b/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json index 6870753..98d3769 100644 --- a/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json +++ b/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json @@ -4,17 +4,9 @@ "sent_at": "[[ISODateString]]", "sdk": { "name": "sentry.javascript.node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-local-variables-caught", - "sampled": "true" - } + "dsn": "[[dsn]]" }, { "type": "event" @@ -29,29 +21,29 @@ "frames": [ { "filename": "[[FILENAME1]]", - "module": "@sentry-internal.tracing.cjs.node.integrations:express", - "function": "", - "lineno": 113, - "colno": 16, + "module": "@opentelemetry.instrumentation-express.build.src:instrumentation", + "function": "arguments.", + "lineno": 210, + "colno": 41, "in_app": false, "pre_context": [ - " const span = _optionalChain([transaction, 'optionalAccess', _2 => _2.startChild, 'call', _3 => _3({", - " description: fn.name,", - " op: `middleware.express.${method}`,", - " origin: 'auto.middleware.express',", - " })]);", - " fn.call(this, req, res, function ( ...args) {", - " _optionalChain([span, 'optionalAccess', _4 => _4.end, 'call', _5 => _5()]);" + " (_a = req.res) === null || _a === void 0 ? void 0 : _a.removeListener('finish', onResponseFinish);", + " span.end();", + " }", + " if (!(req.route && isError)) {", + " req[internal_types_1._LAYERS_STORE_PROPERTY].pop();", + " }", + " const callback = args[callbackIdx];" ], - "context_line": " next.call(this, ...args);", + "context_line": " return callback.apply(this, arguments);", "post_context": [ - " });", - " };", - " }", - " case 4: {", - " return function (", - "", - " err," + " };", + " }", + " try {", + " return original.apply(this, arguments);", + " }", + " catch (anyError) {", + " const [error, message] = (0, utils_1.asErrorAndMessage)(anyError);" ] }, { @@ -81,33 +73,6 @@ " }" ] }, - { - "filename": "[[FILENAME1]]", - "module": "@sentry-internal.tracing.cjs.node.integrations:express", - "function": "Function.process_params", - "lineno": 313, - "colno": 34, - "in_app": false, - "pre_context": [ - "", - " const [name, source] = utils.extractPathForTransaction(req, { path: true, method: true, customRoute: finalRoute });", - " transaction.updateName(name);", - " transaction.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE, source);", - " }", - " }", - "" - ], - "context_line": " return originalProcessParams.call(this, layer, called, req, res, done);", - "post_context": [ - " };", - "}", - "", - "/**", - " * Recreate layer.route.path from layer.regexp and layer.keys.", - " * Works until express.js used package path-to-regexp@0.1.7", - " * or until layer.keys contain offset attribute" - ] - }, { "filename": "[[FILENAME2]]", "module": "express.lib.router:index", @@ -138,7 +103,7 @@ { "filename": "[[FILENAME2]]", "module": "express.lib.router:index", - "function": "", + "function": "?", "lineno": 284, "colno": 15, "in_app": false, @@ -189,6 +154,33 @@ " * Check if this route matches `path`, if so" ] }, + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-express.build.src:instrumentation", + "function": "?", + "lineno": 214, + "colno": 37, + "in_app": false, + "pre_context": [ + " req[internal_types_1._LAYERS_STORE_PROPERTY].pop();", + " }", + " const callback = args[callbackIdx];", + " return callback.apply(this, arguments);", + " };", + " }", + " try {" + ], + "context_line": " return original.apply(this, arguments);", + "post_context": [ + " }", + " catch (anyError) {", + " const [error, message] = (0, utils_1.asErrorAndMessage)(anyError);", + " span.recordException(error);", + " span.setStatus({", + " code: api_1.SpanStatusCode.ERROR,", + " message," + ] + }, { "filename": "[[FILENAME4]]", "module": "express.lib.router:route", @@ -273,8 +265,8 @@ { "filename": "[[FILENAME5]]", "module": "app", - "function": "", - "lineno": 167, + "function": "?", + "lineno": 165, "colno": 15, "in_app": true, "pre_context": [ @@ -294,9 +286,10 @@ " }", " res.send({ exceptionId: exceptionId, randomVariableToRecord: randomVariableToRecord });", "});", - "app.use(Sentry.Handlers.errorHandler());" + "Sentry.setupExpressErrorHandler(app);" ], "vars": { + "exceptionId": "", "randomVariableToRecord": "LOCAL VARIABLE", "res": "", "req": "" @@ -315,16 +308,8 @@ "platform": "node", "contexts": { "trace": { - "data": { - "sentry.source": "route", - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1 - }, - "op": "http.server", - "span_id": "[[ID3]]", "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" + "span_id": "[[ID3]]" }, "runtime": { "name": "node", @@ -366,27 +351,34 @@ "RequestData", "Console", "Http", - "Undici", + "NodeFetch", "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "Express" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" ], "name": "sentry.javascript.node", - "version": "7.109.0", + "version": "8.0.0-alpha.9", "packages": [ { "name": "npm:@sentry/node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" } ] }, - "tags": { - "transaction": "GET /test-local-variables-caught" - }, "breadcrumbs": [ { "timestamp": "[[timestamp]]", @@ -413,11 +405,22 @@ "pragma": "no-cache", "cache-control": "no-cache" }, - "query_string": {}, "url": "http://localhost:3030/test-local-variables-caught" }, "transaction": "GET /test-local-variables-caught", "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", "express": "4.19.2", "body-parser": "1.20.2", "depd": "2.0.0", @@ -441,8 +444,6 @@ "es-errors": "1.3.0", "has-symbols": "1.0.3", "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", "call-bind": "1.0.7", "set-function-length": "1.2.2", "define-data-property": "1.1.4", @@ -479,7 +480,8 @@ "raw-body": "2.5.2", "iconv-lite": "0.4.24", "safer-buffer": "2.1.2", - "serve-static": "1.15.0" + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" } } ] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json b/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json deleted file mode 100644 index a8e8bc4..0000000 --- a/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json +++ /dev/null @@ -1,222 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-local-variables-uncaught", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 500, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-local-variables-uncaught" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "internal_error", - "tags": { - "http.status_code": "500" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [ - { - "data": { - "sentry.origin": "auto.middleware.express", - "sentry.op": "middleware.express.use" - }, - "description": "sentryErrorMiddleware", - "op": "middleware.express.use", - "parent_span_id": "[[ID3]]", - "span_id": "[[ID4]]", - "start_timestamp": "[[timestamp]]", - "timestamp": "[[timestamp]]", - "trace_id": "[[ID2]]", - "origin": "auto.middleware.express" - } - ], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "500" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-local-variables-uncaught", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-local-variables-uncaught" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-param-error_1337--event.json b/utils/event-proxy-server/payload-files/express/test-param-error_1337--event.json index e7c9cdf..d345a2a 100644 --- a/utils/event-proxy-server/payload-files/express/test-param-error_1337--event.json +++ b/utils/event-proxy-server/payload-files/express/test-param-error_1337--event.json @@ -4,17 +4,9 @@ "sent_at": "[[ISODateString]]", "sdk": { "name": "sentry.javascript.node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-param-error/:param", - "sampled": "true" - } + "dsn": "[[dsn]]" }, { "type": "event" @@ -111,8 +103,8 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", - "lineno": 104, + "function": "?", + "lineno": 102, "colno": 12, "in_app": true, "pre_context": [ @@ -171,7 +163,7 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", + "function": "?", "lineno": 31, "colno": 71, "in_app": true, @@ -252,8 +244,8 @@ { "filename": "[[FILENAME3]]", "module": "app", - "function": "", - "lineno": 109, + "function": "?", + "lineno": 107, "colno": 59, "in_app": true, "pre_context": [ @@ -289,16 +281,8 @@ "platform": "node", "contexts": { "trace": { - "data": { - "sentry.source": "route", - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1 - }, - "op": "http.server", - "span_id": "[[ID3]]", "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" + "span_id": "[[ID3]]" }, "runtime": { "name": "node", @@ -340,27 +324,34 @@ "RequestData", "Console", "Http", - "Undici", + "NodeFetch", "OnUncaughtException", "OnUnhandledRejection", "ContextLines", "LocalVariables", "Context", "Modules", - "Express" + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" ], "name": "sentry.javascript.node", - "version": "7.109.0", + "version": "8.0.0-alpha.9", "packages": [ { "name": "npm:@sentry/node", - "version": "7.109.0" + "version": "8.0.0-alpha.9" } ] }, - "tags": { - "transaction": "GET /test-param-error/:param" - }, "breadcrumbs": [ { "timestamp": "[[timestamp]]", @@ -387,11 +378,22 @@ "pragma": "no-cache", "cache-control": "no-cache" }, - "query_string": {}, "url": "http://localhost:3030/test-param-error/1337" }, "transaction": "GET /test-param-error/:param", "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", "express": "4.19.2", "body-parser": "1.20.2", "depd": "2.0.0", @@ -415,8 +417,6 @@ "es-errors": "1.3.0", "has-symbols": "1.0.3", "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", "call-bind": "1.0.7", "set-function-length": "1.2.2", "define-data-property": "1.1.4", @@ -453,7 +453,8 @@ "raw-body": "2.5.2", "iconv-lite": "0.4.24", "safer-buffer": "2.1.2", - "serve-static": "1.15.0" + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" } } ] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json b/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json deleted file mode 100644 index b99c085..0000000 --- a/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json +++ /dev/null @@ -1,207 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-param-error/:param", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 200, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-param-error/1337" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "ok", - "tags": { - "http.status_code": "200" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-param-error/:param", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-param-error/1337" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-param-success_1337--transaction.json b/utils/event-proxy-server/payload-files/express/test-param-success_1337--transaction.json deleted file mode 100644 index 77e033d..0000000 --- a/utils/event-proxy-server/payload-files/express/test-param-success_1337--transaction.json +++ /dev/null @@ -1,207 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-param-success/:param", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 200, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-param-success/1337" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "ok", - "tags": { - "http.status_code": "200" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-param-success/:param", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-param-success/1337" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-success--transaction.json b/utils/event-proxy-server/payload-files/express/test-success--transaction.json deleted file mode 100644 index 2a14936..0000000 --- a/utils/event-proxy-server/payload-files/express/test-success--transaction.json +++ /dev/null @@ -1,207 +0,0 @@ -[ - { - "event_id": "[[ID1]]", - "sent_at": "[[ISODateString]]", - "sdk": { - "name": "sentry.javascript.node", - "version": "7.109.0" - }, - "dsn": "[[dsn]]", - "trace": { - "environment": "qa", - "public_key": "[[publicKey]]", - "trace_id": "[[ID2]]", - "sample_rate": "1", - "transaction": "GET /test-success", - "sampled": "true" - } - }, - { - "type": "transaction" - }, - { - "contexts": { - "trace": { - "data": { - "sentry.source": "route", - "query": {}, - "http.response.status_code": 200, - "sentry.origin": "auto.http.node.tracingHandler", - "sentry.op": "http.server", - "sentry.sample_rate": 1, - "url": "/test-success" - }, - "op": "http.server", - "span_id": "[[ID3]]", - "status": "ok", - "tags": { - "http.status_code": "200" - }, - "trace_id": "[[ID2]]", - "origin": "auto.http.node.tracingHandler" - }, - "runtime": { - "name": "node", - "version": "v20.12.1" - }, - "app": { - "app_start_time": "[[ISODateString]]", - "app_memory": "[[highNumber]]" - }, - "os": { - "kernel_version": "23.2.0", - "name": "macOS", - "version": "14.2", - "build": "23C64" - }, - "device": { - "boot_time": "[[ISODateString]]", - "arch": "arm64", - "memory_size": "[[highNumber]]", - "free_memory": "[[highNumber]]", - "processor_count": 10, - "cpu_description": "Apple M1 Pro", - "processor_frequency": "[[highNumber]]" - }, - "culture": { - "locale": "en-US", - "timezone": "Europe/Vienna" - }, - "cloud_resource": {} - }, - "spans": [], - "start_timestamp": "[[timestamp]]", - "tags": { - "http.status_code": "200" - }, - "timestamp": "[[timestamp]]", - "transaction": "GET /test-success", - "type": "transaction", - "transaction_info": { - "source": "route" - }, - "platform": "node", - "server_name": "D9M3PY4LQ7.local", - "event_id": "[[ID1]]", - "environment": "qa", - "sdk": { - "integrations": [ - "InboundFilters", - "FunctionToString", - "LinkedErrors", - "RequestData", - "Console", - "Http", - "Undici", - "OnUncaughtException", - "OnUnhandledRejection", - "ContextLines", - "LocalVariables", - "Context", - "Modules", - "Express" - ], - "name": "sentry.javascript.node", - "version": "7.109.0", - "packages": [ - { - "name": "npm:@sentry/node", - "version": "7.109.0" - } - ] - }, - "breadcrumbs": [ - { - "timestamp": "[[timestamp]]", - "category": "console", - "level": "log", - "message": "Example app listening on port 3030" - } - ], - "request": { - "method": "GET", - "cookies": {}, - "headers": { - "host": "localhost:3030", - "user-agent": "[[user-agent]]", - "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", - "accept-language": "en-US,en;q=0.5", - "accept-encoding": "gzip, deflate, br", - "connection": "keep-alive", - "upgrade-insecure-requests": "1", - "sec-fetch-dest": "document", - "sec-fetch-mode": "navigate", - "sec-fetch-site": "none", - "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" - }, - "query_string": {}, - "url": "http://localhost:3030/test-success" - }, - "modules": { - "express": "4.19.2", - "body-parser": "1.20.2", - "depd": "2.0.0", - "merge-descriptors": "1.0.1", - "finalhandler": "1.2.0", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.4.1", - "ee-first": "1.1.1", - "parseurl": "1.3.3", - "statuses": "2.0.1", - "unpipe": "1.0.0", - "array-flatten": "1.1.1", - "path-to-regexp": "0.1.7", - "methods": "1.1.2", - "utils-merge": "1.0.1", - "setprototypeof": "1.2.0", - "qs": "6.11.0", - "side-channel": "1.0.6", - "get-intrinsic": "1.2.4", - "es-errors": "1.3.0", - "has-symbols": "1.0.3", - "has-proto": "1.0.3", - "function-bind": "1.1.2", - "hasown": "2.0.2", - "call-bind": "1.0.7", - "set-function-length": "1.2.2", - "define-data-property": "1.1.4", - "es-define-property": "1.0.0", - "gopd": "1.0.1", - "has-property-descriptors": "1.0.2", - "object-inspect": "1.13.1", - "safe-buffer": "5.2.1", - "content-disposition": "0.5.4", - "content-type": "1.0.5", - "send": "0.18.0", - "http-errors": "2.0.0", - "inherits": "2.0.4", - "toidentifier": "1.0.1", - "destroy": "1.2.0", - "etag": "1.8.1", - "fresh": "0.5.2", - "mime": "1.6.0", - "ms": "2.1.3", - "range-parser": "1.2.1", - "proxy-addr": "2.0.7", - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1", - "accepts": "1.3.8", - "negotiator": "0.6.3", - "mime-types": "2.1.35", - "mime-db": "1.52.0", - "type-is": "1.6.18", - "media-typer": "0.3.0", - "cookie-signature": "1.0.6", - "cookie": "0.6.0", - "vary": "1.1.2", - "bytes": "3.1.2", - "raw-body": "2.5.2", - "iconv-lite": "0.4.24", - "safer-buffer": "2.1.2", - "serve-static": "1.15.0" - } - } -] \ No newline at end of file From 6b4b12bce8de32bc5a0acda4f3625ff2491bc503 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Fri, 12 Apr 2024 13:09:10 +0200 Subject: [PATCH 3/9] save payload (get url from trace) --- .../express/test-error--event.json | 3 +- .../express/test-error--transaction.json | 298 +++++++++++ .../test-error-manual--transaction.json | 328 ++++++++++++ .../test-local-variables-caught--event.json | 3 +- .../test-local-variables-uncaught--event.json | 484 ++++++++++++++++++ ...local-variables-uncaught--transaction.json | 298 +++++++++++ .../test-param-error_1337--transaction.json | 298 +++++++++++ .../express/test-success--transaction.json | 298 +++++++++++ .../test-success-manual--transaction.json | 328 ++++++++++++ .../src/event-proxy-server.ts | 30 +- 10 files changed, 2353 insertions(+), 15 deletions(-) create mode 100644 utils/event-proxy-server/payload-files/express/test-error--transaction.json create mode 100644 utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json create mode 100644 utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--event.json create mode 100644 utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/express/test-success--transaction.json create mode 100644 utils/event-proxy-server/payload-files/express/test-success-manual--transaction.json diff --git a/utils/event-proxy-server/payload-files/express/test-error--event.json b/utils/event-proxy-server/payload-files/express/test-error--event.json index 845092a..7c6e6f1 100644 --- a/utils/event-proxy-server/payload-files/express/test-error--event.json +++ b/utils/event-proxy-server/payload-files/express/test-error--event.json @@ -375,8 +375,7 @@ "sec-fetch-mode": "navigate", "sec-fetch-site": "none", "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" + "if-none-match": "[[W/entityTagValue]]" }, "url": "http://localhost:3030/test-error" }, diff --git a/utils/event-proxy-server/payload-files/express/test-error--transaction.json b/utils/event-proxy-server/payload-files/express/test-error--transaction.json new file mode 100644 index 0000000..95d9cfa --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-error--transaction.json @@ -0,0 +1,298 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-error", + "express.name": "/test-error", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-error", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json b/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json new file mode 100644 index 0000000..f743b8b --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-error-manual--transaction.json @@ -0,0 +1,328 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-error-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error-manual" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-error-manual", + "express.name": "/test-error-manual", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-error-manual", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "sentry.op": "e2e-test", + "otel.kind": "INTERNAL" + }, + "description": "test-transaction", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "op": "e2e-test", + "origin": "manual" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json b/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json index 98d3769..e105e41 100644 --- a/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json +++ b/utils/event-proxy-server/payload-files/express/test-local-variables-caught--event.json @@ -402,8 +402,7 @@ "sec-fetch-mode": "navigate", "sec-fetch-site": "none", "sec-fetch-user": "?1", - "pragma": "no-cache", - "cache-control": "no-cache" + "if-none-match": "[[W/entityTagValue]]" }, "url": "http://localhost:3030/test-local-variables-caught" }, diff --git a/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--event.json b/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--event.json new file mode 100644 index 0000000..0eabfe8 --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--event.json @@ -0,0 +1,484 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL VARIABLE\"}", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-express.build.src:instrumentation", + "function": "arguments.", + "lineno": 210, + "colno": 41, + "in_app": false, + "pre_context": [ + " (_a = req.res) === null || _a === void 0 ? void 0 : _a.removeListener('finish', onResponseFinish);", + " span.end();", + " }", + " if (!(req.route && isError)) {", + " req[internal_types_1._LAYERS_STORE_PROPERTY].pop();", + " }", + " const callback = args[callbackIdx];" + ], + "context_line": " return callback.apply(this, arguments);", + "post_context": [ + " };", + " }", + " try {", + " return original.apply(this, arguments);", + " }", + " catch (anyError) {", + " const [error, message] = (0, utils_1.asErrorAndMessage)(anyError);" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "express.lib.router:index", + "function": "next", + "lineno": 280, + "colno": 10, + "in_app": false, + "pre_context": [ + " // Capture one-time layer values", + " req.params = self.mergeParams", + " ? mergeParams(layer.params, parentParams)", + " : layer.params;", + " var layerPath = layer.path;", + "", + " // this should be done for the layer" + ], + "context_line": " self.process_params(layer, paramcalled, req, res, function (err) {", + "post_context": [ + " if (err) {", + " next(layerError || err)", + " } else if (route) {", + " layer.handle_request(req, res, next)", + " } else {", + " trim_prefix(layer, layerError, layerPath, path)", + " }" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "express.lib.router:index", + "function": "Function.process_params", + "lineno": 346, + "colno": 12, + "in_app": false, + "pre_context": [ + " var params = this.params;", + "", + " // captured parameters from the layer, keys and values", + " var keys = layer.keys;", + "", + " // fast track", + " if (!keys || keys.length === 0) {" + ], + "context_line": " return done();", + "post_context": [ + " }", + "", + " var i = 0;", + " var name;", + " var paramIndex = 0;", + " var key;", + " var paramVal;" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "express.lib.router:index", + "function": "?", + "lineno": 284, + "colno": 15, + "in_app": false, + "pre_context": [ + " var layerPath = layer.path;", + "", + " // this should be done for the layer", + " self.process_params(layer, paramcalled, req, res, function (err) {", + " if (err) {", + " next(layerError || err)", + " } else if (route) {" + ], + "context_line": " layer.handle_request(req, res, next)", + "post_context": [ + " } else {", + " trim_prefix(layer, layerError, layerPath, path)", + " }", + "", + " sync = 0", + " });", + " }" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "express.lib.router:layer", + "function": "Layer.handle [as handle_request]", + "lineno": 95, + "colno": 5, + "in_app": false, + "pre_context": [ + "", + " if (fn.length > 3) {", + " // not a standard request handler", + " return next();", + " }", + "", + " try {" + ], + "context_line": " fn(req, res, next);", + "post_context": [ + " } catch (err) {", + " next(err);", + " }", + "};", + "", + "/**", + " * Check if this route matches `path`, if so" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-express.build.src:instrumentation", + "function": "?", + "lineno": 214, + "colno": 37, + "in_app": false, + "pre_context": [ + " req[internal_types_1._LAYERS_STORE_PROPERTY].pop();", + " }", + " const callback = args[callbackIdx];", + " return callback.apply(this, arguments);", + " };", + " }", + " try {" + ], + "context_line": " return original.apply(this, arguments);", + "post_context": [ + " }", + " catch (anyError) {", + " const [error, message] = (0, utils_1.asErrorAndMessage)(anyError);", + " span.recordException(error);", + " span.setStatus({", + " code: api_1.SpanStatusCode.ERROR,", + " message," + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "express.lib.router:route", + "function": "Route.dispatch", + "lineno": 119, + "colno": 3, + "in_app": false, + "pre_context": [ + "", + " if (method === 'head' && !this.methods['head']) {", + " method = 'get';", + " }", + "", + " req.route = this;", + "" + ], + "context_line": " next();", + "post_context": [ + "", + " function next(err) {", + " // signal to exit route", + " if (err && err === 'route') {", + " return done();", + " }", + "" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "express.lib.router:route", + "function": "next", + "lineno": 149, + "colno": 13, + "in_app": false, + "pre_context": [ + " }", + "", + " if (layer.method && layer.method !== method) {", + " next(err)", + " } else if (err) {", + " layer.handle_error(err, req, res, next);", + " } else {" + ], + "context_line": " layer.handle_request(req, res, next);", + "post_context": [ + " }", + "", + " sync = 0", + " }", + "};", + "", + "/**" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "express.lib.router:layer", + "function": "Layer.handle [as handle_request]", + "lineno": 95, + "colno": 5, + "in_app": false, + "pre_context": [ + "", + " if (fn.length > 3) {", + " // not a standard request handler", + " return next();", + " }", + "", + " try {" + ], + "context_line": " fn(req, res, next);", + "post_context": [ + " } catch (err) {", + " next(err);", + " }", + "};", + "", + "/**", + " * Check if this route matches `path`, if so" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "app", + "function": "?", + "lineno": 159, + "colno": 11, + "in_app": true, + "pre_context": [ + " return [2 /*return*/];", + " }", + " });", + " });", + "});", + "app.get('/test-local-variables-uncaught', function (req, res) {", + " var randomVariableToRecord = 'LOCAL VARIABLE';" + ], + "context_line": " throw new Error(\"Uncaught Local Variable Error - \".concat(JSON.stringify({ randomVariableToRecord: randomVariableToRecord })));", + "post_context": [ + "});", + "app.get('/test-local-variables-caught', function (req, res) {", + " var randomVariableToRecord = 'LOCAL VARIABLE';", + " var exceptionId;", + " try {", + " throw new Error('Local Variable Error');", + " }" + ], + "vars": { + "randomVariableToRecord": "LOCAL VARIABLE", + "res": "", + "req": "" + } + } + ] + }, + "mechanism": { + "type": "middleware", + "handled": false + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1" + }, + "url": "http://localhost:3030/test-local-variables-uncaught" + }, + "transaction": "GET /test-local-variables-uncaught", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json b/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json new file mode 100644 index 0000000..97de833 --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-local-variables-uncaught--transaction.json @@ -0,0 +1,298 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-uncaught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-uncaught", + "otel.kind": "SERVER", + "http.response.status_code": 500, + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 500, + "http.status_text": "INTERNAL SERVER ERROR", + "http.route": "/test-local-variables-uncaught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "unknown_error" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 500, + "http.status_text": "INTERNAL SERVER ERROR", + "http.route": "/test-local-variables-uncaught" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-local-variables-uncaught", + "express.name": "/test-local-variables-uncaught", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-local-variables-uncaught", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-uncaught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json b/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json new file mode 100644 index 0000000..4774ea2 --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-param-error_1337--transaction.json @@ -0,0 +1,298 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-error/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-error/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-param-error/:param", + "express.name": "/test-param-error/:param", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-param-error/:param", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-error/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-success--transaction.json b/utils/event-proxy-server/payload-files/express/test-success--transaction.json new file mode 100644 index 0000000..8015a0b --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-success--transaction.json @@ -0,0 +1,298 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success", + "otel.kind": "SERVER", + "http.response.status_code": 304, + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 304, + "http.status_text": "NOT MODIFIED", + "http.route": "/test-success" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 304, + "http.status_text": "NOT MODIFIED", + "http.route": "/test-success" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-success", + "express.name": "/test-success", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-success", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/express/test-success-manual--transaction.json b/utils/event-proxy-server/payload-files/express/test-success-manual--transaction.json new file mode 100644 index 0000000..3304b02 --- /dev/null +++ b/utils/event-proxy-server/payload-files/express/test-success-manual--transaction.json @@ -0,0 +1,328 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-success-manual", + "express.name": "/test-success-manual", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-success-manual", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "sentry.op": "e2e-test", + "otel.kind": "INTERNAL" + }, + "description": "test-transaction", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "op": "e2e-test", + "origin": "manual" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID7]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "breadcrumbs": [ + { + "timestamp": "[[timestamp]]", + "category": "console", + "level": "log", + "message": "Example app listening on port 3030" + } + ], + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "express": "4.19.2", + "body-parser": "1.20.2", + "depd": "2.0.0", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "vary": "1.1.2", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/src/event-proxy-server.ts b/utils/event-proxy-server/src/event-proxy-server.ts index 26ed602..b70f635 100644 --- a/utils/event-proxy-server/src/event-proxy-server.ts +++ b/utils/event-proxy-server/src/event-proxy-server.ts @@ -142,22 +142,30 @@ async function transformSavedJSON() { const jsonData = addCommaAfterEachLine(data); const transformedJSON = replaceDynamicValues(jsonData); - const objWithReq = transformedJSON[2] as unknown as { request: { url: string } }; const type = (transformedJSON[1] as unknown as { type: string }).type; + const objData = transformedJSON[2] as unknown as { + request?: { url?: string }; + contexts?: { trace?: { data?: { url?: string } } }; + }; - if ('request' in objWithReq) { - const url = objWithReq.request.url; - const replaceForwardSlashes = (str: string) => str.split('/').join('_'); + if ('request' in objData || 'contexts' in objData) { + const url = objData?.request?.url || objData.contexts?.trace?.data?.url; - const filepath = `payload-files/${APP}/${replaceForwardSlashes(extractPathFromUrl(url))}--${type}.json`; + if (url) { + const replaceForwardSlashes = (str: string) => str.split('/').join('_'); - writeFile(filepath, JSON.stringify(transformedJSON, null, 2)).then(() => { - console.log(`Successfully replaced data and saved file in ${filepath}`); + const filepath = `payload-files/${APP}/${replaceForwardSlashes(extractPathFromUrl(url))}--${type}.json`; - unlink(TEMPORARY_FILE_PATH).then(() => - console.log(`Successfully deleted ${TEMPORARY_FILE_PATH}`), - ); - }); + writeFile(filepath, JSON.stringify(transformedJSON, null, 2)).then(() => { + console.log(`Successfully replaced data and saved file in ${filepath}`); + + unlink(TEMPORARY_FILE_PATH).then(() => + console.log(`Successfully deleted ${TEMPORARY_FILE_PATH}`), + ); + }); + } else { + console.warn('No url found in JSON'); + } } } catch (err) { console.error('Error', err); From 3cc3d3dacf53b5ac32b3161396a00c45becf4b5b Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Mon, 15 Apr 2024 13:37:21 +0200 Subject: [PATCH 4/9] add koa application --- apps/koa/package.json | 26 + apps/koa/src/app.ts | 106 +++++ apps/koa/tsconfig.json | 7 + package.json | 4 +- .../payload-files/koa/test-error--event.json | 414 ++++++++++++++++ .../koa/test-error--transaction.json | 252 ++++++++++ .../koa/test-error-manual--event.json | 435 +++++++++++++++++ .../test-local-variables-caught--event.json | 445 ++++++++++++++++++ ...t-local-variables-caught--transaction.json | 252 ++++++++++ .../test-local-variables-uncaught--event.json | 436 +++++++++++++++++ ...local-variables-uncaught--transaction.json | 252 ++++++++++ .../koa/test-param-error_1337--event.json | 414 ++++++++++++++++ .../test-param-error_1337--transaction.json | 252 ++++++++++ .../test-param-success_1337--transaction.json | 252 ++++++++++ .../koa/test-success--transaction.json | 252 ++++++++++ .../koa/test-success-manual--transaction.json | 282 +++++++++++ yarn.lock | 249 +++++++++- 17 files changed, 4312 insertions(+), 18 deletions(-) create mode 100644 apps/koa/package.json create mode 100644 apps/koa/src/app.ts create mode 100644 apps/koa/tsconfig.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-error--event.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-error--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-error-manual--event.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-local-variables-caught--event.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-local-variables-caught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--event.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-param-error_1337--event.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-param-error_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-param-success_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-success--transaction.json create mode 100644 utils/event-proxy-server/payload-files/koa/test-success-manual--transaction.json diff --git a/apps/koa/package.json b/apps/koa/package.json new file mode 100644 index 0000000..aa76011 --- /dev/null +++ b/apps/koa/package.json @@ -0,0 +1,26 @@ +{ + "name": "koa-test-application", + "version": "1.0.0", + "main": "dist/main.js", + "directories": { + "lib": "lib" + }, + "scripts": { + "build": "tsc", + "start": "yarn build && node dist/app.js", + "clean": "npx rimraf node_modules,pnpm-lock.yaml" + }, + "license": "MIT", + "volta": { + "extends": "../../package.json" + }, + "dependencies": { + "@koa/router": "12.0.1", + "@sentry/node": "8.0.0-alpha.9", + "koa": "2.15.3" + }, + "devDependencies": { + "@types/koa": "2.15.0", + "@types/koa__router": "12.0.4" + } +} diff --git a/apps/koa/src/app.ts b/apps/koa/src/app.ts new file mode 100644 index 0000000..fc76322 --- /dev/null +++ b/apps/koa/src/app.ts @@ -0,0 +1,106 @@ +import * as Sentry from '@sentry/node'; + +Sentry.init({ + environment: 'qa', // dynamic sampling bias to keep transactions + dsn: process.env.E2E_TEST_DSN, + includeLocalVariables: true, + debug: true, + tunnel: `http://localhost:3031/`, // proxy server + tracesSampleRate: 1, +}); + +import Koa from 'koa'; +import Router from '@koa/router'; +import { stripUrlQueryAndFragment } from '@sentry/utils'; + +declare global { + namespace globalThis { + var transactionIds: string[]; + } +} + +const router = new Router(); +const app = new Koa(); + +router.get('/test-success', ctx => { + ctx.body = { version: 'v1' }; +}); + +router.get('/test-error', async ctx => { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + Sentry.flush(2000); + + ctx.body = { exceptionId }; +}); + +router.get('/test-param-success/:param', ctx => { + ctx.body = { paramWas: ctx.params.param }; +}); + +router.get('/test-param-error/:param', async ctx => { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + Sentry.flush(2000); + + ctx.body = { exceptionId, paramWas: ctx.params.param }; +}); + +router.get('/test-success-manual', async ctx => { + Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, () => { + Sentry.startSpan({ name: 'test-span' }, () => undefined); + }); + + Sentry.flush(); + + ctx.body = { + transactionIds: global.transactionIds || [], + }; +}); + +router.get('/test-error-manual', async ctx => { + Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, () => { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.captureException(new Error('This is an error')); + }); + }); + + Sentry.flush(); + + ctx.body = { + transactionIds: global.transactionIds || [], + }; +}); + +router.get('/test-local-variables-uncaught', ctx => { + const randomVariableToRecord = 'LOCAL VARIABLE'; + throw new Error(`Uncaught Local Variable Error - ${JSON.stringify({ randomVariableToRecord })}`); +}); + +router.get('/test-local-variables-caught', ctx => { + const randomVariableToRecord = 'LOCAL VARIABLE'; + + let exceptionId: string; + try { + throw new Error('Local Variable Error'); + } catch (e) { + exceptionId = Sentry.captureException(e); + } + + ctx.body = { exceptionId, randomVariableToRecord }; +}); + +Sentry.setupKoaErrorHandler(app); + +app.on('error', (err, ctx) => { + console.log('error', err); + + ctx.body({ + error: err.message, + status: ctx.status, + }); +}); + +app.use(router.routes()).use(router.allowedMethods()); + +app.listen(3030); diff --git a/apps/koa/tsconfig.json b/apps/koa/tsconfig.json new file mode 100644 index 0000000..899a860 --- /dev/null +++ b/apps/koa/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "include": ["src/**/*.ts"], + "compilerOptions": { + "outDir": "dist" + } +} diff --git a/package.json b/package.json index 521a96b..93a8b83 100644 --- a/package.json +++ b/package.json @@ -10,13 +10,15 @@ "scripts": { "start:proxy-server": "yarn workspace event-proxy-server run start", "start:express": "yarn workspace express-test-application run start", + "start:koa": "yarn workspace koa-test-application run start", "fix:prettier": "prettier . --write", "fix:lint": "yarn run eslint --fix", "lint": "yarn run eslint" }, "workspaces": [ "utils/event-proxy-server", - "apps/express" + "apps/express", + "apps/koa" ], "devDependencies": { "@eslint/js": "^9.0.0", diff --git a/utils/event-proxy-server/payload-files/koa/test-error--event.json b/utils/event-proxy-server/payload-files/koa/test-error--event.json new file mode 100644 index 0000000..9ccc7b1 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-error--event.json @@ -0,0 +1,414 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 150, + "colno": 34, + "in_app": false, + "pre_context": [ + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);", + " return api.context.with(newContext, async () => {", + " try {" + ], + "context_line": " return await middlewareLayer(context, next);", + "post_context": [ + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }", + " finally {", + " span.end();" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 82, + "colno": 51, + "in_app": true, + "pre_context": [ + "var koa_1 = __importDefault(require(\"koa\"));", + "var router_1 = __importDefault(require(\"@koa/router\"));", + "var router = new router_1.default();", + "var app = new koa_1.default();", + "router.get('/test-success', function (ctx) {", + " ctx.body = { version: 'v1' };", + "});" + ], + "context_line": "router.get('/test-error', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " Sentry.flush(2000);", + " ctx.body = { exceptionId: exceptionId };", + " return [2 /*return*/];", + " });" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "__awaiter", + "lineno": 27, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 31, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.next", + "lineno": 37, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "step", + "lineno": 56, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "var __importDefault = (this && this.__importDefault) || function (mod) {", + " return (mod && mod.__esModule) ? mod : { \"default\": mod };", + "};" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 85, + "colno": 47, + "in_app": true, + "pre_context": [ + "var app = new koa_1.default();", + "router.get('/test-success', function (ctx) {", + " ctx.body = { version: 'v1' };", + "});", + "router.get('/test-error', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " Sentry.flush(2000);", + " ctx.body = { exceptionId: exceptionId };", + " return [2 /*return*/];", + " });", + "}); });", + "router.get('/test-param-success/:param', function (ctx) {", + " ctx.body = { paramWas: ctx.params.param };" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error" + }, + "transaction": "GET /test-error", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-error--transaction.json b/utils/event-proxy-server/payload-files/koa/test-error--transaction.json new file mode 100644 index 0000000..46a2ab2 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-error--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-error", + "koa.type": "router", + "http.route": "/test-error", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-error", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-error-manual--event.json b/utils/event-proxy-server/payload-files/koa/test-error-manual--event.json new file mode 100644 index 0000000..46410c4 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-error-manual--event.json @@ -0,0 +1,435 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "Object.startSpan", + "lineno": 874, + "colno": 17, + "in_app": false, + "pre_context": [ + "", + " const activeCtx = getContext(options.scope, options.forceTransaction);", + " const shouldSkipSpan = options.onlyIfParent && !api.trace.getSpan(activeCtx);", + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", + "" + ], + "context_line": " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + "post_context": [ + " _applySentryAttributesToSpan(span, options);", + "", + " return core.handleCallbackErrors(", + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@opentelemetry.sdk-trace-base.build.src:Tracer", + "function": "Tracer.startActiveSpan", + "lineno": 121, + "colno": 32, + "in_app": false, + "pre_context": [ + " opts = arg2;", + " ctx = arg3;", + " fn = arg4;", + " }", + " const parentContext = ctx !== null && ctx !== void 0 ? ctx : api.context.active();", + " const span = this.startSpan(name, opts, parentContext);", + " const contextWithSpanSet = api.trace.setSpan(parentContext, span);" + ], + "context_line": " return api.context.with(contextWithSpanSet, fn, undefined, span);", + "post_context": [ + " }", + " /** Returns the active {@link GeneralLimits}. */", + " getGeneralLimits() {", + " return this._generalLimits;", + " }", + " /** Returns the active {@link SpanLimits}. */", + " getSpanLimits() {" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, + "in_app": false, + "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) {" + ], + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "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", + " */" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, + "in_app": false, + "pre_context": [ + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", + "", + " setContextOnScope(newCurrentScope, ctx2);", + "" + ], + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", + "post_context": [ + " }", + " }", + "", + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 877, + "colno": 17, + "in_app": false, + "pre_context": [ + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", + "" + ], + "context_line": " return core.handleCallbackErrors(", + "post_context": [ + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " }," + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "@sentry.core.cjs.utils:handleCallbackErrors", + "function": "Object.handleCallbackErrors", + "lineno": 26, + "colno": 26, + "in_app": false, + "pre_context": [ + " fn,", + " onError,", + " // eslint-disable-next-line @typescript-eslint/no-empty-function", + " onFinally = () => {},", + ") {", + " let maybePromiseResult;", + " try {" + ], + "context_line": " maybePromiseResult = fn();", + "post_context": [ + " } catch (e) {", + " onError(e);", + " onFinally();", + " throw e;", + " }", + "", + " return maybeHandlePromiseRejection(maybePromiseResult, onError, onFinally);" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 878, + "colno": 13, + "in_app": false, + "pre_context": [ + "", + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", + "", + " return core.handleCallbackErrors(" + ], + "context_line": " () => callback(span),", + "post_context": [ + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " },", + " () => span.end()," + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "app", + "function": "?", + "lineno": 119, + "colno": 41, + "in_app": true, + "pre_context": [ + " return [2 /*return*/];", + " });", + "}); });", + "router.get('/test-error-manual', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + " return __generator(this, function (_a) {", + " Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, function () {", + " Sentry.startSpan({ name: 'test-span' }, function () {" + ], + "context_line": " Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " });", + " });", + " Sentry.flush();", + " ctx.body = {", + " transactionIds: global.transactionIds || [],", + " };", + " return [2 /*return*/];" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error-manual" + }, + "transaction": "GET /test-error-manual", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--event.json b/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--event.json new file mode 100644 index 0000000..dab489e --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--event.json @@ -0,0 +1,445 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "Local Variable Error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "koa-compose:index", + "function": "dispatch", + "lineno": 42, + "colno": 32, + "in_app": false, + "pre_context": [ + " function dispatch (i) {", + " if (i <= index) return Promise.reject(new Error('next() called multiple times'))", + " index = i", + " let fn = middleware[i]", + " if (i === middleware.length) fn = next", + " if (!fn) return Promise.resolve()", + " try {" + ], + "context_line": " return Promise.resolve(fn(context, dispatch.bind(null, i + 1)));", + "post_context": [ + " } catch (err) {", + " return Promise.reject(err)", + " }", + " }", + " }", + "}", + "" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@koa.router.lib:router", + "function": "?", + "lineno": 423, + "colno": 16, + "in_app": false, + "pre_context": [ + " ctx.routerPath = layer.path;", + " ctx.routerName = layer.name;", + " ctx._matchedRoute = layer.path;", + " if (layer.name) {", + " ctx._matchedRouteName = layer.name;", + " }", + "" + ], + "context_line": " return next();", + "post_context": [ + " });", + " return memo.concat(layer.stack);", + " }, []);", + "", + " return compose(layerChain)(ctx, next);", + " };", + "" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "koa-compose:index", + "function": "dispatch", + "lineno": 42, + "colno": 32, + "in_app": false, + "pre_context": [ + " function dispatch (i) {", + " if (i <= index) return Promise.reject(new Error('next() called multiple times'))", + " index = i", + " let fn = middleware[i]", + " if (i === middleware.length) fn = next", + " if (!fn) return Promise.resolve()", + " try {" + ], + "context_line": " return Promise.resolve(fn(context, dispatch.bind(null, i + 1)));", + "post_context": [ + " } catch (err) {", + " return Promise.reject(err)", + " }", + " }", + " }", + "}", + "" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 148, + "colno": 36, + "in_app": false, + "pre_context": [ + " }), e => {", + " if (e) {", + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);" + ], + "context_line": " return api.context.with(newContext, async () => {", + "post_context": [ + " try {", + " return await middlewareLayer(context, next);", + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, + "in_app": false, + "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) {" + ], + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "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", + " */" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, + "in_app": false, + "pre_context": [ + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", + "", + " setContextOnScope(newCurrentScope, ctx2);", + "" + ], + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", + "post_context": [ + " }", + " }", + "", + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 150, + "colno": 34, + "in_app": false, + "pre_context": [ + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);", + " return api.context.with(newContext, async () => {", + " try {" + ], + "context_line": " return await middlewareLayer(context, next);", + "post_context": [ + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }", + " finally {", + " span.end();" + ] + }, + { + "filename": "[[FILENAME8]]", + "module": "app", + "function": "?", + "lineno": 136, + "colno": 15, + "in_app": true, + "pre_context": [ + " var randomVariableToRecord = 'LOCAL VARIABLE';", + " throw new Error(\"Uncaught Local Variable Error - \".concat(JSON.stringify({ randomVariableToRecord: randomVariableToRecord })));", + "});", + "router.get('/test-local-variables-caught', function (ctx) {", + " var randomVariableToRecord = 'LOCAL VARIABLE';", + " var exceptionId;", + " try {" + ], + "context_line": " throw new Error('Local Variable Error');", + "post_context": [ + " }", + " catch (e) {", + " exceptionId = Sentry.captureException(e);", + " }", + " ctx.body = { exceptionId: exceptionId, randomVariableToRecord: randomVariableToRecord };", + "});", + "Sentry.setupKoaErrorHandler(app);" + ], + "vars": { + "exceptionId": "", + "randomVariableToRecord": "LOCAL VARIABLE", + "ctx": { + "originalUrl": "/test-local-variables-caught", + "_matchedRoute": "/test-local-variables-caught", + "routerPath": "/test-local-variables-caught", + "routerName": null + } + } + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-caught" + }, + "transaction": "GET /test-local-variables-caught", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--transaction.json b/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--transaction.json new file mode 100644 index 0000000..61ce87d --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-local-variables-caught--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-caught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-caught", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-local-variables-caught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-caught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-local-variables-caught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-local-variables-caught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-caught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-local-variables-caught" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-local-variables-caught", + "koa.type": "router", + "http.route": "/test-local-variables-caught", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-local-variables-caught", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-caught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--event.json b/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--event.json new file mode 100644 index 0000000..d95a939 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--event.json @@ -0,0 +1,436 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL VARIABLE\"}", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "koa-compose:index", + "function": "dispatch", + "lineno": 42, + "colno": 32, + "in_app": false, + "pre_context": [ + " function dispatch (i) {", + " if (i <= index) return Promise.reject(new Error('next() called multiple times'))", + " index = i", + " let fn = middleware[i]", + " if (i === middleware.length) fn = next", + " if (!fn) return Promise.resolve()", + " try {" + ], + "context_line": " return Promise.resolve(fn(context, dispatch.bind(null, i + 1)));", + "post_context": [ + " } catch (err) {", + " return Promise.reject(err)", + " }", + " }", + " }", + "}", + "" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@koa.router.lib:router", + "function": "?", + "lineno": 423, + "colno": 16, + "in_app": false, + "pre_context": [ + " ctx.routerPath = layer.path;", + " ctx.routerName = layer.name;", + " ctx._matchedRoute = layer.path;", + " if (layer.name) {", + " ctx._matchedRouteName = layer.name;", + " }", + "" + ], + "context_line": " return next();", + "post_context": [ + " });", + " return memo.concat(layer.stack);", + " }, []);", + "", + " return compose(layerChain)(ctx, next);", + " };", + "" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "koa-compose:index", + "function": "dispatch", + "lineno": 42, + "colno": 32, + "in_app": false, + "pre_context": [ + " function dispatch (i) {", + " if (i <= index) return Promise.reject(new Error('next() called multiple times'))", + " index = i", + " let fn = middleware[i]", + " if (i === middleware.length) fn = next", + " if (!fn) return Promise.resolve()", + " try {" + ], + "context_line": " return Promise.resolve(fn(context, dispatch.bind(null, i + 1)));", + "post_context": [ + " } catch (err) {", + " return Promise.reject(err)", + " }", + " }", + " }", + "}", + "" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 148, + "colno": 36, + "in_app": false, + "pre_context": [ + " }), e => {", + " if (e) {", + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);" + ], + "context_line": " return api.context.with(newContext, async () => {", + "post_context": [ + " try {", + " return await middlewareLayer(context, next);", + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, + "in_app": false, + "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) {" + ], + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "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", + " */" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, + "in_app": false, + "pre_context": [ + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", + "", + " setContextOnScope(newCurrentScope, ctx2);", + "" + ], + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", + "post_context": [ + " }", + " }", + "", + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 150, + "colno": 34, + "in_app": false, + "pre_context": [ + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);", + " return api.context.with(newContext, async () => {", + " try {" + ], + "context_line": " return await middlewareLayer(context, next);", + "post_context": [ + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }", + " finally {", + " span.end();" + ] + }, + { + "filename": "[[FILENAME8]]", + "module": "app", + "function": "?", + "lineno": 130, + "colno": 11, + "in_app": true, + "pre_context": [ + " transactionIds: global.transactionIds || [],", + " };", + " return [2 /*return*/];", + " });", + "}); });", + "router.get('/test-local-variables-uncaught', function (ctx) {", + " var randomVariableToRecord = 'LOCAL VARIABLE';" + ], + "context_line": " throw new Error(\"Uncaught Local Variable Error - \".concat(JSON.stringify({ randomVariableToRecord: randomVariableToRecord })));", + "post_context": [ + "});", + "router.get('/test-local-variables-caught', function (ctx) {", + " var randomVariableToRecord = 'LOCAL VARIABLE';", + " var exceptionId;", + " try {", + " throw new Error('Local Variable Error');", + " }" + ], + "vars": {} + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-uncaught" + }, + "transaction": "GET /test-local-variables-uncaught", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--transaction.json b/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--transaction.json new file mode 100644 index 0000000..dcb6864 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-local-variables-uncaught--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-uncaught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-uncaught", + "otel.kind": "SERVER", + "http.response.status_code": 404, + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 404, + "http.status_text": "NOT FOUND", + "http.route": "/test-local-variables-uncaught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "not_found" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 404, + "http.status_text": "NOT FOUND", + "http.route": "/test-local-variables-uncaught" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-local-variables-uncaught", + "koa.type": "router", + "http.route": "/test-local-variables-uncaught", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-local-variables-uncaught", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-uncaught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-param-error_1337--event.json b/utils/event-proxy-server/payload-files/koa/test-param-error_1337--event.json new file mode 100644 index 0000000..617e3d2 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-param-error_1337--event.json @@ -0,0 +1,414 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.instrumentation-koa.build.src:instrumentation", + "function": "?", + "lineno": 150, + "colno": 34, + "in_app": false, + "pre_context": [ + " api.diag.error('koa instrumentation: request hook failed', e);", + " }", + " }, true);", + " }", + " const newContext = api.trace.setSpan(api.context.active(), span);", + " return api.context.with(newContext, async () => {", + " try {" + ], + "context_line": " return await middlewareLayer(context, next);", + "post_context": [ + " }", + " catch (err) {", + " span.recordException(err);", + " throw err;", + " }", + " finally {", + " span.end();" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 94, + "colno": 64, + "in_app": true, + "pre_context": [ + " ctx.body = { exceptionId: exceptionId };", + " return [2 /*return*/];", + " });", + "}); });", + "router.get('/test-param-success/:param', function (ctx) {", + " ctx.body = { paramWas: ctx.params.param };", + "});" + ], + "context_line": "router.get('/test-param-error/:param', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " Sentry.flush(2000);", + " ctx.body = { exceptionId: exceptionId, paramWas: ctx.params.param };", + " return [2 /*return*/];", + " });" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "__awaiter", + "lineno": 27, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 31, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.next", + "lineno": 37, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "step", + "lineno": 56, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "var __importDefault = (this && this.__importDefault) || function (mod) {", + " return (mod && mod.__esModule) ? mod : { \"default\": mod };", + "};" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 97, + "colno": 47, + "in_app": true, + "pre_context": [ + "}); });", + "router.get('/test-param-success/:param', function (ctx) {", + " ctx.body = { paramWas: ctx.params.param };", + "});", + "router.get('/test-param-error/:param', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " Sentry.flush(2000);", + " ctx.body = { exceptionId: exceptionId, paramWas: ctx.params.param };", + " return [2 /*return*/];", + " });", + "}); });", + "router.get('/test-success-manual', function (ctx) { return __awaiter(void 0, void 0, void 0, function () {", + " return __generator(this, function (_a) {" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-param-error/1337" + }, + "transaction": "GET /test-param-error/1337", + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-param-error_1337--transaction.json b/utils/event-proxy-server/payload-files/koa/test-param-error_1337--transaction.json new file mode 100644 index 0000000..5414a41 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-param-error_1337--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-error/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-error/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-param-error/:param", + "koa.type": "router", + "http.route": "/test-param-error/:param", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-param-error/:param", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-error/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-param-success_1337--transaction.json b/utils/event-proxy-server/payload-files/koa/test-param-success_1337--transaction.json new file mode 100644 index 0000000..c618988 --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-param-success_1337--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-success/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-success/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-success/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-success/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-success/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-param-success/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-success/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-success/:param" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-param-success/:param", + "koa.type": "router", + "http.route": "/test-param-success/:param", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-param-success/:param", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-success/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-success--transaction.json b/utils/event-proxy-server/payload-files/koa/test-success--transaction.json new file mode 100644 index 0000000..c0fdd2a --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-success--transaction.json @@ -0,0 +1,252 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-success", + "koa.type": "router", + "http.route": "/test-success", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-success", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/koa/test-success-manual--transaction.json b/utils/event-proxy-server/payload-files/koa/test-success-manual--transaction.json new file mode 100644 index 0000000..5bed23e --- /dev/null +++ b/utils/event-proxy-server/payload-files/koa/test-success-manual--transaction.json @@ -0,0 +1,282 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "", + "koa.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - ", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "koa.name": "/test-success-manual", + "koa.type": "router", + "http.route": "/test-success-manual", + "otel.kind": "INTERNAL" + }, + "description": "router - /test-success-manual", + "parent_span_id": "[[ID4]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "sentry.op": "e2e-test", + "otel.kind": "INTERNAL" + }, + "description": "test-transaction", + "parent_span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "op": "e2e-test", + "origin": "manual" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "koa": "2.15.3", + "is-generator-function": "1.0.10", + "has-tostringtag": "1.0.2", + "has-symbols": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "content-disposition": "0.5.4", + "safe-buffer": "5.2.1", + "cache-content-type": "1.0.1", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "ylru": "1.4.0", + "escape-html": "1.0.3", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "destroy": "1.2.0", + "vary": "1.1.2", + "only": "0.0.2", + "encodeurl": "1.0.2", + "koa-compose": "4.1.0", + "setprototypeof": "1.2.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "http-assert": "1.5.0", + "deep-equal": "1.0.1", + "delegates": "1.0.0", + "cookies": "0.9.1", + "depd": "2.0.0", + "keygrip": "1.1.0", + "tsscmp": "1.0.6", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "content-type": "1.0.5", + "parseurl": "1.3.3", + "fresh": "0.5.2", + "koa-convert": "2.0.0", + "co": "4.6.0", + "http-errors": "2.0.0", + "statuses": "2.0.1", + "methods": "1.1.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 5090b49..99f2551 100644 --- a/yarn.lock +++ b/yarn.lock @@ -235,6 +235,19 @@ __metadata: languageName: node linkType: hard +"@koa/router@npm:12.0.1": + version: 12.0.1 + resolution: "@koa/router@npm:12.0.1" + dependencies: + debug: "npm:^4.3.4" + http-errors: "npm:^2.0.0" + koa-compose: "npm:^4.1.0" + methods: "npm:^1.1.2" + path-to-regexp: "npm:^6.2.1" + checksum: 10c0/978a668a88dad8cba38afe0df537b95f6d49bdaa60af5f479240fde3a87a7046cf8c068a58c355442335794db5cb583b88ca07a4b65f217b44925a7ce99ccc1d + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -679,7 +692,7 @@ __metadata: languageName: node linkType: hard -"@sentry/node@npm:^8.0.0-alpha.9": +"@sentry/node@npm:8.0.0-alpha.9, @sentry/node@npm:^8.0.0-alpha.9": version: 8.0.0-alpha.9 resolution: "@sentry/node@npm:8.0.0-alpha.9" dependencies: @@ -947,7 +960,7 @@ __metadata: languageName: node linkType: hard -"@types/koa@npm:*": +"@types/koa@npm:*, @types/koa@npm:2.15.0": version: 2.15.0 resolution: "@types/koa@npm:2.15.0" dependencies: @@ -988,6 +1001,15 @@ __metadata: languageName: node linkType: hard +"@types/koa__router@npm:12.0.4": + version: 12.0.4 + resolution: "@types/koa__router@npm:12.0.4" + dependencies: + "@types/koa": "npm:*" + checksum: 10c0/bc783b47d3c2a6bb8171ba3ddffa5781c5ed11e6b716e74281dfb71229ceb3189ddf5ac178e6f9552ca9d43e8370e0bd558054d66439b43a9e500d046a15ffa8 + languageName: node + linkType: hard + "@types/mime-db@npm:*": version: 1.43.5 resolution: "@types/mime-db@npm:1.43.5" @@ -1244,7 +1266,7 @@ __metadata: languageName: node linkType: hard -"accepts@npm:~1.3.8": +"accepts@npm:^1.3.5, accepts@npm:~1.3.8": version: 1.3.8 resolution: "accepts@npm:1.3.8" dependencies: @@ -1492,6 +1514,16 @@ __metadata: languageName: node linkType: hard +"cache-content-type@npm:^1.0.0": + version: 1.0.1 + resolution: "cache-content-type@npm:1.0.1" + dependencies: + mime-types: "npm:^2.1.18" + ylru: "npm:^1.2.0" + checksum: 10c0/59b50e29e64a24bb52a16e5d35b69ad27ef14313701acc5e462b0aeebf2f09ff87fb6538eb0c0f0de4de05c8a1eecaef47f455f5b4928079e68f607f816a0843 + languageName: node + linkType: hard + "call-bind@npm:^1.0.7": version: 1.0.7 resolution: "call-bind@npm:1.0.7" @@ -1562,6 +1594,13 @@ __metadata: languageName: node linkType: hard +"co@npm:^4.6.0": + version: 4.6.0 + resolution: "co@npm:4.6.0" + checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 + languageName: node + linkType: hard + "color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" @@ -1638,7 +1677,7 @@ __metadata: languageName: node linkType: hard -"content-disposition@npm:0.5.4": +"content-disposition@npm:0.5.4, content-disposition@npm:~0.5.2": version: 0.5.4 resolution: "content-disposition@npm:0.5.4" dependencies: @@ -1647,7 +1686,7 @@ __metadata: languageName: node linkType: hard -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": +"content-type@npm:^1.0.4, content-type@npm:~1.0.4, content-type@npm:~1.0.5": version: 1.0.5 resolution: "content-type@npm:1.0.5" checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af @@ -1668,6 +1707,16 @@ __metadata: languageName: node linkType: hard +"cookies@npm:~0.9.0": + version: 0.9.1 + resolution: "cookies@npm:0.9.1" + dependencies: + depd: "npm:~2.0.0" + keygrip: "npm:~1.1.0" + checksum: 10c0/3ffa1c0e992b62ee119adae4dd2ddd4a89166fa5434cd9bd9ff84ec4d2f14dfe2318a601280abfe32a4f64f884ec9345fb1912e488b002d188d2efa0d3919ba3 + languageName: node + linkType: hard + "create-require@npm:^1.1.0": version: 1.1.1 resolution: "create-require@npm:1.1.1" @@ -1707,6 +1756,13 @@ __metadata: languageName: node linkType: hard +"deep-equal@npm:~1.0.1": + version: 1.0.1 + resolution: "deep-equal@npm:1.0.1" + checksum: 10c0/bef838ef9824e124d10335deb9c7540bfc9f2f0eab17ad1bb870d0eee83ee4e7e6f6f892e5eebc2bd82759a76676926ad5246180097e28e57752176ff7dae888 + languageName: node + linkType: hard + "deep-is@npm:^0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" @@ -1725,14 +1781,28 @@ __metadata: languageName: node linkType: hard -"depd@npm:2.0.0": +"delegates@npm:^1.0.0": + version: 1.0.0 + resolution: "delegates@npm:1.0.0" + checksum: 10c0/ba05874b91148e1db4bf254750c042bf2215febd23a6d3cda2e64896aef79745fbd4b9996488bd3cafb39ce19dbce0fd6e3b6665275638befffe1c9b312b91b5 + languageName: node + linkType: hard + +"depd@npm:2.0.0, depd@npm:^2.0.0, depd@npm:~2.0.0": version: 2.0.0 resolution: "depd@npm:2.0.0" checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c languageName: node linkType: hard -"destroy@npm:1.2.0": +"depd@npm:~1.1.2": + version: 1.1.2 + resolution: "depd@npm:1.1.2" + checksum: 10c0/acb24aaf936ef9a227b6be6d495f0d2eb20108a9a6ad40585c5bda1a897031512fef6484e4fdbb80bd249fdaa82841fa1039f416ece03188e677ba11bcfda249 + languageName: node + linkType: hard + +"destroy@npm:1.2.0, destroy@npm:^1.0.4": version: 1.2.0 resolution: "destroy@npm:1.2.0" checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 @@ -1790,7 +1860,7 @@ __metadata: languageName: node linkType: hard -"encodeurl@npm:~1.0.2": +"encodeurl@npm:^1.0.2, encodeurl@npm:~1.0.2": version: 1.0.2 resolution: "encodeurl@npm:1.0.2" checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec @@ -1851,7 +1921,7 @@ __metadata: languageName: node linkType: hard -"escape-html@npm:~1.0.3": +"escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": version: 1.0.3 resolution: "escape-html@npm:1.0.3" checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 @@ -2182,7 +2252,7 @@ __metadata: languageName: node linkType: hard -"fresh@npm:0.5.2": +"fresh@npm:0.5.2, fresh@npm:~0.5.2": version: 0.5.2 resolution: "fresh@npm:0.5.2" checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a @@ -2367,6 +2437,15 @@ __metadata: languageName: node linkType: hard +"has-tostringtag@npm:^1.0.0": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" + dependencies: + has-symbols: "npm:^1.0.3" + checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c + languageName: node + linkType: hard + "hasown@npm:^2.0.0": version: 2.0.2 resolution: "hasown@npm:2.0.2" @@ -2376,6 +2455,16 @@ __metadata: languageName: node linkType: hard +"http-assert@npm:^1.3.0": + version: 1.5.0 + resolution: "http-assert@npm:1.5.0" + dependencies: + deep-equal: "npm:~1.0.1" + http-errors: "npm:~1.8.0" + checksum: 10c0/7b4e631114a1a77654f9ba3feb96da305ddbdeb42112fe384b7b3249c7141e460d7177970155bea6e54e655a04850415b744b452c1fe5052eba6f4186d16b095 + languageName: node + linkType: hard + "http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" @@ -2383,7 +2472,7 @@ __metadata: languageName: node linkType: hard -"http-errors@npm:2.0.0": +"http-errors@npm:2.0.0, http-errors@npm:^2.0.0": version: 2.0.0 resolution: "http-errors@npm:2.0.0" dependencies: @@ -2396,6 +2485,19 @@ __metadata: languageName: node linkType: hard +"http-errors@npm:^1.6.3, http-errors@npm:~1.8.0": + version: 1.8.1 + resolution: "http-errors@npm:1.8.1" + dependencies: + depd: "npm:~1.1.2" + inherits: "npm:2.0.4" + setprototypeof: "npm:1.2.0" + statuses: "npm:>= 1.5.0 < 2" + toidentifier: "npm:1.0.1" + checksum: 10c0/f01aeecd76260a6fe7f08e192fcbe9b2f39ed20fc717b852669a69930167053b01790998275c6297d44f435cf0e30edd50c05223d1bec9bc484e6cf35b2d6f43 + languageName: node + linkType: hard + "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -2571,6 +2673,15 @@ __metadata: languageName: node linkType: hard +"is-generator-function@npm:^1.0.7": + version: 1.0.10 + resolution: "is-generator-function@npm:1.0.10" + dependencies: + has-tostringtag: "npm:^1.0.0" + checksum: 10c0/df03514df01a6098945b5a0cfa1abff715807c8e72f57c49a0686ad54b3b74d394e2d8714e6f709a71eb00c9630d48e73ca1796c1ccc84ac95092c1fecc0d98b + languageName: node + linkType: hard + "is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": version: 4.0.3 resolution: "is-glob@npm:4.0.3" @@ -2687,6 +2798,15 @@ __metadata: languageName: node linkType: hard +"keygrip@npm:~1.1.0": + version: 1.1.0 + resolution: "keygrip@npm:1.1.0" + dependencies: + tsscmp: "npm:1.0.6" + checksum: 10c0/2aceec1a1e642a0caf938044056ed67b1909cfe67a93a59b32aae2863e0f35a1a53782ecc8f9cd0e3bdb60863fa0f401ccbd257cd7dfae61915f78445139edea + languageName: node + linkType: hard + "keyv@npm:^4.5.4": version: 4.5.4 resolution: "keyv@npm:4.5.4" @@ -2696,6 +2816,66 @@ __metadata: languageName: node linkType: hard +"koa-compose@npm:^4.1.0": + version: 4.1.0 + resolution: "koa-compose@npm:4.1.0" + checksum: 10c0/f1f786f994a691931148e7f38f443865bf2702af4a61610d1eea04dab79c04b1232285b59d82a0cf61c830516dd92f10ab0d009b024fcecd4098e7d296ab771a + languageName: node + linkType: hard + +"koa-convert@npm:^2.0.0": + version: 2.0.0 + resolution: "koa-convert@npm:2.0.0" + dependencies: + co: "npm:^4.6.0" + koa-compose: "npm:^4.1.0" + checksum: 10c0/d3e243ceccd11524d5f4942f6ccd828a9b18a1a967c4375192aa9eedf844f790563632839f006732ce8ca720275737c65a3bab344e13b25f41fb2be451ea102c + languageName: node + linkType: hard + +"koa-test-application@workspace:apps/koa": + version: 0.0.0-use.local + resolution: "koa-test-application@workspace:apps/koa" + dependencies: + "@koa/router": "npm:12.0.1" + "@sentry/node": "npm:8.0.0-alpha.9" + "@types/koa": "npm:2.15.0" + "@types/koa__router": "npm:12.0.4" + koa: "npm:2.15.3" + languageName: unknown + linkType: soft + +"koa@npm:2.15.3": + version: 2.15.3 + resolution: "koa@npm:2.15.3" + dependencies: + accepts: "npm:^1.3.5" + cache-content-type: "npm:^1.0.0" + content-disposition: "npm:~0.5.2" + content-type: "npm:^1.0.4" + cookies: "npm:~0.9.0" + debug: "npm:^4.3.2" + delegates: "npm:^1.0.0" + depd: "npm:^2.0.0" + destroy: "npm:^1.0.4" + encodeurl: "npm:^1.0.2" + escape-html: "npm:^1.0.3" + fresh: "npm:~0.5.2" + http-assert: "npm:^1.3.0" + http-errors: "npm:^1.6.3" + is-generator-function: "npm:^1.0.7" + koa-compose: "npm:^4.1.0" + koa-convert: "npm:^2.0.0" + on-finished: "npm:^2.3.0" + only: "npm:~0.0.2" + parseurl: "npm:^1.3.2" + statuses: "npm:^1.5.0" + type-is: "npm:^1.6.16" + vary: "npm:^1.1.2" + checksum: 10c0/1dca5027e06855dfc4144093fc678c445b5718c3a61b3b7840e3def999f3efcd0359665fb30d3f427890dfee12ebb1e7d01e210d2122a17240d2f3ceae12b2f2 + languageName: node + linkType: hard + "kuler@npm:^2.0.0": version: 2.0.0 resolution: "kuler@npm:2.0.0" @@ -2806,7 +2986,7 @@ __metadata: languageName: node linkType: hard -"methods@npm:~1.1.2": +"methods@npm:^1.1.2, methods@npm:~1.1.2": version: 1.1.2 resolution: "methods@npm:1.1.2" checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 @@ -2830,7 +3010,7 @@ __metadata: languageName: node linkType: hard -"mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": +"mime-types@npm:^2.1.18, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -3084,7 +3264,7 @@ __metadata: languageName: node linkType: hard -"on-finished@npm:2.4.1": +"on-finished@npm:2.4.1, on-finished@npm:^2.3.0": version: 2.4.1 resolution: "on-finished@npm:2.4.1" dependencies: @@ -3102,6 +3282,13 @@ __metadata: languageName: node linkType: hard +"only@npm:~0.0.2": + version: 0.0.2 + resolution: "only@npm:0.0.2" + checksum: 10c0/d26b1347835a5a9b17afbd889ed60de3d3ae14cdeca5ba008d86e6bf055466a431adc731b82e1e8ab24a3b8be5b5c2cdbc16e652d231d18cc1a5752320aaf0a0 + languageName: node + linkType: hard + "opentelemetry-instrumentation-fetch-node@npm:1.1.2": version: 1.1.2 resolution: "opentelemetry-instrumentation-fetch-node@npm:1.1.2" @@ -3163,7 +3350,7 @@ __metadata: languageName: node linkType: hard -"parseurl@npm:~1.3.3": +"parseurl@npm:^1.3.2, parseurl@npm:~1.3.3": version: 1.3.3 resolution: "parseurl@npm:1.3.3" checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 @@ -3208,6 +3395,13 @@ __metadata: languageName: node linkType: hard +"path-to-regexp@npm:^6.2.1": + version: 6.2.2 + resolution: "path-to-regexp@npm:6.2.2" + checksum: 10c0/4b60852d3501fd05ca9dd08c70033d73844e5eca14e41f499f069afa8364f780f15c5098002f93bd42af8b3514de62ac6e82a53b5662de881d2b08c9ef21ea6b + languageName: node + linkType: hard + "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -3747,6 +3941,13 @@ __metadata: languageName: node linkType: hard +"statuses@npm:>= 1.5.0 < 2, statuses@npm:^1.5.0": + version: 1.5.0 + resolution: "statuses@npm:1.5.0" + checksum: 10c0/e433900956357b3efd79b1c547da4d291799ac836960c016d10a98f6a810b1b5c0dcc13b5a7aa609a58239b5190e1ea176ad9221c2157d2fd1c747393e6b2940 + languageName: node + linkType: hard + "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -3946,6 +4147,13 @@ __metadata: languageName: node linkType: hard +"tsscmp@npm:1.0.6": + version: 1.0.6 + resolution: "tsscmp@npm:1.0.6" + checksum: 10c0/2f79a9455e7e3e8071995f98cdf3487ccfc91b760bec21a9abb4d90519557eafaa37246e87c92fa8bf3fef8fd30cfd0cc3c4212bb929baa9fb62494bfa4d24b2 + languageName: node + linkType: hard + "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -3955,7 +4163,7 @@ __metadata: languageName: node linkType: hard -"type-is@npm:~1.6.18": +"type-is@npm:^1.6.16, type-is@npm:~1.6.18": version: 1.6.18 resolution: "type-is@npm:1.6.18" dependencies: @@ -4070,7 +4278,7 @@ __metadata: languageName: node linkType: hard -"vary@npm:~1.1.2": +"vary@npm:^1.1.2, vary@npm:~1.1.2": version: 1.1.2 resolution: "vary@npm:1.1.2" checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f @@ -4165,6 +4373,13 @@ __metadata: languageName: node linkType: hard +"ylru@npm:^1.2.0": + version: 1.4.0 + resolution: "ylru@npm:1.4.0" + checksum: 10c0/eaadc38ed6d78d4fda49abed45cfdaf149bd334df761dbeadd3cff62936d25ffa94571f84c25b64a9a4b5efd8f489ee6fee3eaaf8e7b2886418a3bcb9ec84b84 + languageName: node + linkType: hard + "yn@npm:3.1.1": version: 3.1.1 resolution: "yn@npm:3.1.1" From 83193dca954fa1ddecb81768c39537380eb1c732 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Mon, 15 Apr 2024 14:23:22 +0200 Subject: [PATCH 5/9] add nestjs application --- apps/nestjs/nest-cli.json | 8 + apps/nestjs/package.json | 31 + apps/nestjs/src/app.controller.ts | 47 + apps/nestjs/src/app.module.ts | 10 + apps/nestjs/src/app.service.ts | 71 + apps/nestjs/src/main.ts | 19 + apps/nestjs/tsconfig.json | 9 + package.json | 2 + .../nestjs/test-error--event.json | 472 ++++ .../nestjs/test-error--transaction.json | 344 +++ .../nestjs/test-error-manual--event.json | 323 +++ .../test-error-manual--transaction.json | 374 +++ ...t-local-variables-caught--transaction.json | 344 +++ .../test-local-variables-uncaught--event.json | 474 ++++ ...local-variables-uncaught--transaction.json | 344 +++ .../nestjs/test-param-error_1337--event.json | 453 ++++ .../test-param-error_1337--transaction.json | 344 +++ .../test-param-success_1337--transaction.json | 344 +++ .../nestjs/test-success--transaction.json | 344 +++ .../test-success-manual--transaction.json | 374 +++ yarn.lock | 2037 ++++++++++++++++- 21 files changed, 6728 insertions(+), 40 deletions(-) create mode 100644 apps/nestjs/nest-cli.json create mode 100644 apps/nestjs/package.json create mode 100644 apps/nestjs/src/app.controller.ts create mode 100644 apps/nestjs/src/app.module.ts create mode 100644 apps/nestjs/src/app.service.ts create mode 100644 apps/nestjs/src/main.ts create mode 100644 apps/nestjs/tsconfig.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-error--event.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-error--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-error-manual--event.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-error-manual--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-local-variables-caught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--event.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--event.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-param-success_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-success--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nestjs/test-success-manual--transaction.json diff --git a/apps/nestjs/nest-cli.json b/apps/nestjs/nest-cli.json new file mode 100644 index 0000000..f9aa683 --- /dev/null +++ b/apps/nestjs/nest-cli.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://json.schemastore.org/nest-cli", + "collection": "@nestjs/schematics", + "sourceRoot": "src", + "compilerOptions": { + "deleteOutDir": true + } +} diff --git a/apps/nestjs/package.json b/apps/nestjs/package.json new file mode 100644 index 0000000..40f347b --- /dev/null +++ b/apps/nestjs/package.json @@ -0,0 +1,31 @@ +{ + "name": "nestjs-test-application", + "version": "1.0.0", + "main": "dist/main.js", + "directories": { + "lib": "lib" + }, + "scripts": { + "build": "nest build", + "start": "nest start", + "clean": "npx rimraf node_modules,pnpm-lock.yaml" + }, + "license": "MIT", + "volta": { + "extends": "../../package.json" + }, + "dependencies": { + "@nestjs/common": "10.3.7", + "@nestjs/core": "10.3.7", + "@nestjs/platform-express": "10.3.7", + "@sentry/node": "8.0.0-alpha.9", + "@sentry/types": "8.0.0-alpha.9", + "reflect-metadata": "0.2.2", + "rxjs": "7.8.1" + }, + "devDependencies": { + "@nestjs/cli": "10.3.2", + "@nestjs/schematics": "10.1.1", + "@types/express": "^4.17.17" + } +} diff --git a/apps/nestjs/src/app.controller.ts b/apps/nestjs/src/app.controller.ts new file mode 100644 index 0000000..6ea42e2 --- /dev/null +++ b/apps/nestjs/src/app.controller.ts @@ -0,0 +1,47 @@ +import { Controller, Get, Param } from '@nestjs/common'; +import { AppService } from './app.service'; + +@Controller() +export class AppController { + constructor(private readonly appService: AppService) {} + + @Get('test-success') + testSuccess() { + return this.appService.testSuccess(); + } + + @Get('test-error') + testError() { + return this.appService.testError(); + } + + @Get('test-param-success/:param') + testParamSuccess(@Param() param: string) { + return this.appService.testParamSuccess(param); + } + + @Get('test-param-error/:param') + testParamError(@Param() param: string) { + return this.appService.testParamError(param); + } + + @Get('test-success-manual') + testSuccessManual() { + return this.appService.testSuccessManual(); + } + + @Get('test-error-manual') + testErrorManual() { + return this.appService.testErrorManual(); + } + + @Get('test-local-variables-uncaught') + testLocalVariablesUncaught() { + return this.appService.testLocalVariablesUncaught(); + } + + @Get('test-local-variables-caught') + testLocalVariablesCaught() { + return this.appService.testLocalVariablesCaught(); + } +} diff --git a/apps/nestjs/src/app.module.ts b/apps/nestjs/src/app.module.ts new file mode 100644 index 0000000..8662803 --- /dev/null +++ b/apps/nestjs/src/app.module.ts @@ -0,0 +1,10 @@ +import { Module } from '@nestjs/common'; +import { AppController } from './app.controller'; +import { AppService } from './app.service'; + +@Module({ + imports: [], + controllers: [AppController], + providers: [AppService], +}) +export class AppModule {} diff --git a/apps/nestjs/src/app.service.ts b/apps/nestjs/src/app.service.ts new file mode 100644 index 0000000..cf55432 --- /dev/null +++ b/apps/nestjs/src/app.service.ts @@ -0,0 +1,71 @@ +import { Injectable } from '@nestjs/common'; +import * as Sentry from '@sentry/node'; + +@Injectable() +export class AppService { + testSuccess() { + return { version: 'v1' }; + } + + async testError() { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + + return { exceptionId }; + } + + testParamSuccess(param: string) { + return { paramWas: param }; + } + + async testParamError(param: string) { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + + return { exceptionId, paramWas: param }; + } + + async testSuccessManual() { + Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, () => { + Sentry.startSpan({ name: 'test-span' }, () => undefined); + }); + + await Sentry.flush(); + + return 'test-success-body'; + } + + async testErrorManual() { + Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, () => { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.captureException(new Error('This is an error')); + }); + }); + + await Sentry.flush(); + + return 'test-error-body'; + } + + testLocalVariablesUncaught() { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + throw new Error( + `Uncaught Local Variable Error - ${JSON.stringify({ randomVariableToRecord })}`, + ); + } + + testLocalVariablesCaught() { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + + let exceptionId: string; + try { + throw new Error('Local Variable Error'); + } catch (e) { + exceptionId = Sentry.captureException(e); + } + + return { exceptionId, randomVariableToRecord }; + } +} diff --git a/apps/nestjs/src/main.ts b/apps/nestjs/src/main.ts new file mode 100644 index 0000000..2ca5b83 --- /dev/null +++ b/apps/nestjs/src/main.ts @@ -0,0 +1,19 @@ +import { NestFactory } from '@nestjs/core'; +import * as Sentry from '@sentry/node'; +import { AppModule } from './app.module'; + +async function bootstrap() { + Sentry.init({ + environment: 'qa', // dynamic sampling bias to keep transactions + dsn: process.env.E2E_TEST_DSN, + tunnel: `http://localhost:3031/`, // proxy server + tracesSampleRate: 1, + }); + + const app = await NestFactory.create(AppModule); + Sentry.setupNestErrorHandler(app); + + await app.listen(3030); +} + +bootstrap(); diff --git a/apps/nestjs/tsconfig.json b/apps/nestjs/tsconfig.json new file mode 100644 index 0000000..f182c40 --- /dev/null +++ b/apps/nestjs/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.json", + "include": ["src/**/*.ts"], + "compilerOptions": { + "outDir": "dist", + "emitDecoratorMetadata": true, + "experimentalDecorators": true + } +} diff --git a/package.json b/package.json index 93a8b83..3354b85 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "scripts": { "start:proxy-server": "yarn workspace event-proxy-server run start", "start:express": "yarn workspace express-test-application run start", + "start:nestjs": "yarn workspace nestjs-test-application run start", "start:koa": "yarn workspace koa-test-application run start", "fix:prettier": "prettier . --write", "fix:lint": "yarn run eslint --fix", @@ -18,6 +19,7 @@ "workspaces": [ "utils/event-proxy-server", "apps/express", + "apps/nestjs", "apps/koa" ], "devDependencies": { diff --git a/utils/event-proxy-server/payload-files/nestjs/test-error--event.json b/utils/event-proxy-server/payload-files/nestjs/test-error--event.json new file mode 100644 index 0000000..1f0f8a4 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-error--event.json @@ -0,0 +1,472 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@nestjs.core.interceptors:interceptors-consumer", + "function": "InterceptorsConsumer.intercept", + "lineno": 12, + "colno": 20, + "in_app": false, + "pre_context": [ + "const async_hooks_1 = require(\"async_hooks\");", + "const rxjs_1 = require(\"rxjs\");", + "const operators_1 = require(\"rxjs/operators\");", + "const execution_context_host_1 = require(\"../helpers/execution-context-host\");", + "class InterceptorsConsumer {", + " async intercept(interceptors, args, instance, callback, next, type) {", + " if ((0, shared_utils_1.isEmpty)(interceptors)) {" + ], + "context_line": " return next();", + "post_context": [ + " }", + " const context = this.createContext(args, instance, callback);", + " context.setType(type);", + " const nextFn = async (i = 0) => {", + " if (i >= interceptors.length) {", + " return (0, rxjs_1.defer)(async_hooks_1.AsyncResource.bind(() => this.transformDeferred(next)));", + " }" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@nestjs.core.router:router-execution-context", + "function": "?", + "lineno": 38, + "colno": 29, + "in_app": false, + "pre_context": [ + " const pipes = this.pipesContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const guards = this.guardsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const interceptors = this.interceptorsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const fnCanActivate = this.createGuardsFn(guards, instance, callback, contextType);", + " const fnApplyPipes = this.createPipesFn(pipes, paramsOptions);", + " const handler = (args, req, res, next) => async () => {", + " fnApplyPipes && (await fnApplyPipes(args, req, res, next));" + ], + "context_line": " return callback.apply(instance, args);", + "post_context": [ + " };", + " return async (req, res, next) => {", + " const args = this.contextUtils.createNullArray(argsLength);", + " fnCanActivate && (await fnCanActivate([req, res, next]));", + " this.responseController.setStatus(res, httpStatusCode);", + " hasCustomHeaders &&", + " this.responseController.setHeaders(res, responseHeaders);" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "app.controller", + "function": "AppController.testError", + "lineno": 26, + "colno": 32, + "in_app": true, + "pre_context": [ + " function AppController(appService) {", + " this.appService = appService;", + " }", + " AppController.prototype.testSuccess = function () {", + " return this.appService.testSuccess();", + " };", + " AppController.prototype.testError = function () {" + ], + "context_line": " return this.appService.testError();", + "post_context": [ + " };", + " AppController.prototype.testParamSuccess = function (param) {", + " return this.appService.testParamSuccess(param);", + " };", + " AppController.prototype.testParamError = function (param) {", + " return this.appService.testParamError(param);", + " };" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "AppService.testError", + "lineno": 78, + "colno": 16, + "in_app": true, + "pre_context": [ + "var AppService = /** @class */ (function () {", + " function AppService() {", + " }", + " AppService.prototype.testSuccess = function () {", + " return { version: 'v1' };", + " };", + " AppService.prototype.testError = function () {" + ], + "context_line": " return __awaiter(this, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "__awaiter", + "lineno": 33, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "?", + "lineno": 37, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "Object.next", + "lineno": 43, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "step", + "lineno": 62, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "Object.defineProperty(exports, \"__esModule\", { value: true });", + "exports.AppService = void 0;", + "var common_1 = require(\"@nestjs/common\");" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "AppService.?", + "lineno": 83, + "colno": 63, + "in_app": true, + "pre_context": [ + " };", + " AppService.prototype.testError = function () {", + " return __awaiter(this, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:", + " _a.sent();", + " return [2 /*return*/, { exceptionId: exceptionId }];", + " }", + " });", + " });" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error" + }, + "transaction": "GET /test-error", + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-error--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-error--transaction.json new file mode 100644 index 0000000..cbb4e1a --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-error--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-error", + "express.name": "/test-error", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-error", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-error-manual--event.json b/utils/event-proxy-server/payload-files/nestjs/test-error-manual--event.json new file mode 100644 index 0000000..4b3076c --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-error-manual--event.json @@ -0,0 +1,323 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@sentry.src:trace.ts", + "function": "Object.startSpan", + "lineno": 45, + "colno": 17, + "in_app": false + }, + { + "filename": "[[FILENAME2]]", + "module": "@opentelemetry.sdk-trace-base.src:Tracer.ts", + "function": "Tracer.startActiveSpan", + "lineno": 241, + "colno": 28, + "in_app": false + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.api.src.api:context.ts", + "function": "ContextAPI.with", + "lineno": 77, + "colno": 42, + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "@sentry.src:contextManager.ts", + "function": "SentryContextManager.with", + "lineno": 71, + "colno": 24, + "in_app": false + }, + { + "filename": "[[FILENAME5]]", + "module": "@opentelemetry.context-async-hooks.src:AsyncLocalStorageContextManager.ts", + "function": "SentryContextManager.with", + "lineno": 40, + "colno": 36, + "in_app": false + }, + { + "filename": "[[FILENAME6]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.src:trace.ts", + "function": "?", + "lineno": 48, + "colno": 32, + "in_app": false + }, + { + "filename": "[[FILENAME7]]", + "module": "@sentry.src.utils:handleCallbackErrors.ts", + "function": "Object.handleCallbackErrors", + "lineno": 25, + "colno": 26, + "in_app": false + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.src:trace.ts", + "function": "?", + "lineno": 49, + "colno": 13, + "in_app": false + }, + { + "filename": "[[FILENAME8]]", + "module": "app.service", + "function": "?", + "lineno": 124, + "colno": 57, + "in_app": true, + "pre_context": [ + " AppService.prototype.testErrorManual = function () {", + " return __awaiter(this, void 0, void 0, function () {", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " Sentry.startSpan({ name: 'test-transaction', op: 'e2e-test' }, function () {", + " Sentry.startSpan({ name: 'test-span' }, function () {" + ], + "context_line": " Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " });", + " });", + " return [4 /*yield*/, Sentry.flush()];", + " case 1:", + " _a.sent();", + " return [2 /*return*/, 'test-error-body'];", + " }" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error-manual" + }, + "transaction": "GET /test-error-manual", + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-error-manual--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-error-manual--transaction.json new file mode 100644 index 0000000..dcfd331 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-error-manual--transaction.json @@ -0,0 +1,374 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-error-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error-manual" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-error-manual", + "express.name": "/test-error-manual", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-error-manual", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID9]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "sentry.op": "e2e-test", + "otel.kind": "INTERNAL" + }, + "description": "test-transaction", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "op": "e2e-test", + "origin": "manual" + }, + { + "span_id": "[[ID10]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID9]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-local-variables-caught--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-caught--transaction.json new file mode 100644 index 0000000..1bbe3ba --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-caught--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-caught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-caught", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-local-variables-caught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-caught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-local-variables-caught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-local-variables-caught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-caught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-local-variables-caught" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-local-variables-caught", + "express.name": "/test-local-variables-caught", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-local-variables-caught", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-caught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--event.json b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--event.json new file mode 100644 index 0000000..47f4c56 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--event.json @@ -0,0 +1,474 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-express.src:instrumentation.ts", + "function": "?", + "lineno": 306, + "colno": 27, + "in_app": false + }, + { + "filename": "[[FILENAME2]]", + "module": "express.lib.router:route", + "function": "Route.dispatch", + "lineno": 119, + "colno": 3, + "in_app": false, + "pre_context": [ + "", + " if (method === 'head' && !this.methods['head']) {", + " method = 'get';", + " }", + "", + " req.route = this;", + "" + ], + "context_line": " next();", + "post_context": [ + "", + " function next(err) {", + " // signal to exit route", + " if (err && err === 'route') {", + " return done();", + " }", + "" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "express.lib.router:route", + "function": "next", + "lineno": 149, + "colno": 13, + "in_app": false, + "pre_context": [ + " }", + "", + " if (layer.method && layer.method !== method) {", + " next(err)", + " } else if (err) {", + " layer.handle_error(err, req, res, next);", + " } else {" + ], + "context_line": " layer.handle_request(req, res, next);", + "post_context": [ + " }", + "", + " sync = 0", + " }", + "};", + "", + "/**" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "express.lib.router:layer", + "function": "Layer.handle [as handle_request]", + "lineno": 95, + "colno": 5, + "in_app": false, + "pre_context": [ + "", + " if (fn.length > 3) {", + " // not a standard request handler", + " return next();", + " }", + "", + " try {" + ], + "context_line": " fn(req, res, next);", + "post_context": [ + " } catch (err) {", + " next(err);", + " }", + "};", + "", + "/**", + " * Check if this route matches `path`, if so" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@nestjs.core.router:router-proxy", + "function": "?", + "lineno": 9, + "colno": 23, + "in_app": false, + "pre_context": [ + "Object.defineProperty(exports, \"__esModule\", { value: true });", + "exports.RouterProxy = void 0;", + "const execution_context_host_1 = require(\"../helpers/execution-context-host\");", + "class RouterProxy {", + " createProxy(targetCallback, exceptionsHandler) {", + " return async (req, res, next) => {", + " try {" + ], + "context_line": " await targetCallback(req, res, next);", + "post_context": [ + " }", + " catch (e) {", + " const host = new execution_context_host_1.ExecutionContextHost([req, res, next]);", + " exceptionsHandler.next(e, host);", + " return res;", + " }", + " };" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "@nestjs.core.router:router-execution-context", + "function": "?", + "lineno": 46, + "colno": 60, + "in_app": false, + "pre_context": [ + " };", + " return async (req, res, next) => {", + " const args = this.contextUtils.createNullArray(argsLength);", + " fnCanActivate && (await fnCanActivate([req, res, next]));", + " this.responseController.setStatus(res, httpStatusCode);", + " hasCustomHeaders &&", + " this.responseController.setHeaders(res, responseHeaders);" + ], + "context_line": " const result = await this.interceptorsConsumer.intercept(interceptors, [req, res, next], instance, callback, handler(args, req, {snip}", + "post_context": [ + " await fnHandleResponse(result, res, req);", + " };", + " }", + " getMetadata(instance, callback, methodName, moduleKey, requestMethod, contextType) {", + " const cacheMetadata = this.handlerMetadataStorage.get(instance, methodName);", + " if (cacheMetadata) {", + " return cacheMetadata;" + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "@nestjs.core.interceptors:interceptors-consumer", + "function": "InterceptorsConsumer.intercept", + "lineno": 12, + "colno": 20, + "in_app": false, + "pre_context": [ + "const async_hooks_1 = require(\"async_hooks\");", + "const rxjs_1 = require(\"rxjs\");", + "const operators_1 = require(\"rxjs/operators\");", + "const execution_context_host_1 = require(\"../helpers/execution-context-host\");", + "class InterceptorsConsumer {", + " async intercept(interceptors, args, instance, callback, next, type) {", + " if ((0, shared_utils_1.isEmpty)(interceptors)) {" + ], + "context_line": " return next();", + "post_context": [ + " }", + " const context = this.createContext(args, instance, callback);", + " context.setType(type);", + " const nextFn = async (i = 0) => {", + " if (i >= interceptors.length) {", + " return (0, rxjs_1.defer)(async_hooks_1.AsyncResource.bind(() => this.transformDeferred(next)));", + " }" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "@nestjs.core.router:router-execution-context", + "function": "?", + "lineno": 38, + "colno": 29, + "in_app": false, + "pre_context": [ + " const pipes = this.pipesContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const guards = this.guardsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const interceptors = this.interceptorsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const fnCanActivate = this.createGuardsFn(guards, instance, callback, contextType);", + " const fnApplyPipes = this.createPipesFn(pipes, paramsOptions);", + " const handler = (args, req, res, next) => async () => {", + " fnApplyPipes && (await fnApplyPipes(args, req, res, next));" + ], + "context_line": " return callback.apply(instance, args);", + "post_context": [ + " };", + " return async (req, res, next) => {", + " const args = this.contextUtils.createNullArray(argsLength);", + " fnCanActivate && (await fnCanActivate([req, res, next]));", + " this.responseController.setStatus(res, httpStatusCode);", + " hasCustomHeaders &&", + " this.responseController.setHeaders(res, responseHeaders);" + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "app.controller", + "function": "AppController.testLocalVariablesUncaught", + "lineno": 41, + "colno": 32, + "in_app": true, + "pre_context": [ + " AppController.prototype.testSuccessManual = function () {", + " return this.appService.testSuccessManual();", + " };", + " AppController.prototype.testErrorManual = function () {", + " return this.appService.testErrorManual();", + " };", + " AppController.prototype.testLocalVariablesUncaught = function () {" + ], + "context_line": " return this.appService.testLocalVariablesUncaught();", + "post_context": [ + " };", + " AppController.prototype.testLocalVariablesCaught = function () {", + " return this.appService.testLocalVariablesCaught();", + " };", + " __decorate([", + " (0, common_1.Get)('test-success'),", + " __metadata(\"design:type\", Function)," + ] + }, + { + "filename": "[[FILENAME8]]", + "module": "app.service", + "function": "AppService.testLocalVariablesUncaught", + "lineno": 137, + "colno": 15, + "in_app": true, + "pre_context": [ + " return [2 /*return*/, 'test-error-body'];", + " }", + " });", + " });", + " };", + " AppService.prototype.testLocalVariablesUncaught = function () {", + " var randomVariableToRecord = 'LOCAL_VARIABLE';" + ], + "context_line": " throw new Error(\"Uncaught Local Variable Error - \".concat(JSON.stringify({ randomVariableToRecord: randomVariableToRecord })));", + "post_context": [ + " };", + " AppService.prototype.testLocalVariablesCaught = function () {", + " var randomVariableToRecord = 'LOCAL_VARIABLE';", + " var exceptionId;", + " try {", + " throw new Error('Local Variable Error');", + " }" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-uncaught" + }, + "transaction": "GET /test-local-variables-uncaught", + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--transaction.json new file mode 100644 index 0000000..d77d4e3 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-local-variables-uncaught--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-uncaught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-uncaught", + "otel.kind": "SERVER", + "http.response.status_code": 500, + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 500, + "http.status_text": "INTERNAL SERVER ERROR", + "http.route": "/test-local-variables-uncaught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "unknown_error" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 500, + "http.status_text": "INTERNAL SERVER ERROR", + "http.route": "/test-local-variables-uncaught" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-local-variables-uncaught", + "express.name": "/test-local-variables-uncaught", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-local-variables-uncaught", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-uncaught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--event.json b/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--event.json new file mode 100644 index 0000000..a8e52a3 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--event.json @@ -0,0 +1,453 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "task_queues", + "function": "processTicksAndRejections", + "lineno": 95, + "colno": 5, + "in_app": false + }, + { + "filename": "[[FILENAME2]]", + "module": "@nestjs.core.router:router-execution-context", + "function": "?", + "lineno": 38, + "colno": 29, + "in_app": false, + "pre_context": [ + " const pipes = this.pipesContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const guards = this.guardsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const interceptors = this.interceptorsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId);", + " const fnCanActivate = this.createGuardsFn(guards, instance, callback, contextType);", + " const fnApplyPipes = this.createPipesFn(pipes, paramsOptions);", + " const handler = (args, req, res, next) => async () => {", + " fnApplyPipes && (await fnApplyPipes(args, req, res, next));" + ], + "context_line": " return callback.apply(instance, args);", + "post_context": [ + " };", + " return async (req, res, next) => {", + " const args = this.contextUtils.createNullArray(argsLength);", + " fnCanActivate && (await fnCanActivate([req, res, next]));", + " this.responseController.setStatus(res, httpStatusCode);", + " hasCustomHeaders &&", + " this.responseController.setHeaders(res, responseHeaders);" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "app.controller", + "function": "AppController.testParamError", + "lineno": 32, + "colno": 32, + "in_app": true, + "pre_context": [ + " AppController.prototype.testError = function () {", + " return this.appService.testError();", + " };", + " AppController.prototype.testParamSuccess = function (param) {", + " return this.appService.testParamSuccess(param);", + " };", + " AppController.prototype.testParamError = function (param) {" + ], + "context_line": " return this.appService.testParamError(param);", + "post_context": [ + " };", + " AppController.prototype.testSuccessManual = function () {", + " return this.appService.testSuccessManual();", + " };", + " AppController.prototype.testErrorManual = function () {", + " return this.appService.testErrorManual();", + " };" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "AppService.testParamError", + "lineno": 96, + "colno": 16, + "in_app": true, + "pre_context": [ + " });", + " });", + " };", + " AppService.prototype.testParamSuccess = function (param) {", + " return { paramWas: param };", + " };", + " AppService.prototype.testParamError = function (param) {" + ], + "context_line": " return __awaiter(this, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "__awaiter", + "lineno": 33, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "?", + "lineno": 37, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "Object.next", + "lineno": 43, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "step", + "lineno": 62, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "Object.defineProperty(exports, \"__esModule\", { value: true });", + "exports.AppService = void 0;", + "var common_1 = require(\"@nestjs/common\");" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app.service", + "function": "AppService.?", + "lineno": 101, + "colno": 63, + "in_app": true, + "pre_context": [ + " };", + " AppService.prototype.testParamError = function (param) {", + " return __awaiter(this, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:", + " _a.sent();", + " return [2 /*return*/, { exceptionId: exceptionId, paramWas: param }];", + " }", + " });", + " });" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-param-error/1337" + }, + "transaction": "GET /test-param-error/:param", + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--transaction.json new file mode 100644 index 0000000..742e834 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-param-error_1337--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-error/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-error/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-param-error/:param", + "express.name": "/test-param-error/:param", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-param-error/:param", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-error/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-param-success_1337--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-param-success_1337--transaction.json new file mode 100644 index 0000000..cdec60b --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-param-success_1337--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-success/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-success/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-success/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-success/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-success/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-param-success/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-success/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-success/:param" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-param-success/:param", + "express.name": "/test-param-success/:param", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-param-success/:param", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-success/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-success--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-success--transaction.json new file mode 100644 index 0000000..041174a --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-success--transaction.json @@ -0,0 +1,344 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-success", + "express.name": "/test-success", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-success", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nestjs/test-success-manual--transaction.json b/utils/event-proxy-server/payload-files/nestjs/test-success-manual--transaction.json new file mode 100644 index 0000000..3f79ba4 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nestjs/test-success-manual--transaction.json @@ -0,0 +1,374 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "attributes": { + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "sentry.origin": "auto.http.otel.http", + "net.host.ip": "::ffff:127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "::ffff:127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-alpha.9" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "query", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - query", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "expressInit", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - expressInit", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "jsonParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - jsonParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/", + "express.name": "urlencodedParser", + "express.type": "middleware", + "otel.kind": "INTERNAL" + }, + "description": "middleware - urlencodedParser", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID8]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.express", + "http.route": "/test-success-manual", + "express.name": "/test-success-manual", + "express.type": "request_handler", + "otel.kind": "INTERNAL" + }, + "description": "request handler - /test-success-manual", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.express" + }, + { + "span_id": "[[ID9]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "sentry.op": "e2e-test", + "otel.kind": "INTERNAL" + }, + "description": "test-transaction", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "op": "e2e-test", + "origin": "manual" + }, + { + "span_id": "[[ID10]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID9]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-alpha.9", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-alpha.9" + } + ] + }, + "modules": { + "source-map-support": "0.5.21", + "buffer-from": "1.1.2", + "tslib": "2.6.2", + "reflect-metadata": "0.2.2", + "uid": "2.0.2", + "iterare": "1.2.1", + "rxjs": "7.8.1", + "fast-safe-stringify": "2.1.1", + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "body-parser": "1.20.2", + "depd": "2.0.0", + "cors": "2.8.5", + "object-assign": "4.1.1", + "vary": "1.1.2", + "express": "4.19.2", + "merge-descriptors": "1.0.1", + "finalhandler": "1.2.0", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.4.1", + "ee-first": "1.1.1", + "parseurl": "1.3.3", + "statuses": "2.0.1", + "unpipe": "1.0.0", + "array-flatten": "1.1.1", + "path-to-regexp": "0.1.7", + "methods": "1.1.2", + "utils-merge": "1.0.1", + "setprototypeof": "1.2.0", + "qs": "6.11.0", + "side-channel": "1.0.6", + "get-intrinsic": "1.2.4", + "es-errors": "1.3.0", + "has-symbols": "1.0.3", + "has-proto": "1.0.3", + "call-bind": "1.0.7", + "set-function-length": "1.2.2", + "define-data-property": "1.1.4", + "es-define-property": "1.0.0", + "gopd": "1.0.1", + "has-property-descriptors": "1.0.2", + "object-inspect": "1.13.1", + "safe-buffer": "5.2.1", + "content-disposition": "0.5.4", + "content-type": "1.0.5", + "send": "0.18.0", + "http-errors": "2.0.0", + "inherits": "2.0.4", + "toidentifier": "1.0.1", + "destroy": "1.2.0", + "etag": "1.8.1", + "fresh": "0.5.2", + "mime": "1.6.0", + "ms": "2.1.3", + "range-parser": "1.2.1", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "accepts": "1.3.8", + "negotiator": "0.6.3", + "mime-types": "2.1.35", + "mime-db": "1.52.0", + "type-is": "1.6.18", + "media-typer": "0.3.0", + "cookie-signature": "1.0.6", + "cookie": "0.6.0", + "bytes": "3.1.2", + "raw-body": "2.5.2", + "iconv-lite": "0.4.24", + "safer-buffer": "2.1.2", + "serve-static": "1.15.0", + "multer": "1.4.4-lts.1", + "busboy": "1.6.0", + "streamsearch": "1.1.0", + "xtend": "4.0.2", + "append-field": "1.0.0", + "concat-stream": "1.6.2", + "process-nextick-args": "2.0.1", + "isarray": "1.0.0", + "core-util-is": "1.0.3", + "util-deprecate": "1.0.2", + "opentelemetry-instrumentation-fetch-node": "1.1.2" + } + } +] \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 99f2551..2a9c74b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,6 +12,90 @@ __metadata: languageName: node linkType: hard +"@angular-devkit/core@npm:17.1.2": + version: 17.1.2 + resolution: "@angular-devkit/core@npm:17.1.2" + dependencies: + ajv: "npm:8.12.0" + ajv-formats: "npm:2.1.1" + jsonc-parser: "npm:3.2.0" + picomatch: "npm:3.0.1" + rxjs: "npm:7.8.1" + source-map: "npm:0.7.4" + peerDependencies: + chokidar: ^3.5.2 + peerDependenciesMeta: + chokidar: + optional: true + checksum: 10c0/2e589c681126238a6d1ff2c256d4b18c64da86303ebae1545bc8f9923b9d282752fc03972c5c2cf8b48bdd3452c301124ee7acc7ab98a8f9d703618b1aeb44d2 + languageName: node + linkType: hard + +"@angular-devkit/schematics-cli@npm:17.1.2": + version: 17.1.2 + resolution: "@angular-devkit/schematics-cli@npm:17.1.2" + dependencies: + "@angular-devkit/core": "npm:17.1.2" + "@angular-devkit/schematics": "npm:17.1.2" + ansi-colors: "npm:4.1.3" + inquirer: "npm:9.2.12" + symbol-observable: "npm:4.0.0" + yargs-parser: "npm:21.1.1" + bin: + schematics: bin/schematics.js + checksum: 10c0/cff34b26eeb8be2c14d2c57fd48c0421e2e967db981d4b3d0766b87947e61a79761e99b12b13bdaff899343513572a74fe02fbd78947537a736270fa1c497b8a + languageName: node + linkType: hard + +"@angular-devkit/schematics@npm:17.1.2": + version: 17.1.2 + resolution: "@angular-devkit/schematics@npm:17.1.2" + dependencies: + "@angular-devkit/core": "npm:17.1.2" + jsonc-parser: "npm:3.2.0" + magic-string: "npm:0.30.5" + ora: "npm:5.4.1" + rxjs: "npm:7.8.1" + checksum: 10c0/30db52fe227f84798598e9880ad6a7afaa5763b352168f3801efc87dea1c16d55426ccd6563b305415e5db0006c2fa00041df70986a873a24b0a3172aa1f84e2 + languageName: node + linkType: hard + +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.16.7": + version: 7.24.2 + resolution: "@babel/code-frame@npm:7.24.2" + dependencies: + "@babel/highlight": "npm:^7.24.2" + picocolors: "npm:^1.0.0" + checksum: 10c0/d1d4cba89475ab6aab7a88242e1fd73b15ecb9f30c109b69752956434d10a26a52cbd37727c4eca104b6d45227bd1dfce39a6a6f4a14c9b2f07f871e968cf406 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.22.20": + version: 7.22.20 + resolution: "@babel/helper-validator-identifier@npm:7.22.20" + checksum: 10c0/dcad63db345fb110e032de46c3688384b0008a42a4845180ce7cd62b1a9c0507a1bed727c4d1060ed1a03ae57b4d918570259f81724aaac1a5b776056f37504e + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.24.2": + version: 7.24.2 + resolution: "@babel/highlight@npm:7.24.2" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.22.20" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 10c0/98ce00321daedeed33a4ed9362dc089a70375ff1b3b91228b9f05e6591d387a81a8cba68886e207861b8871efa0bc997ceabdd9c90f6cce3ee1b2f7f941b42db + languageName: node + linkType: hard + +"@colors/colors@npm:1.5.0": + version: 1.5.0 + resolution: "@colors/colors@npm:1.5.0" + checksum: 10c0/eb42729851adca56d19a08e48d5a1e95efd2a32c55ae0323de8119052be0510d4b7a1611f2abcbf28c044a6c11e6b7d38f99fccdad7429300c37a8ea5fb95b44 + languageName: node + linkType: hard + "@colors/colors@npm:1.6.0, @colors/colors@npm:^1.6.0": version: 1.6.0 resolution: "@colors/colors@npm:1.6.0" @@ -211,14 +295,42 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.0.3": +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.5 + resolution: "@jridgewell/gen-mapping@npm:0.3.5" + dependencies: + "@jridgewell/set-array": "npm:^1.2.1" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 10c0/1be4fd4a6b0f41337c4f5fdf4afc3bd19e39c3691924817108b82ffcb9c9e609c273f936932b9fba4b3a298ce2eb06d9bff4eb1cc3bd81c4f4ee1b4917e25feb + languageName: node + linkType: hard + +"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": version: 3.1.2 resolution: "@jridgewell/resolve-uri@npm:3.1.2" checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10": +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 10c0/2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4 + languageName: node + linkType: hard + +"@jridgewell/source-map@npm:^0.3.3": + version: 0.3.6 + resolution: "@jridgewell/source-map@npm:0.3.6" + dependencies: + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + checksum: 10c0/6a4ecc713ed246ff8e5bdcc1ef7c49aaa93f7463d948ba5054dda18b02dcc6a055e2828c577bcceee058f302ce1fc95595713d44f5c45e43d459f88d267f2f04 + languageName: node + linkType: hard + +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: 10c0/0c6b5ae663087558039052a626d2d7ed5208da36cfd707dcc5cea4a07cfc918248403dcb5989a8f7afaf245ce0573b7cc6fd94c4a30453bd10e44d9363940ba5 @@ -235,6 +347,16 @@ __metadata: languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 10c0/3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4 + languageName: node + linkType: hard + "@koa/router@npm:12.0.1": version: 12.0.1 resolution: "@koa/router@npm:12.0.1" @@ -248,6 +370,142 @@ __metadata: languageName: node linkType: hard +"@ljharb/through@npm:^2.3.11": + version: 2.3.13 + resolution: "@ljharb/through@npm:2.3.13" + dependencies: + call-bind: "npm:^1.0.7" + checksum: 10c0/fb60b2fb2c674a674d8ebdb8972ccf52f8a62a9c1f5a2ac42557bc0273231c65d642aa2d7627cbb300766a25ae4642acd0f95fba2f8a1ff891086f0cb15807c3 + languageName: node + linkType: hard + +"@lukeed/csprng@npm:^1.0.0": + version: 1.1.0 + resolution: "@lukeed/csprng@npm:1.1.0" + checksum: 10c0/5d6dcf478af732972083ab2889c294b57f1028fa13c2c240d7a4aaa079c2c75df7ef0dcbdda5419147fc6704b4adf96b2de92f1a9a72ac21c6350c4014fffe6c + languageName: node + linkType: hard + +"@nestjs/cli@npm:10.3.2": + version: 10.3.2 + resolution: "@nestjs/cli@npm:10.3.2" + dependencies: + "@angular-devkit/core": "npm:17.1.2" + "@angular-devkit/schematics": "npm:17.1.2" + "@angular-devkit/schematics-cli": "npm:17.1.2" + "@nestjs/schematics": "npm:^10.0.1" + chalk: "npm:4.1.2" + chokidar: "npm:3.6.0" + cli-table3: "npm:0.6.3" + commander: "npm:4.1.1" + fork-ts-checker-webpack-plugin: "npm:9.0.2" + glob: "npm:10.3.10" + inquirer: "npm:8.2.6" + node-emoji: "npm:1.11.0" + ora: "npm:5.4.1" + rimraf: "npm:4.4.1" + shelljs: "npm:0.8.5" + source-map-support: "npm:0.5.21" + tree-kill: "npm:1.2.2" + tsconfig-paths: "npm:4.2.0" + tsconfig-paths-webpack-plugin: "npm:4.1.0" + typescript: "npm:5.3.3" + webpack: "npm:5.90.1" + webpack-node-externals: "npm:3.0.0" + peerDependencies: + "@swc/cli": ^0.1.62 || ^0.3.0 + "@swc/core": ^1.3.62 + peerDependenciesMeta: + "@swc/cli": + optional: true + "@swc/core": + optional: true + bin: + nest: bin/nest.js + checksum: 10c0/45d0ebf5024b9a2e68fdd700c766b36681d359f7b14ad7b2d98a49f7c97d6724b0f5fceb75378eb45d0accbe4605ead89247ce1b9e97467300a3b1d7b0fe008a + languageName: node + linkType: hard + +"@nestjs/common@npm:10.3.7": + version: 10.3.7 + resolution: "@nestjs/common@npm:10.3.7" + dependencies: + iterare: "npm:1.2.1" + tslib: "npm:2.6.2" + uid: "npm:2.0.2" + peerDependencies: + class-transformer: "*" + class-validator: "*" + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + class-transformer: + optional: true + class-validator: + optional: true + checksum: 10c0/d25fba11d553f32a1c80e16da85ff05739eba5678d752feac159ba4ff6c4129d254bd289c95d64106e5c13d78e716a1f3673e6db7897bbcd569fbef49d4f9ec0 + languageName: node + linkType: hard + +"@nestjs/core@npm:10.3.7": + version: 10.3.7 + resolution: "@nestjs/core@npm:10.3.7" + dependencies: + "@nuxtjs/opencollective": "npm:0.3.2" + fast-safe-stringify: "npm:2.1.1" + iterare: "npm:1.2.1" + path-to-regexp: "npm:3.2.0" + tslib: "npm:2.6.2" + uid: "npm:2.0.2" + peerDependencies: + "@nestjs/common": ^10.0.0 + "@nestjs/microservices": ^10.0.0 + "@nestjs/platform-express": ^10.0.0 + "@nestjs/websockets": ^10.0.0 + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + "@nestjs/microservices": + optional: true + "@nestjs/platform-express": + optional: true + "@nestjs/websockets": + optional: true + checksum: 10c0/961cf1b0f157cd8f9aaab3bfe4d2247f41e104a5b1c669764146061915d8206a261cf1833deb5bf37d35d97c74a5288f0de092a5ce247dab34b7ad39e7910d03 + languageName: node + linkType: hard + +"@nestjs/platform-express@npm:10.3.7": + version: 10.3.7 + resolution: "@nestjs/platform-express@npm:10.3.7" + dependencies: + body-parser: "npm:1.20.2" + cors: "npm:2.8.5" + express: "npm:4.19.2" + multer: "npm:1.4.4-lts.1" + tslib: "npm:2.6.2" + peerDependencies: + "@nestjs/common": ^10.0.0 + "@nestjs/core": ^10.0.0 + checksum: 10c0/281ce6149bb9c7288dda3eabe6d3732d6874c9c47ad923a74022659ec765c1c76d1c05323d6f570faf6f976014b7bc8dabd328e4e86e0db9e4f0f1752c6df7d1 + languageName: node + linkType: hard + +"@nestjs/schematics@npm:10.1.1, @nestjs/schematics@npm:^10.0.1": + version: 10.1.1 + resolution: "@nestjs/schematics@npm:10.1.1" + dependencies: + "@angular-devkit/core": "npm:17.1.2" + "@angular-devkit/schematics": "npm:17.1.2" + comment-json: "npm:4.2.3" + jsonc-parser: "npm:3.2.1" + pluralize: "npm:8.0.0" + peerDependencies: + typescript: ">=4.8.2" + checksum: 10c0/fa264dc1a4366876b47badbc895ee234ccc6de112484aa5ba45a0a03e67f429f73036d4e9108bb21ad1c30fe30652cbe9cc773c00b3a092c5f2a1499895241ca + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -297,6 +555,19 @@ __metadata: languageName: node linkType: hard +"@nuxtjs/opencollective@npm:0.3.2": + version: 0.3.2 + resolution: "@nuxtjs/opencollective@npm:0.3.2" + dependencies: + chalk: "npm:^4.1.0" + consola: "npm:^2.15.0" + node-fetch: "npm:^2.6.1" + bin: + opencollective: bin/opencollective.js + checksum: 10c0/540268687af3289ff107585484d42201b404cdbb98b3a512487c12a6b180a8f0e1df0d701df47d3d9e0d5c0f6eb3252d80535562aedca9edf52cf7fd17ae4601 + languageName: node + linkType: hard + "@opentelemetry/api@npm:1.7.0": version: 1.7.0 resolution: "@opentelemetry/api@npm:1.7.0" @@ -858,6 +1129,33 @@ __metadata: languageName: node linkType: hard +"@types/eslint-scope@npm:^3.7.3": + version: 3.7.7 + resolution: "@types/eslint-scope@npm:3.7.7" + dependencies: + "@types/eslint": "npm:*" + "@types/estree": "npm:*" + checksum: 10c0/a0ecbdf2f03912679440550817ff77ef39a30fa8bfdacaf6372b88b1f931828aec392f52283240f0d648cf3055c5ddc564544a626bcf245f3d09fcb099ebe3cc + languageName: node + linkType: hard + +"@types/eslint@npm:*": + version: 8.56.9 + resolution: "@types/eslint@npm:8.56.9" + dependencies: + "@types/estree": "npm:*" + "@types/json-schema": "npm:*" + checksum: 10c0/a800e3d10bd12fc837773101c35a65c189528e306bc41eca9f30176f5ede4d35944a0c0e16b668971db3521df2f2bef62ab2471740eadc72aeb39dbaba6c9101 + languageName: node + linkType: hard + +"@types/estree@npm:*, @types/estree@npm:^1.0.5": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: 10c0/b3b0e334288ddb407c7b3357ca67dbee75ee22db242ca7c56fe27db4e1a31989cb8af48a84dd401deb787fe10cc6b2ab1ee82dc4783be87ededbe3d53c79c70d + languageName: node + linkType: hard + "@types/express-serve-static-core@npm:^4.17.33": version: 4.19.0 resolution: "@types/express-serve-static-core@npm:4.19.0" @@ -870,7 +1168,7 @@ __metadata: languageName: node linkType: hard -"@types/express@npm:*, @types/express@npm:^4": +"@types/express@npm:*, @types/express@npm:^4, @types/express@npm:^4.17.17": version: 4.17.21 resolution: "@types/express@npm:4.17.21" dependencies: @@ -937,7 +1235,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.15": +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.8": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db @@ -1252,6 +1550,171 @@ __metadata: languageName: node linkType: hard +"@webassemblyjs/ast@npm:1.12.1, @webassemblyjs/ast@npm:^1.11.5": + version: 1.12.1 + resolution: "@webassemblyjs/ast@npm:1.12.1" + dependencies: + "@webassemblyjs/helper-numbers": "npm:1.11.6" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" + checksum: 10c0/ba7f2b96c6e67e249df6156d02c69eb5f1bd18d5005303cdc42accb053bebbbde673826e54db0437c9748e97abd218366a1d13fa46859b23cde611b6b409998c + languageName: node + linkType: hard + +"@webassemblyjs/floating-point-hex-parser@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.6" + checksum: 10c0/37fe26f89e18e4ca0e7d89cfe3b9f17cfa327d7daf906ae01400416dbb2e33c8a125b4dc55ad7ff405e5fcfb6cf0d764074c9bc532b9a31a71e762be57d2ea0a + languageName: node + linkType: hard + +"@webassemblyjs/helper-api-error@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-api-error@npm:1.11.6" + checksum: 10c0/a681ed51863e4ff18cf38d223429f414894e5f7496856854d9a886eeddcee32d7c9f66290f2919c9bb6d2fc2b2fae3f989b6a1e02a81e829359738ea0c4d371a + languageName: node + linkType: hard + +"@webassemblyjs/helper-buffer@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/helper-buffer@npm:1.12.1" + checksum: 10c0/0270724afb4601237410f7fd845ab58ccda1d5456a8783aadfb16eaaf3f2c9610c28e4a5bcb6ad880cde5183c82f7f116d5ccfc2310502439d33f14b6888b48a + languageName: node + linkType: hard + +"@webassemblyjs/helper-numbers@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-numbers@npm:1.11.6" + dependencies: + "@webassemblyjs/floating-point-hex-parser": "npm:1.11.6" + "@webassemblyjs/helper-api-error": "npm:1.11.6" + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/c7d5afc0ff3bd748339b466d8d2f27b908208bf3ff26b2e8e72c39814479d486e0dca6f3d4d776fd9027c1efe05b5c0716c57a23041eb34473892b2731c33af3 + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-bytecode@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.6" + checksum: 10c0/79d2bebdd11383d142745efa32781249745213af8e022651847382685ca76709f83e1d97adc5f0d3c2b8546bf02864f8b43a531fdf5ca0748cb9e4e0ef2acaa5 + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-section@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" + "@webassemblyjs/wasm-gen": "npm:1.12.1" + checksum: 10c0/0546350724d285ae3c26e6fc444be4c3b5fb824f3be0ec8ceb474179dc3f4430336dd2e36a44b3e3a1a6815960e5eec98cd9b3a8ec66dc53d86daedd3296a6a2 + languageName: node + linkType: hard + +"@webassemblyjs/ieee754@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/ieee754@npm:1.11.6" + dependencies: + "@xtuc/ieee754": "npm:^1.2.0" + checksum: 10c0/59de0365da450322c958deadade5ec2d300c70f75e17ae55de3c9ce564deff5b429e757d107c7ec69bd0ba169c6b6cc2ff66293ab7264a7053c829b50ffa732f + languageName: node + linkType: hard + +"@webassemblyjs/leb128@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/leb128@npm:1.11.6" + dependencies: + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/cb344fc04f1968209804de4da018679c5d4708a03b472a33e0fa75657bb024978f570d3ccf9263b7f341f77ecaa75d0e051b9cd4b7bb17a339032cfd1c37f96e + languageName: node + linkType: hard + +"@webassemblyjs/utf8@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/utf8@npm:1.11.6" + checksum: 10c0/14d6c24751a89ad9d801180b0d770f30a853c39f035a15fbc96266d6ac46355227abd27a3fd2eeaa97b4294ced2440a6b012750ae17bafe1a7633029a87b6bee + languageName: node + linkType: hard + +"@webassemblyjs/wasm-edit@npm:^1.11.5": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-edit@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" + "@webassemblyjs/helper-wasm-section": "npm:1.12.1" + "@webassemblyjs/wasm-gen": "npm:1.12.1" + "@webassemblyjs/wasm-opt": "npm:1.12.1" + "@webassemblyjs/wasm-parser": "npm:1.12.1" + "@webassemblyjs/wast-printer": "npm:1.12.1" + checksum: 10c0/972f5e6c522890743999e0ed45260aae728098801c6128856b310dd21f1ee63435fc7b518e30e0ba1cdafd0d1e38275829c1e4451c3536a1d9e726e07a5bba0b + languageName: node + linkType: hard + +"@webassemblyjs/wasm-gen@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-gen@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" + "@webassemblyjs/ieee754": "npm:1.11.6" + "@webassemblyjs/leb128": "npm:1.11.6" + "@webassemblyjs/utf8": "npm:1.11.6" + checksum: 10c0/1e257288177af9fa34c69cab94f4d9036ebed611f77f3897c988874e75182eeeec759c79b89a7a49dd24624fc2d3d48d5580b62b67c4a1c9bfbdcd266b281c16 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-opt@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-opt@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-buffer": "npm:1.12.1" + "@webassemblyjs/wasm-gen": "npm:1.12.1" + "@webassemblyjs/wasm-parser": "npm:1.12.1" + checksum: 10c0/992a45e1f1871033c36987459436ab4e6430642ca49328e6e32a13de9106fe69ae6c0ac27d7050efd76851e502d11cd1ac0e06b55655dfa889ad82f11a2712fb + languageName: node + linkType: hard + +"@webassemblyjs/wasm-parser@npm:1.12.1, @webassemblyjs/wasm-parser@npm:^1.11.5": + version: 1.12.1 + resolution: "@webassemblyjs/wasm-parser@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@webassemblyjs/helper-api-error": "npm:1.11.6" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" + "@webassemblyjs/ieee754": "npm:1.11.6" + "@webassemblyjs/leb128": "npm:1.11.6" + "@webassemblyjs/utf8": "npm:1.11.6" + checksum: 10c0/e85cec1acad07e5eb65b92d37c8e6ca09c6ca50d7ca58803a1532b452c7321050a0328c49810c337cc2dfd100c5326a54d5ebd1aa5c339ebe6ef10c250323a0e + languageName: node + linkType: hard + +"@webassemblyjs/wast-printer@npm:1.12.1": + version: 1.12.1 + resolution: "@webassemblyjs/wast-printer@npm:1.12.1" + dependencies: + "@webassemblyjs/ast": "npm:1.12.1" + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/39bf746eb7a79aa69953f194943bbc43bebae98bd7cadd4d8bc8c0df470ca6bf9d2b789effaa180e900fab4e2691983c1f7d41571458bd2a26267f2f0c73705a + languageName: node + linkType: hard + +"@xtuc/ieee754@npm:^1.2.0": + version: 1.2.0 + resolution: "@xtuc/ieee754@npm:1.2.0" + checksum: 10c0/a8565d29d135039bd99ae4b2220d3e167d22cf53f867e491ed479b3f84f895742d0097f935b19aab90265a23d5d46711e4204f14c479ae3637fbf06c4666882f + languageName: node + linkType: hard + +"@xtuc/long@npm:4.2.2": + version: 4.2.2 + resolution: "@xtuc/long@npm:4.2.2" + checksum: 10c0/8582cbc69c79ad2d31568c412129bf23d2b1210a1dfb60c82d5a1df93334da4ee51f3057051658569e2c196d8dc33bc05ae6b974a711d0d16e801e1d0647ccd1 + languageName: node + linkType: hard + "abbrev@npm:1": version: 1.1.1 resolution: "abbrev@npm:1.1.1" @@ -1310,7 +1773,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.8.2": +"acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.2": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -1338,7 +1801,42 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.12.4": +"ajv-formats@npm:2.1.1": + version: 2.1.1 + resolution: "ajv-formats@npm:2.1.1" + dependencies: + ajv: "npm:^8.0.0" + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 10c0/e43ba22e91b6a48d96224b83d260d3a3a561b42d391f8d3c6d2c1559f9aa5b253bfb306bc94bbeca1d967c014e15a6efe9a207309e95b3eaae07fcbcdc2af662 + languageName: node + linkType: hard + +"ajv-keywords@npm:^3.5.2": + version: 3.5.2 + resolution: "ajv-keywords@npm:3.5.2" + peerDependencies: + ajv: ^6.9.1 + checksum: 10c0/0c57a47cbd656e8cdfd99d7c2264de5868918ffa207c8d7a72a7f63379d4333254b2ba03d69e3c035e996a3fd3eb6d5725d7a1597cca10694296e32510546360 + languageName: node + linkType: hard + +"ajv@npm:8.12.0, ajv@npm:^8.0.0": + version: 8.12.0 + resolution: "ajv@npm:8.12.0" + dependencies: + fast-deep-equal: "npm:^3.1.1" + json-schema-traverse: "npm:^1.0.0" + require-from-string: "npm:^2.0.2" + uri-js: "npm:^4.2.2" + checksum: 10c0/ac4f72adf727ee425e049bc9d8b31d4a57e1c90da8d28bcd23d60781b12fcd6fc3d68db5df16994c57b78b94eed7988f5a6b482fd376dc5b084125e20a0a622e + languageName: node + linkType: hard + +"ajv@npm:^6.12.4, ajv@npm:^6.12.5": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -1350,6 +1848,22 @@ __metadata: languageName: node linkType: hard +"ansi-colors@npm:4.1.3": + version: 4.1.3 + resolution: "ansi-colors@npm:4.1.3" + checksum: 10c0/ec87a2f59902f74e61eada7f6e6fe20094a628dab765cfdbd03c3477599368768cffccdb5d3bb19a1b6c99126783a143b1fee31aab729b31ffe5836c7e5e28b9 + languageName: node + linkType: hard + +"ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.2": + version: 4.3.2 + resolution: "ansi-escapes@npm:4.3.2" + dependencies: + type-fest: "npm:^0.21.3" + checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 + languageName: node + linkType: hard + "ansi-regex@npm:^5.0.1": version: 5.0.1 resolution: "ansi-regex@npm:5.0.1" @@ -1364,6 +1878,15 @@ __metadata: languageName: node linkType: hard +"ansi-styles@npm:^3.2.1": + version: 3.2.1 + resolution: "ansi-styles@npm:3.2.1" + dependencies: + color-convert: "npm:^1.9.0" + checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b + languageName: node + linkType: hard + "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": version: 4.3.0 resolution: "ansi-styles@npm:4.3.0" @@ -1390,6 +1913,13 @@ __metadata: languageName: node linkType: hard +"append-field@npm:^1.0.0": + version: 1.0.0 + resolution: "append-field@npm:1.0.0" + checksum: 10c0/1b5abcc227e5179936a9e4f7e2af4769fa1f00eda85bbaed907f7964b0fd1f7d61f0f332b35337f391389ff13dd5310c2546ba670f8e5a743b23ec85185c73ef + languageName: node + linkType: hard + "arg@npm:^4.1.0": version: 4.1.3 resolution: "arg@npm:4.1.3" @@ -1411,6 +1941,13 @@ __metadata: languageName: node linkType: hard +"array-timsort@npm:^1.0.3": + version: 1.0.3 + resolution: "array-timsort@npm:1.0.3" + checksum: 10c0/bd3a1707b621947265c89867e67c9102b9b9f4c50f5b3974220112290d8b60d26ce60595edec5deed3325207b759d70b758bed3cd310b5ddadb835657ffb6d12 + languageName: node + linkType: hard + "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" @@ -1432,6 +1969,13 @@ __metadata: languageName: node linkType: hard +"base64-js@npm:^1.3.1": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf + languageName: node + linkType: hard + "binary-extensions@npm:^2.0.0": version: 2.3.0 resolution: "binary-extensions@npm:2.3.0" @@ -1439,6 +1983,17 @@ __metadata: languageName: node linkType: hard +"bl@npm:^4.1.0": + version: 4.1.0 + resolution: "bl@npm:4.1.0" + dependencies: + buffer: "npm:^5.5.0" + inherits: "npm:^2.0.4" + readable-stream: "npm:^3.4.0" + checksum: 10c0/02847e1d2cb089c9dc6958add42e3cdeaf07d13f575973963335ac0fdece563a50ac770ac4c8fa06492d2dd276f6cc3b7f08c7cd9c7a7ad0f8d388b2a28def5f + languageName: node + linkType: hard + "body-parser@npm:1.20.2": version: 1.20.2 resolution: "body-parser@npm:1.20.2" @@ -1487,6 +2042,46 @@ __metadata: languageName: node linkType: hard +"browserslist@npm:^4.21.10": + version: 4.23.0 + resolution: "browserslist@npm:4.23.0" + dependencies: + caniuse-lite: "npm:^1.0.30001587" + electron-to-chromium: "npm:^1.4.668" + node-releases: "npm:^2.0.14" + update-browserslist-db: "npm:^1.0.13" + bin: + browserslist: cli.js + checksum: 10c0/8e9cc154529062128d02a7af4d8adeead83ca1df8cd9ee65a88e2161039f3d68a4d40fea7353cab6bae4c16182dec2fdd9a1cf7dc2a2935498cee1af0e998943 + languageName: node + linkType: hard + +"buffer-from@npm:^1.0.0": + version: 1.1.2 + resolution: "buffer-from@npm:1.1.2" + checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 + languageName: node + linkType: hard + +"buffer@npm:^5.5.0": + version: 5.7.1 + resolution: "buffer@npm:5.7.1" + dependencies: + base64-js: "npm:^1.3.1" + ieee754: "npm:^1.1.13" + checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e + languageName: node + linkType: hard + +"busboy@npm:^1.0.0": + version: 1.6.0 + resolution: "busboy@npm:1.6.0" + dependencies: + streamsearch: "npm:^1.1.0" + checksum: 10c0/fa7e836a2b82699b6e074393428b91ae579d4f9e21f5ac468e1b459a244341d722d2d22d10920cdd849743dbece6dca11d72de939fb75a7448825cf2babfba1f + languageName: node + linkType: hard + "bytes@npm:3.1.2": version: 3.1.2 resolution: "bytes@npm:3.1.2" @@ -1544,7 +2139,14 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^4.0.0": +"caniuse-lite@npm:^1.0.30001587": + version: 1.0.30001610 + resolution: "caniuse-lite@npm:1.0.30001610" + checksum: 10c0/015956a0bf2e3e233da3dc00c5632bbb4d416bcd6ced2f839e33e45b197a856234f97cb046e7427b83d7e3a3d6df314dfab1c86eb9d970970e00ad85a50b4933 + languageName: node + linkType: hard + +"chalk@npm:4.1.2, chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": version: 4.1.2 resolution: "chalk@npm:4.1.2" dependencies: @@ -1554,7 +2156,32 @@ __metadata: languageName: node linkType: hard -"chokidar@npm:^3.5.2": +"chalk@npm:^2.4.2": + version: 2.4.2 + resolution: "chalk@npm:2.4.2" + dependencies: + ansi-styles: "npm:^3.2.1" + escape-string-regexp: "npm:^1.0.5" + supports-color: "npm:^5.3.0" + checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 + languageName: node + linkType: hard + +"chalk@npm:^5.3.0": + version: 5.3.0 + resolution: "chalk@npm:5.3.0" + checksum: 10c0/8297d436b2c0f95801103ff2ef67268d362021b8210daf8ddbe349695333eb3610a71122172ff3b0272f1ef2cf7cc2c41fdaa4715f52e49ffe04c56340feed09 + languageName: node + linkType: hard + +"chardet@npm:^0.7.0": + version: 0.7.0 + resolution: "chardet@npm:0.7.0" + checksum: 10c0/96e4731b9ec8050cbb56ab684e8c48d6c33f7826b755802d14e3ebfdc51c57afeece3ea39bc6b09acc359e4363525388b915e16640c1378053820f5e70d0f27d + languageName: node + linkType: hard + +"chokidar@npm:3.6.0, chokidar@npm:^3.5.2, chokidar@npm:^3.5.3": version: 3.6.0 resolution: "chokidar@npm:3.6.0" dependencies: @@ -1580,6 +2207,13 @@ __metadata: languageName: node linkType: hard +"chrome-trace-event@npm:^1.0.2": + version: 1.0.3 + resolution: "chrome-trace-event@npm:1.0.3" + checksum: 10c0/080ce2d20c2b9e0f8461a380e9585686caa768b1c834a464470c9dc74cda07f27611c7b727a2cd768a9cecd033297fdec4ce01f1e58b62227882c1059dec321c + languageName: node + linkType: hard + "cjs-module-lexer@npm:^1.2.2": version: 1.2.3 resolution: "cjs-module-lexer@npm:1.2.3" @@ -1594,14 +2228,64 @@ __metadata: languageName: node linkType: hard -"co@npm:^4.6.0": - version: 4.6.0 +"cli-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "cli-cursor@npm:3.1.0" + dependencies: + restore-cursor: "npm:^3.1.0" + checksum: 10c0/92a2f98ff9037d09be3dfe1f0d749664797fb674bf388375a2207a1203b69d41847abf16434203e0089212479e47a358b13a0222ab9fccfe8e2644a7ccebd111 + languageName: node + linkType: hard + +"cli-spinners@npm:^2.5.0": + version: 2.9.2 + resolution: "cli-spinners@npm:2.9.2" + checksum: 10c0/907a1c227ddf0d7a101e7ab8b300affc742ead4b4ebe920a5bf1bc6d45dce2958fcd195eb28fa25275062fe6fa9b109b93b63bc8033396ed3bcb50297008b3a3 + languageName: node + linkType: hard + +"cli-table3@npm:0.6.3": + version: 0.6.3 + resolution: "cli-table3@npm:0.6.3" + dependencies: + "@colors/colors": "npm:1.5.0" + string-width: "npm:^4.2.0" + dependenciesMeta: + "@colors/colors": + optional: true + checksum: 10c0/39e580cb346c2eaf1bd8f4ff055ae644e902b8303c164a1b8894c0dc95941f92e001db51f49649011be987e708d9fa3183ccc2289a4d376a057769664048cc0c + languageName: node + linkType: hard + +"cli-width@npm:^3.0.0": + version: 3.0.0 + resolution: "cli-width@npm:3.0.0" + checksum: 10c0/125a62810e59a2564268c80fdff56c23159a7690c003e34aeb2e68497dccff26911998ff49c33916fcfdf71e824322cc3953e3f7b48b27267c7a062c81348a9a + languageName: node + linkType: hard + +"cli-width@npm:^4.1.0": + version: 4.1.0 + resolution: "cli-width@npm:4.1.0" + checksum: 10c0/1fbd56413578f6117abcaf858903ba1f4ad78370a4032f916745fa2c7e390183a9d9029cf837df320b0fdce8137668e522f60a30a5f3d6529ff3872d265a955f + languageName: node + linkType: hard + +"clone@npm:^1.0.2": + version: 1.0.4 + resolution: "clone@npm:1.0.4" + checksum: 10c0/2176952b3649293473999a95d7bebfc9dc96410f6cbd3d2595cf12fd401f63a4bf41a7adbfd3ab2ff09ed60cb9870c58c6acdd18b87767366fabfc163700f13b + languageName: node + linkType: hard + +"co@npm:^4.6.0": + version: 4.6.0 resolution: "co@npm:4.6.0" checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 languageName: node linkType: hard -"color-convert@npm:^1.9.3": +"color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" dependencies: @@ -1670,6 +2354,33 @@ __metadata: languageName: node linkType: hard +"commander@npm:4.1.1": + version: 4.1.1 + resolution: "commander@npm:4.1.1" + checksum: 10c0/84a76c08fe6cc08c9c93f62ac573d2907d8e79138999312c92d4155bc2325d487d64d13f669b2000c9f8caf70493c1be2dac74fec3c51d5a04f8bc3ae1830bab + languageName: node + linkType: hard + +"commander@npm:^2.20.0": + version: 2.20.3 + resolution: "commander@npm:2.20.3" + checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288 + languageName: node + linkType: hard + +"comment-json@npm:4.2.3": + version: 4.2.3 + resolution: "comment-json@npm:4.2.3" + dependencies: + array-timsort: "npm:^1.0.3" + core-util-is: "npm:^1.0.3" + esprima: "npm:^4.0.1" + has-own-prop: "npm:^2.0.0" + repeat-string: "npm:^1.6.1" + checksum: 10c0/e8a0d3a6d75d92551f9a7e6fefa31f3d831dc33117b0b9432f061f45a571c85c16143e4110693d450f6eca20841db43f5429ac0d801673bcf03e9973ab1c31af + languageName: node + linkType: hard + "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" @@ -1677,6 +2388,25 @@ __metadata: languageName: node linkType: hard +"concat-stream@npm:^1.5.2": + version: 1.6.2 + resolution: "concat-stream@npm:1.6.2" + dependencies: + buffer-from: "npm:^1.0.0" + inherits: "npm:^2.0.3" + readable-stream: "npm:^2.2.2" + typedarray: "npm:^0.0.6" + checksum: 10c0/2e9864e18282946dabbccb212c5c7cec0702745e3671679eb8291812ca7fd12023f7d8cb36493942a62f770ac96a7f90009dc5c82ad69893438371720fa92617 + languageName: node + linkType: hard + +"consola@npm:^2.15.0": + version: 2.15.3 + resolution: "consola@npm:2.15.3" + checksum: 10c0/34a337e6b4a1349ee4d7b4c568484344418da8fdb829d7d71bfefcd724f608f273987633b6eef465e8de510929907a092e13cb7a28a5d3acb3be446fcc79fd5e + languageName: node + linkType: hard + "content-disposition@npm:0.5.4, content-disposition@npm:~0.5.2": version: 0.5.4 resolution: "content-disposition@npm:0.5.4" @@ -1717,6 +2447,40 @@ __metadata: languageName: node linkType: hard +"core-util-is@npm:^1.0.3, core-util-is@npm:~1.0.0": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 + languageName: node + linkType: hard + +"cors@npm:2.8.5": + version: 2.8.5 + resolution: "cors@npm:2.8.5" + dependencies: + object-assign: "npm:^4" + vary: "npm:^1" + checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 + languageName: node + linkType: hard + +"cosmiconfig@npm:^8.2.0": + version: 8.3.6 + resolution: "cosmiconfig@npm:8.3.6" + dependencies: + import-fresh: "npm:^3.3.0" + js-yaml: "npm:^4.1.0" + parse-json: "npm:^5.2.0" + path-type: "npm:^4.0.0" + peerDependencies: + typescript: ">=4.9.5" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/0382a9ed13208f8bfc22ca2f62b364855207dffdb73dc26e150ade78c3093f1cf56172df2dd460c8caf2afa91c0ed4ec8a88c62f8f9cd1cf423d26506aa8797a + languageName: node + linkType: hard + "create-require@npm:^1.1.0": version: 1.1.1 resolution: "create-require@npm:1.1.1" @@ -1770,6 +2534,22 @@ __metadata: languageName: node linkType: hard +"deepmerge@npm:^4.2.2": + version: 4.3.1 + resolution: "deepmerge@npm:4.3.1" + checksum: 10c0/e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044 + languageName: node + linkType: hard + +"defaults@npm:^1.0.3": + version: 1.0.4 + resolution: "defaults@npm:1.0.4" + dependencies: + clone: "npm:^1.0.2" + checksum: 10c0/9cfbe498f5c8ed733775db62dfd585780387d93c17477949e1670bfcfb9346e0281ce8c4bf9f4ac1fc0f9b851113bd6dc9e41182ea1644ccd97de639fa13c35a + languageName: node + linkType: hard + "define-data-property@npm:^1.1.4": version: 1.1.4 resolution: "define-data-property@npm:1.1.4" @@ -1839,6 +2619,13 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.4.668": + version: 1.4.736 + resolution: "electron-to-chromium@npm:1.4.736" + checksum: 10c0/f3acb515dcb9333b318f9a8ee80a0c3975162da6cc45d9c00152e0de7004b2bfe1246fe6cdf0c41a1b7016780bd4324aff848830aba4227cb55480c1aa32d248 + languageName: node + linkType: hard + "emoji-regex@npm:^8.0.0": version: 8.0.0 resolution: "emoji-regex@npm:8.0.0" @@ -1876,6 +2663,16 @@ __metadata: languageName: node linkType: hard +"enhanced-resolve@npm:^5.15.0, enhanced-resolve@npm:^5.7.0": + version: 5.16.0 + resolution: "enhanced-resolve@npm:5.16.0" + dependencies: + graceful-fs: "npm:^4.2.4" + tapable: "npm:^2.2.0" + checksum: 10c0/dd69669cbb638ccacefd03e04d5e195ee6a99b7f5f8012f86d2df7781834de357923e06064ea621137c4ce0b37cc12b872b4e6d1ac6ab15fe98e7f1dfbbb08c4 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -1890,6 +2687,15 @@ __metadata: languageName: node linkType: hard +"error-ex@npm:^1.3.1": + version: 1.3.2 + resolution: "error-ex@npm:1.3.2" + dependencies: + is-arrayish: "npm:^0.2.1" + checksum: 10c0/ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce + languageName: node + linkType: hard + "es-check@npm:7.1.1": version: 7.1.1 resolution: "es-check@npm:7.1.1" @@ -1921,6 +2727,20 @@ __metadata: languageName: node linkType: hard +"es-module-lexer@npm:^1.2.1": + version: 1.5.0 + resolution: "es-module-lexer@npm:1.5.0" + checksum: 10c0/d199853404f3381801eb102befb84a8fc48f93ed86b852c2461c2c4ad4bbbc91128f3d974ff9b8718628260ae3f36e661295ab3e419222868aa31269284e34c9 + languageName: node + linkType: hard + +"escalade@npm:^3.1.1": + version: 3.1.2 + resolution: "escalade@npm:3.1.2" + checksum: 10c0/6b4adafecd0682f3aa1cd1106b8fff30e492c7015b178bc81b2d2f75106dabea6c6d6e8508fc491bd58e597c74abb0e8e2368f943ecb9393d4162e3c2f3cf287 + languageName: node + linkType: hard + "escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": version: 1.0.3 resolution: "escape-html@npm:1.0.3" @@ -1928,6 +2748,13 @@ __metadata: languageName: node linkType: hard +"escape-string-regexp@npm:^1.0.5": + version: 1.0.5 + resolution: "escape-string-regexp@npm:1.0.5" + checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 + languageName: node + linkType: hard + "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" @@ -1935,6 +2762,23 @@ __metadata: languageName: node linkType: hard +"escape-string-regexp@npm:^5.0.0": + version: 5.0.0 + resolution: "escape-string-regexp@npm:5.0.0" + checksum: 10c0/6366f474c6f37a802800a435232395e04e9885919873e382b157ab7e8f0feb8fed71497f84a6f6a81a49aab41815522f5839112bd38026d203aea0c91622df95 + languageName: node + linkType: hard + +"eslint-scope@npm:5.1.1": + version: 5.1.1 + resolution: "eslint-scope@npm:5.1.1" + dependencies: + esrecurse: "npm:^4.3.0" + estraverse: "npm:^4.1.1" + checksum: 10c0/d30ef9dc1c1cbdece34db1539a4933fe3f9b14e1ffb27ecc85987902ee663ad7c9473bbd49a9a03195a373741e62e2f807c4938992e019b511993d163450e70a + languageName: node + linkType: hard + "eslint-scope@npm:^8.0.1": version: 8.0.1 resolution: "eslint-scope@npm:8.0.1" @@ -2014,6 +2858,16 @@ __metadata: languageName: node linkType: hard +"esprima@npm:^4.0.1": + version: 4.0.1 + resolution: "esprima@npm:4.0.1" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 + languageName: node + linkType: hard + "esquery@npm:^1.4.2": version: 1.5.0 resolution: "esquery@npm:1.5.0" @@ -2032,6 +2886,13 @@ __metadata: languageName: node linkType: hard +"estraverse@npm:^4.1.1": + version: 4.3.0 + resolution: "estraverse@npm:4.3.0" + checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d + languageName: node + linkType: hard + "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": version: 5.3.0 resolution: "estraverse@npm:5.3.0" @@ -2062,6 +2923,13 @@ __metadata: languageName: unknown linkType: soft +"events@npm:^3.2.0": + version: 3.3.0 + resolution: "events@npm:3.3.0" + checksum: 10c0/d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6 + languageName: node + linkType: hard + "exponential-backoff@npm:^3.1.1": version: 3.1.1 resolution: "exponential-backoff@npm:3.1.1" @@ -2079,7 +2947,7 @@ __metadata: languageName: unknown linkType: soft -"express@npm:^4.19.2": +"express@npm:4.19.2, express@npm:^4.19.2": version: 4.19.2 resolution: "express@npm:4.19.2" dependencies: @@ -2118,6 +2986,17 @@ __metadata: languageName: node linkType: hard +"external-editor@npm:^3.0.3, external-editor@npm:^3.1.0": + version: 3.1.0 + resolution: "external-editor@npm:3.1.0" + dependencies: + chardet: "npm:^0.7.0" + iconv-lite: "npm:^0.4.24" + tmp: "npm:^0.0.33" + checksum: 10c0/c98f1ba3efdfa3c561db4447ff366a6adb5c1e2581462522c56a18bf90dfe4da382f9cd1feee3e330108c3595a854b218272539f311ba1b3298f841eb0fbf339 + languageName: node + linkType: hard + "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -2152,6 +3031,13 @@ __metadata: languageName: node linkType: hard +"fast-safe-stringify@npm:2.1.1": + version: 2.1.1 + resolution: "fast-safe-stringify@npm:2.1.1" + checksum: 10c0/d90ec1c963394919828872f21edaa3ad6f1dddd288d2bd4e977027afff09f5db40f94e39536d4646f7e01761d704d72d51dce5af1b93717f3489ef808f5f4e4d + languageName: node + linkType: hard + "fastq@npm:^1.6.0": version: 1.17.1 resolution: "fastq@npm:1.17.1" @@ -2168,6 +3054,25 @@ __metadata: languageName: node linkType: hard +"figures@npm:^3.0.0": + version: 3.2.0 + resolution: "figures@npm:3.2.0" + dependencies: + escape-string-regexp: "npm:^1.0.5" + checksum: 10c0/9c421646ede432829a50bc4e55c7a4eb4bcb7cc07b5bab2f471ef1ab9a344595bbebb6c5c21470093fbb730cd81bbca119624c40473a125293f656f49cb47629 + languageName: node + linkType: hard + +"figures@npm:^5.0.0": + version: 5.0.0 + resolution: "figures@npm:5.0.0" + dependencies: + escape-string-regexp: "npm:^5.0.0" + is-unicode-supported: "npm:^1.2.0" + checksum: 10c0/ce0f17d4ea8b0fc429c5207c343534a2f5284ecfb22aa08607da7dc84ed9e1cf754f5b97760e8dcb98d3c9d1a1e4d3d578fe3b5b99c426f05d0f06c7ba618e16 + languageName: node + linkType: hard + "file-entry-cache@npm:^8.0.0": version: 8.0.0 resolution: "file-entry-cache@npm:8.0.0" @@ -2245,6 +3150,29 @@ __metadata: languageName: node linkType: hard +"fork-ts-checker-webpack-plugin@npm:9.0.2": + version: 9.0.2 + resolution: "fork-ts-checker-webpack-plugin@npm:9.0.2" + dependencies: + "@babel/code-frame": "npm:^7.16.7" + chalk: "npm:^4.1.2" + chokidar: "npm:^3.5.3" + cosmiconfig: "npm:^8.2.0" + deepmerge: "npm:^4.2.2" + fs-extra: "npm:^10.0.0" + memfs: "npm:^3.4.1" + minimatch: "npm:^3.0.4" + node-abort-controller: "npm:^3.0.1" + schema-utils: "npm:^3.1.1" + semver: "npm:^7.3.5" + tapable: "npm:^2.2.1" + peerDependencies: + typescript: ">3.6.0" + webpack: ^5.11.0 + checksum: 10c0/37e11dadcc65d297f07882f1661795289f2bf16fa9dea0b90bcc438855d48787378bce4dfcd8e842782f220503438995efbb28cbe560126f6a744ff740e8cc38 + languageName: node + linkType: hard + "forwarded@npm:0.2.0": version: 0.2.0 resolution: "forwarded@npm:0.2.0" @@ -2259,6 +3187,17 @@ __metadata: languageName: node linkType: hard +"fs-extra@npm:^10.0.0": + version: 10.1.0 + resolution: "fs-extra@npm:10.1.0" + dependencies: + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^6.0.1" + universalify: "npm:^2.0.0" + checksum: 10c0/5f579466e7109719d162a9249abbeffe7f426eb133ea486e020b89bc6d67a741134076bf439983f2eb79276ceaf6bd7b7c1e43c3fd67fe889863e69072fb0a5e + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -2277,6 +3216,20 @@ __metadata: languageName: node linkType: hard +"fs-monkey@npm:^1.0.4": + version: 1.0.5 + resolution: "fs-monkey@npm:1.0.5" + checksum: 10c0/815025e75549fb1ac6c403413b82fd631eded862ae27694a515c0f666069e95874ab34e79c33d1b3b8c87d1e54350d5e4262090d0aa5bd7130143cbc627537e4 + languageName: node + linkType: hard + +"fs.realpath@npm:^1.0.0": + version: 1.0.0 + resolution: "fs.realpath@npm:1.0.0" + checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 + languageName: node + linkType: hard + "fsevents@npm:~2.3.2": version: 2.3.3 resolution: "fsevents@npm:2.3.3" @@ -2334,6 +3287,28 @@ __metadata: languageName: node linkType: hard +"glob-to-regexp@npm:^0.4.1": + version: 0.4.1 + resolution: "glob-to-regexp@npm:0.4.1" + checksum: 10c0/0486925072d7a916f052842772b61c3e86247f0a80cc0deb9b5a3e8a1a9faad5b04fb6f58986a09f34d3e96cd2a22a24b7e9882fb1cf904c31e9a310de96c429 + languageName: node + linkType: hard + +"glob@npm:10.3.10": + version: 10.3.10 + resolution: "glob@npm:10.3.10" + dependencies: + foreground-child: "npm:^3.1.0" + jackspeak: "npm:^2.3.5" + minimatch: "npm:^9.0.1" + minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry: "npm:^1.10.1" + bin: + glob: dist/esm/bin.mjs + checksum: 10c0/13d8a1feb7eac7945f8c8480e11cd4a44b24d26503d99a8d8ac8d5aefbf3e9802a2b6087318a829fad04cb4e829f25c5f4f1110c68966c498720dd261c7e344d + languageName: node + linkType: hard + "glob@npm:^10.2.2, glob@npm:^10.3.10": version: 10.3.12 resolution: "glob@npm:10.3.12" @@ -2349,6 +3324,32 @@ __metadata: languageName: node linkType: hard +"glob@npm:^7.0.0": + version: 7.2.3 + resolution: "glob@npm:7.2.3" + dependencies: + fs.realpath: "npm:^1.0.0" + inflight: "npm:^1.0.4" + inherits: "npm:2" + minimatch: "npm:^3.1.1" + once: "npm:^1.3.0" + path-is-absolute: "npm:^1.0.0" + checksum: 10c0/65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe + languageName: node + linkType: hard + +"glob@npm:^9.2.0": + version: 9.3.5 + resolution: "glob@npm:9.3.5" + dependencies: + fs.realpath: "npm:^1.0.0" + minimatch: "npm:^8.0.2" + minipass: "npm:^4.2.4" + path-scurry: "npm:^1.6.1" + checksum: 10c0/2f6c2b9ee019ee21dc258ae97a88719614591e4c979cb4580b1b9df6f0f778a3cb38b4bdaf18dfa584637ea10f89a3c5f2533a5e449cf8741514ad18b0951f2e + languageName: node + linkType: hard + "globals@npm:^14.0.0": version: 14.0.0 resolution: "globals@npm:14.0.0" @@ -2386,7 +3387,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.2.6": +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 @@ -2414,6 +3415,13 @@ __metadata: languageName: node linkType: hard +"has-own-prop@npm:^2.0.0": + version: 2.0.0 + resolution: "has-own-prop@npm:2.0.0" + checksum: 10c0/2745497283d80228b5c5fbb8c63ab1029e604bce7db8d4b36255e427b3695b2153dc978b176674d0dd2a23f132809e04d7ef41fefc0ab85870a5caa918c5c0d9 + languageName: node + linkType: hard + "has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" @@ -2518,7 +3526,7 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.4.24": +"iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.24": version: 0.4.24 resolution: "iconv-lite@npm:0.4.24" dependencies: @@ -2536,6 +3544,13 @@ __metadata: languageName: node linkType: hard +"ieee754@npm:^1.1.13": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb + languageName: node + linkType: hard + "ignore-by-default@npm:^1.0.1": version: 1.0.1 resolution: "ignore-by-default@npm:1.0.1" @@ -2550,7 +3565,7 @@ __metadata: languageName: node linkType: hard -"import-fresh@npm:^3.2.1": +"import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -2610,13 +3625,76 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2.0.4, inherits@npm:^2.0.3": +"inflight@npm:^1.0.4": + version: 1.0.6 + resolution: "inflight@npm:1.0.6" + dependencies: + once: "npm:^1.3.0" + wrappy: "npm:1" + checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 + languageName: node + linkType: hard + +"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 languageName: node linkType: hard +"inquirer@npm:8.2.6": + version: 8.2.6 + resolution: "inquirer@npm:8.2.6" + dependencies: + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.1.1" + cli-cursor: "npm:^3.1.0" + cli-width: "npm:^3.0.0" + external-editor: "npm:^3.0.3" + figures: "npm:^3.0.0" + lodash: "npm:^4.17.21" + mute-stream: "npm:0.0.8" + ora: "npm:^5.4.1" + run-async: "npm:^2.4.0" + rxjs: "npm:^7.5.5" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + through: "npm:^2.3.6" + wrap-ansi: "npm:^6.0.1" + checksum: 10c0/eb5724de1778265323f3a68c80acfa899378cb43c24cdcb58661386500e5696b6b0b6c700e046b7aa767fe7b4823c6f04e6ddc268173e3f84116112529016296 + languageName: node + linkType: hard + +"inquirer@npm:9.2.12": + version: 9.2.12 + resolution: "inquirer@npm:9.2.12" + dependencies: + "@ljharb/through": "npm:^2.3.11" + ansi-escapes: "npm:^4.3.2" + chalk: "npm:^5.3.0" + cli-cursor: "npm:^3.1.0" + cli-width: "npm:^4.1.0" + external-editor: "npm:^3.1.0" + figures: "npm:^5.0.0" + lodash: "npm:^4.17.21" + mute-stream: "npm:1.0.0" + ora: "npm:^5.4.1" + run-async: "npm:^3.0.0" + rxjs: "npm:^7.8.1" + string-width: "npm:^4.2.3" + strip-ansi: "npm:^6.0.1" + wrap-ansi: "npm:^6.2.0" + checksum: 10c0/efc19864bea5f4b22a47e686aa88684ee42352db4e96dd6307da7140496c16e5ef0e74be664fba490b068714dc24d72f66dc1907a1ccbaf9d58d6156cbdc5908 + languageName: node + linkType: hard + +"interpret@npm:^1.0.0": + version: 1.4.0 + resolution: "interpret@npm:1.4.0" + checksum: 10c0/08c5ad30032edeec638485bc3f6db7d0094d9b3e85e0f950866600af3c52e9fd69715416d29564731c479d9f4d43ff3e4d302a178196bdc0e6837ec147640450 + languageName: node + linkType: hard + "ip-address@npm:^9.0.5": version: 9.0.5 resolution: "ip-address@npm:9.0.5" @@ -2634,6 +3712,13 @@ __metadata: languageName: node linkType: hard +"is-arrayish@npm:^0.2.1": + version: 0.2.1 + resolution: "is-arrayish@npm:0.2.1" + checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729 + languageName: node + linkType: hard + "is-arrayish@npm:^0.3.1": version: 0.3.2 resolution: "is-arrayish@npm:0.3.2" @@ -2691,6 +3776,13 @@ __metadata: languageName: node linkType: hard +"is-interactive@npm:^1.0.0": + version: 1.0.0 + resolution: "is-interactive@npm:1.0.0" + checksum: 10c0/dd47904dbf286cd20aa58c5192161be1a67138485b9836d5a70433b21a45442e9611b8498b8ab1f839fc962c7620667a50535fdfb4a6bc7989b8858645c06b4d + languageName: node + linkType: hard + "is-lambda@npm:^1.0.1": version: 1.0.1 resolution: "is-lambda@npm:1.0.1" @@ -2719,6 +3811,27 @@ __metadata: languageName: node linkType: hard +"is-unicode-supported@npm:^0.1.0": + version: 0.1.0 + resolution: "is-unicode-supported@npm:0.1.0" + checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453 + languageName: node + linkType: hard + +"is-unicode-supported@npm:^1.2.0": + version: 1.3.0 + resolution: "is-unicode-supported@npm:1.3.0" + checksum: 10c0/b8674ea95d869f6faabddc6a484767207058b91aea0250803cbf1221345cb0c56f466d4ecea375dc77f6633d248d33c47bd296fb8f4cdba0b4edba8917e83d8a + languageName: node + linkType: hard + +"isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d + languageName: node + linkType: hard + "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -2733,7 +3846,14 @@ __metadata: languageName: node linkType: hard -"jackspeak@npm:^2.3.6": +"iterare@npm:1.2.1": + version: 1.2.1 + resolution: "iterare@npm:1.2.1" + checksum: 10c0/02667d486e3e83ead028ba8484d927498c2ceab7e8c6a69dd881fd02abc4114f00b13abb36b592252fbb578b6e6f99ca1dfc2835408b9158c9a112a9964f453f + languageName: node + linkType: hard + +"jackspeak@npm:^2.3.5, jackspeak@npm:^2.3.6": version: 2.3.6 resolution: "jackspeak@npm:2.3.6" dependencies: @@ -2746,6 +3866,17 @@ __metadata: languageName: node linkType: hard +"jest-worker@npm:^27.4.5": + version: 27.5.1 + resolution: "jest-worker@npm:27.5.1" + dependencies: + "@types/node": "npm:*" + merge-stream: "npm:^2.0.0" + supports-color: "npm:^8.0.0" + checksum: 10c0/8c4737ffd03887b3c6768e4cc3ca0269c0336c1e4b1b120943958ddb035ed2a0fc6acab6dc99631720a3720af4e708ff84fb45382ad1e83c27946adf3623969b + languageName: node + linkType: hard + "joi@npm:^17.3.0": version: 17.12.3 resolution: "joi@npm:17.12.3" @@ -2759,6 +3890,13 @@ __metadata: languageName: node linkType: hard +"js-tokens@npm:^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed + languageName: node + linkType: hard + "js-yaml@npm:^4.1.0": version: 4.1.0 resolution: "js-yaml@npm:4.1.0" @@ -2784,6 +3922,13 @@ __metadata: languageName: node linkType: hard +"json-parse-even-better-errors@npm:^2.3.0, json-parse-even-better-errors@npm:^2.3.1": + version: 2.3.1 + resolution: "json-parse-even-better-errors@npm:2.3.1" + checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3 + languageName: node + linkType: hard + "json-schema-traverse@npm:^0.4.1": version: 0.4.1 resolution: "json-schema-traverse@npm:0.4.1" @@ -2791,6 +3936,13 @@ __metadata: languageName: node linkType: hard +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 + languageName: node + linkType: hard + "json-stable-stringify-without-jsonify@npm:^1.0.1": version: 1.0.1 resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" @@ -2798,20 +3950,56 @@ __metadata: languageName: node linkType: hard -"keygrip@npm:~1.1.0": - version: 1.1.0 - resolution: "keygrip@npm:1.1.0" - dependencies: - tsscmp: "npm:1.0.6" - checksum: 10c0/2aceec1a1e642a0caf938044056ed67b1909cfe67a93a59b32aae2863e0f35a1a53782ecc8f9cd0e3bdb60863fa0f401ccbd257cd7dfae61915f78445139edea +"json5@npm:^2.2.2": + version: 2.2.3 + resolution: "json5@npm:2.2.3" + bin: + json5: lib/cli.js + checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c languageName: node linkType: hard -"keyv@npm:^4.5.4": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" - dependencies: - json-buffer: "npm:3.0.1" +"jsonc-parser@npm:3.2.0": + version: 3.2.0 + resolution: "jsonc-parser@npm:3.2.0" + checksum: 10c0/5a12d4d04dad381852476872a29dcee03a57439574e4181d91dca71904fcdcc5e8e4706c0a68a2c61ad9810e1e1c5806b5100d52d3e727b78f5cdc595401045b + languageName: node + linkType: hard + +"jsonc-parser@npm:3.2.1": + version: 3.2.1 + resolution: "jsonc-parser@npm:3.2.1" + checksum: 10c0/ada66dec143d7f9cb0e2d0d29c69e9ce40d20f3a4cb96b0c6efb745025ac7f9ba647d7ac0990d0adfc37a2d2ae084a12009a9c833dbdbeadf648879a99b9df89 + languageName: node + linkType: hard + +"jsonfile@npm:^6.0.1": + version: 6.1.0 + resolution: "jsonfile@npm:6.1.0" + dependencies: + graceful-fs: "npm:^4.1.6" + universalify: "npm:^2.0.0" + dependenciesMeta: + graceful-fs: + optional: true + checksum: 10c0/4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865 + languageName: node + linkType: hard + +"keygrip@npm:~1.1.0": + version: 1.1.0 + resolution: "keygrip@npm:1.1.0" + dependencies: + tsscmp: "npm:1.0.6" + checksum: 10c0/2aceec1a1e642a0caf938044056ed67b1909cfe67a93a59b32aae2863e0f35a1a53782ecc8f9cd0e3bdb60863fa0f401ccbd257cd7dfae61915f78445139edea + languageName: node + linkType: hard + +"keyv@npm:^4.5.4": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: "npm:3.0.1" checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e languageName: node linkType: hard @@ -2893,6 +4081,20 @@ __metadata: languageName: node linkType: hard +"lines-and-columns@npm:^1.1.6": + version: 1.2.4 + resolution: "lines-and-columns@npm:1.2.4" + checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d + languageName: node + linkType: hard + +"loader-runner@npm:^4.2.0": + version: 4.3.0 + resolution: "loader-runner@npm:4.3.0" + checksum: 10c0/a44d78aae0907a72f73966fe8b82d1439c8c485238bd5a864b1b9a2a3257832effa858790241e6b37876b5446a78889adf2fcc8dd897ce54c089ecc0a0ce0bf0 + languageName: node + linkType: hard + "locate-path@npm:^6.0.0": version: 6.0.0 resolution: "locate-path@npm:6.0.0" @@ -2909,6 +4111,23 @@ __metadata: languageName: node linkType: hard +"lodash@npm:^4.17.21": + version: 4.17.21 + resolution: "lodash@npm:4.17.21" + checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c + languageName: node + linkType: hard + +"log-symbols@npm:^4.1.0": + version: 4.1.0 + resolution: "log-symbols@npm:4.1.0" + dependencies: + chalk: "npm:^4.1.0" + is-unicode-supported: "npm:^0.1.0" + checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6 + languageName: node + linkType: hard + "logform@npm:^2.3.2, logform@npm:^2.4.0": version: 2.6.0 resolution: "logform@npm:2.6.0" @@ -2939,6 +4158,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:0.30.5": + version: 0.30.5 + resolution: "magic-string@npm:0.30.5" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.4.15" + checksum: 10c0/38ac220ca7539e96da7ea2f38d85796bdf5c69b6bcae728c4bc2565084e6dc326b9174ee9770bea345cf6c9b3a24041b767167874fab5beca874d2356a9d1520 + languageName: node + linkType: hard + "make-error@npm:^1.1.1": version: 1.3.6 resolution: "make-error@npm:1.3.6" @@ -2972,6 +4200,15 @@ __metadata: languageName: node linkType: hard +"memfs@npm:^3.4.1": + version: 3.5.3 + resolution: "memfs@npm:3.5.3" + dependencies: + fs-monkey: "npm:^1.0.4" + checksum: 10c0/038fc81bce17ea92dde15aaa68fa0fdaf4960c721ce3ffc7c2cb87a259333f5159784ea48b3b72bf9e054254d9d0d0d5209d0fdc3d07d08653a09933b168fbd7 + languageName: node + linkType: hard + "merge-descriptors@npm:1.0.1": version: 1.0.1 resolution: "merge-descriptors@npm:1.0.1" @@ -2979,6 +4216,13 @@ __metadata: languageName: node linkType: hard +"merge-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-stream@npm:2.0.0" + checksum: 10c0/867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5 + languageName: node + linkType: hard + "merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" @@ -3010,7 +4254,7 @@ __metadata: languageName: node linkType: hard -"mime-types@npm:^2.1.18, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": +"mime-types@npm:^2.1.18, mime-types@npm:^2.1.27, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -3028,7 +4272,14 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.5, minimatch@npm:^3.1.2": +"mimic-fn@npm:^2.1.0": + version: 2.1.0 + resolution: "mimic-fn@npm:2.1.0" + checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 + languageName: node + linkType: hard + +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -3037,6 +4288,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^8.0.2": + version: 8.0.4 + resolution: "minimatch@npm:8.0.4" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/a0a394c356dd5b4cb7f821720841a82fa6f07c9c562c5b716909d1b6ec5e56a7e4c4b5029da26dd256b7d2b3a3f38cbf9ddd8680e887b9b5282b09c05501c1ca + languageName: node + linkType: hard + "minimatch@npm:^9.0.1, minimatch@npm:^9.0.4": version: 9.0.4 resolution: "minimatch@npm:9.0.4" @@ -3046,6 +4306,13 @@ __metadata: languageName: node linkType: hard +"minimist@npm:^1.2.6": + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 + languageName: node + linkType: hard + "minipass-collect@npm:^2.0.1": version: 2.0.1 resolution: "minipass-collect@npm:2.0.1" @@ -3106,6 +4373,13 @@ __metadata: languageName: node linkType: hard +"minipass@npm:^4.2.4": + version: 4.2.8 + resolution: "minipass@npm:4.2.8" + checksum: 10c0/4ea76b030d97079f4429d6e8a8affd90baf1b6a1898977c8ccce4701c5a2ba2792e033abc6709373f25c2c4d4d95440d9d5e9464b46b7b76ca44d2ce26d939ce + languageName: node + linkType: hard + "minipass@npm:^5.0.0": version: 5.0.0 resolution: "minipass@npm:5.0.0" @@ -3130,6 +4404,17 @@ __metadata: languageName: node linkType: hard +"mkdirp@npm:^0.5.4": + version: 0.5.6 + resolution: "mkdirp@npm:0.5.6" + dependencies: + minimist: "npm:^1.2.6" + bin: + mkdirp: bin/cmd.js + checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 + languageName: node + linkType: hard + "mkdirp@npm:^1.0.3": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" @@ -3167,6 +4452,35 @@ __metadata: languageName: node linkType: hard +"multer@npm:1.4.4-lts.1": + version: 1.4.4-lts.1 + resolution: "multer@npm:1.4.4-lts.1" + dependencies: + append-field: "npm:^1.0.0" + busboy: "npm:^1.0.0" + concat-stream: "npm:^1.5.2" + mkdirp: "npm:^0.5.4" + object-assign: "npm:^4.1.1" + type-is: "npm:^1.6.4" + xtend: "npm:^4.0.0" + checksum: 10c0/63277d3483869f424274ef8ce6ab7ff4ce9d2c1cc69e707fc8b5d9b2b348ae6f742809e0b357a591dea885d147594bcd06528d3d6bbe32046115d4a7e126b954 + languageName: node + linkType: hard + +"mute-stream@npm:0.0.8": + version: 0.0.8 + resolution: "mute-stream@npm:0.0.8" + checksum: 10c0/18d06d92e5d6d45e2b63c0e1b8f25376af71748ac36f53c059baa8b76ffac31c5ab225480494e7d35d30215ecdb18fed26ec23cafcd2f7733f2f14406bcd19e2 + languageName: node + linkType: hard + +"mute-stream@npm:1.0.0": + version: 1.0.0 + resolution: "mute-stream@npm:1.0.0" + checksum: 10c0/dce2a9ccda171ec979a3b4f869a102b1343dee35e920146776780de182f16eae459644d187e38d59a3d37adf85685e1c17c38cf7bfda7e39a9880f7a1d10a74c + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -3181,6 +4495,60 @@ __metadata: languageName: node linkType: hard +"neo-async@npm:^2.6.2": + version: 2.6.2 + resolution: "neo-async@npm:2.6.2" + checksum: 10c0/c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d + languageName: node + linkType: hard + +"nestjs-test-application@workspace:apps/nestjs": + version: 0.0.0-use.local + resolution: "nestjs-test-application@workspace:apps/nestjs" + dependencies: + "@nestjs/cli": "npm:10.3.2" + "@nestjs/common": "npm:10.3.7" + "@nestjs/core": "npm:10.3.7" + "@nestjs/platform-express": "npm:10.3.7" + "@nestjs/schematics": "npm:10.1.1" + "@sentry/node": "npm:8.0.0-alpha.9" + "@sentry/types": "npm:8.0.0-alpha.9" + "@types/express": "npm:^4.17.17" + reflect-metadata: "npm:0.2.2" + rxjs: "npm:7.8.1" + languageName: unknown + linkType: soft + +"node-abort-controller@npm:^3.0.1": + version: 3.1.1 + resolution: "node-abort-controller@npm:3.1.1" + checksum: 10c0/f7ad0e7a8e33809d4f3a0d1d65036a711c39e9d23e0319d80ebe076b9a3b4432b4d6b86a7fab65521de3f6872ffed36fc35d1327487c48eb88c517803403eda3 + languageName: node + linkType: hard + +"node-emoji@npm:1.11.0": + version: 1.11.0 + resolution: "node-emoji@npm:1.11.0" + dependencies: + lodash: "npm:^4.17.21" + checksum: 10c0/5dac6502dbef087092d041fcc2686d8be61168593b3a9baf964d62652f55a3a9c2277f171b81cccb851ccef33f2d070f45e633fab1fda3264f8e1ae9041c673f + languageName: node + linkType: hard + +"node-fetch@npm:^2.6.1": + version: 2.7.0 + resolution: "node-fetch@npm:2.7.0" + dependencies: + whatwg-url: "npm:^5.0.0" + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8 + languageName: node + linkType: hard + "node-gyp@npm:latest": version: 10.1.0 resolution: "node-gyp@npm:10.1.0" @@ -3201,6 +4569,13 @@ __metadata: languageName: node linkType: hard +"node-releases@npm:^2.0.14": + version: 2.0.14 + resolution: "node-releases@npm:2.0.14" + checksum: 10c0/199fc93773ae70ec9969bc6d5ac5b2bbd6eb986ed1907d751f411fef3ede0e4bfdb45ceb43711f8078bea237b6036db8b1bf208f6ff2b70c7d615afd157f3ab9 + languageName: node + linkType: hard + "nodemon@npm:^3.1.0": version: 3.1.0 resolution: "nodemon@npm:3.1.0" @@ -3250,6 +4625,13 @@ __metadata: languageName: node linkType: hard +"object-assign@npm:^4, object-assign@npm:^4.1.1": + version: 4.1.1 + resolution: "object-assign@npm:4.1.1" + checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 + languageName: node + linkType: hard + "object-inspect@npm:^1.13.1": version: 1.13.1 resolution: "object-inspect@npm:1.13.1" @@ -3273,6 +4655,15 @@ __metadata: languageName: node linkType: hard +"once@npm:^1.3.0": + version: 1.4.0 + resolution: "once@npm:1.4.0" + dependencies: + wrappy: "npm:1" + checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 + languageName: node + linkType: hard + "one-time@npm:^1.0.0": version: 1.0.0 resolution: "one-time@npm:1.0.0" @@ -3282,6 +4673,15 @@ __metadata: languageName: node linkType: hard +"onetime@npm:^5.1.0": + version: 5.1.2 + resolution: "onetime@npm:5.1.2" + dependencies: + mimic-fn: "npm:^2.1.0" + checksum: 10c0/ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f + languageName: node + linkType: hard + "only@npm:~0.0.2": version: 0.0.2 resolution: "only@npm:0.0.2" @@ -3314,6 +4714,30 @@ __metadata: languageName: node linkType: hard +"ora@npm:5.4.1, ora@npm:^5.4.1": + version: 5.4.1 + resolution: "ora@npm:5.4.1" + dependencies: + bl: "npm:^4.1.0" + chalk: "npm:^4.1.0" + cli-cursor: "npm:^3.1.0" + cli-spinners: "npm:^2.5.0" + is-interactive: "npm:^1.0.0" + is-unicode-supported: "npm:^0.1.0" + log-symbols: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + wcwidth: "npm:^1.0.1" + checksum: 10c0/10ff14aace236d0e2f044193362b22edce4784add08b779eccc8f8ef97195cae1248db8ec1ec5f5ff076f91acbe573f5f42a98c19b78dba8c54eefff983cae85 + languageName: node + linkType: hard + +"os-tmpdir@npm:~1.0.2": + version: 1.0.2 + resolution: "os-tmpdir@npm:1.0.2" + checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990 + languageName: node + linkType: hard + "p-limit@npm:^3.0.2": version: 3.1.0 resolution: "p-limit@npm:3.1.0" @@ -3350,6 +4774,18 @@ __metadata: languageName: node linkType: hard +"parse-json@npm:^5.2.0": + version: 5.2.0 + resolution: "parse-json@npm:5.2.0" + dependencies: + "@babel/code-frame": "npm:^7.0.0" + error-ex: "npm:^1.3.1" + json-parse-even-better-errors: "npm:^2.3.0" + lines-and-columns: "npm:^1.1.6" + checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585 + languageName: node + linkType: hard + "parseurl@npm:^1.3.2, parseurl@npm:~1.3.3": version: 1.3.3 resolution: "parseurl@npm:1.3.3" @@ -3364,6 +4800,13 @@ __metadata: languageName: node linkType: hard +"path-is-absolute@npm:^1.0.0": + version: 1.0.1 + resolution: "path-is-absolute@npm:1.0.1" + checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 + languageName: node + linkType: hard + "path-key@npm:^3.1.0": version: 3.1.1 resolution: "path-key@npm:3.1.1" @@ -3378,7 +4821,7 @@ __metadata: languageName: node linkType: hard -"path-scurry@npm:^1.10.2": +"path-scurry@npm:^1.10.1, path-scurry@npm:^1.10.2, path-scurry@npm:^1.6.1": version: 1.10.2 resolution: "path-scurry@npm:1.10.2" dependencies: @@ -3395,6 +4838,13 @@ __metadata: languageName: node linkType: hard +"path-to-regexp@npm:3.2.0": + version: 3.2.0 + resolution: "path-to-regexp@npm:3.2.0" + checksum: 10c0/2eeb1c698293acf6f89fe5af33b4c20822b3cee3e4e910c43bbee098c8dde34232fc194d5c2bc02df72affada446a181784e24f7a46932af323706be029ed1ba + languageName: node + linkType: hard + "path-to-regexp@npm:^6.2.1": version: 6.2.2 resolution: "path-to-regexp@npm:6.2.2" @@ -3458,6 +4908,20 @@ __metadata: languageName: node linkType: hard +"picocolors@npm:^1.0.0": + version: 1.0.0 + resolution: "picocolors@npm:1.0.0" + checksum: 10c0/20a5b249e331c14479d94ec6817a182fd7a5680debae82705747b2db7ec50009a5f6648d0621c561b0572703f84dbef0858abcbd5856d3c5511426afcb1961f7 + languageName: node + linkType: hard + +"picomatch@npm:3.0.1": + version: 3.0.1 + resolution: "picomatch@npm:3.0.1" + checksum: 10c0/70ec738569f1864658378b7abdab8939d15dae0718c1df994eae3346fd33daf6a3c1ff4e0c1a0cd1e2c0319130985b63a2cff34d192f2f2acbb78aca76111736 + languageName: node + linkType: hard + "picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" @@ -3465,6 +4929,13 @@ __metadata: languageName: node linkType: hard +"pluralize@npm:8.0.0": + version: 8.0.0 + resolution: "pluralize@npm:8.0.0" + checksum: 10c0/2044cfc34b2e8c88b73379ea4a36fc577db04f651c2909041b054c981cd863dd5373ebd030123ab058d194ae615d3a97cfdac653991e499d10caf592e8b3dc33 + languageName: node + linkType: hard + "postgres-array@npm:~2.0.0": version: 2.0.0 resolution: "postgres-array@npm:2.0.0" @@ -3555,6 +5026,13 @@ __metadata: languageName: node linkType: hard +"process-nextick-args@npm:~2.0.0": + version: 2.0.1 + resolution: "process-nextick-args@npm:2.0.1" + checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 + languageName: node + linkType: hard + "promise-retry@npm:^2.0.1": version: 2.0.1 resolution: "promise-retry@npm:2.0.1" @@ -3605,6 +5083,15 @@ __metadata: languageName: node linkType: hard +"randombytes@npm:^2.1.0": + version: 2.1.0 + resolution: "randombytes@npm:2.1.0" + dependencies: + safe-buffer: "npm:^5.1.0" + checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 + languageName: node + linkType: hard + "range-parser@npm:~1.2.1": version: 1.2.1 resolution: "range-parser@npm:1.2.1" @@ -3624,6 +5111,21 @@ __metadata: languageName: node linkType: hard +"readable-stream@npm:^2.2.2": + version: 2.3.8 + resolution: "readable-stream@npm:2.3.8" + dependencies: + core-util-is: "npm:~1.0.0" + inherits: "npm:~2.0.3" + isarray: "npm:~1.0.0" + process-nextick-args: "npm:~2.0.0" + safe-buffer: "npm:~5.1.1" + string_decoder: "npm:~1.1.1" + util-deprecate: "npm:~1.0.1" + checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa + languageName: node + linkType: hard + "readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": version: 3.6.2 resolution: "readable-stream@npm:3.6.2" @@ -3644,6 +5146,36 @@ __metadata: languageName: node linkType: hard +"rechoir@npm:^0.6.2": + version: 0.6.2 + resolution: "rechoir@npm:0.6.2" + dependencies: + resolve: "npm:^1.1.6" + checksum: 10c0/22c4bb32f4934a9468468b608417194f7e3ceba9a508512125b16082c64f161915a28467562368eeb15dc16058eb5b7c13a20b9eb29ff9927d1ebb3b5aa83e84 + languageName: node + linkType: hard + +"reflect-metadata@npm:0.2.2": + version: 0.2.2 + resolution: "reflect-metadata@npm:0.2.2" + checksum: 10c0/1cd93a15ea291e420204955544637c264c216e7aac527470e393d54b4bb075f10a17e60d8168ec96600c7e0b9fcc0cb0bb6e91c3fbf5b0d8c9056f04e6ac1ec2 + languageName: node + linkType: hard + +"repeat-string@npm:^1.6.1": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 10c0/87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d + languageName: node + linkType: hard + +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 + languageName: node + linkType: hard + "require-in-the-middle@npm:^7.1.1": version: 7.3.0 resolution: "require-in-the-middle@npm:7.3.0" @@ -3662,7 +5194,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.22.1": +"resolve@npm:^1.1.6, resolve@npm:^1.22.1": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -3675,7 +5207,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^1.22.1#optional!builtin": +"resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" dependencies: @@ -3688,6 +5220,16 @@ __metadata: languageName: node linkType: hard +"restore-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "restore-cursor@npm:3.1.0" + dependencies: + onetime: "npm:^5.1.0" + signal-exit: "npm:^3.0.2" + checksum: 10c0/8051a371d6aa67ff21625fa94e2357bd81ffdc96267f3fb0fc4aaf4534028343836548ef34c240ffa8c25b280ca35eb36be00b3cb2133fa4f51896d7e73c6b4f + languageName: node + linkType: hard + "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" @@ -3702,6 +5244,31 @@ __metadata: languageName: node linkType: hard +"rimraf@npm:4.4.1": + version: 4.4.1 + resolution: "rimraf@npm:4.4.1" + dependencies: + glob: "npm:^9.2.0" + bin: + rimraf: dist/cjs/src/bin.js + checksum: 10c0/8c5e142d26d8b222be9dc9a1a41ba48e95d8f374e813e66a8533e87c6180174fcb3f573b9b592eca12740ebf8b78526d136acd971d4a790763d6f2232c34fa24 + languageName: node + linkType: hard + +"run-async@npm:^2.4.0": + version: 2.4.1 + resolution: "run-async@npm:2.4.1" + checksum: 10c0/35a68c8f1d9664f6c7c2e153877ca1d6e4f886e5ca067c25cdd895a6891ff3a1466ee07c63d6a9be306e9619ff7d509494e6d9c129516a36b9fd82263d579ee1 + languageName: node + linkType: hard + +"run-async@npm:^3.0.0": + version: 3.0.0 + resolution: "run-async@npm:3.0.0" + checksum: 10c0/b18b562ae37c3020083dcaae29642e4cc360c824fbfb6b7d50d809a9d5227bb986152d09310255842c8dce40526e82ca768f02f00806c91ba92a8dfa6159cb85 + languageName: node + linkType: hard + "run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" @@ -3711,13 +5278,29 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:5.2.1, safe-buffer@npm:~5.2.0": +"rxjs@npm:7.8.1, rxjs@npm:^7.5.5, rxjs@npm:^7.8.1": + version: 7.8.1 + resolution: "rxjs@npm:7.8.1" + dependencies: + tslib: "npm:^2.1.0" + checksum: 10c0/3c49c1ecd66170b175c9cacf5cef67f8914dcbc7cd0162855538d365c83fea631167cacb644b3ce533b2ea0e9a4d0b12175186985f89d75abe73dbd8f7f06f68 + languageName: node + linkType: hard + +"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 languageName: node linkType: hard +"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 + languageName: node + linkType: hard + "safe-stable-stringify@npm:^2.3.1": version: 2.4.3 resolution: "safe-stable-stringify@npm:2.4.3" @@ -3732,6 +5315,17 @@ __metadata: languageName: node linkType: hard +"schema-utils@npm:^3.1.1, schema-utils@npm:^3.2.0": + version: 3.3.0 + resolution: "schema-utils@npm:3.3.0" + dependencies: + "@types/json-schema": "npm:^7.0.8" + ajv: "npm:^6.12.5" + ajv-keywords: "npm:^3.5.2" + checksum: 10c0/fafdbde91ad8aa1316bc543d4b61e65ea86970aebbfb750bfb6d8a6c287a23e415e0e926c2498696b242f63af1aab8e585252637fabe811fd37b604351da6500 + languageName: node + linkType: hard + "semver@npm:^7.3.5, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.6.0": version: 7.6.0 resolution: "semver@npm:7.6.0" @@ -3783,6 +5377,15 @@ __metadata: languageName: unknown linkType: soft +"serialize-javascript@npm:^6.0.1": + version: 6.0.2 + resolution: "serialize-javascript@npm:6.0.2" + dependencies: + randombytes: "npm:^2.1.0" + checksum: 10c0/2dd09ef4b65a1289ba24a788b1423a035581bef60817bea1f01eda8e3bda623f86357665fe7ac1b50f6d4f583f97db9615b3f07b2a2e8cbcb75033965f771dd2 + languageName: node + linkType: hard + "serve-static@npm:1.15.0": version: 1.15.0 resolution: "serve-static@npm:1.15.0" @@ -3832,6 +5435,19 @@ __metadata: languageName: node linkType: hard +"shelljs@npm:0.8.5": + version: 0.8.5 + resolution: "shelljs@npm:0.8.5" + dependencies: + glob: "npm:^7.0.0" + interpret: "npm:^1.0.0" + rechoir: "npm:^0.6.2" + bin: + shjs: bin/shjs + checksum: 10c0/feb25289a12e4bcd04c40ddfab51aff98a3729f5c2602d5b1a1b95f6819ec7804ac8147ebd8d9a85dfab69d501bcf92d7acef03247320f51c1552cec8d8e2382 + languageName: node + linkType: hard + "shimmer@npm:^1.2.1": version: 1.2.1 resolution: "shimmer@npm:1.2.1" @@ -3851,6 +5467,13 @@ __metadata: languageName: node linkType: hard +"signal-exit@npm:^3.0.2": + version: 3.0.7 + resolution: "signal-exit@npm:3.0.7" + checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 + languageName: node + linkType: hard + "signal-exit@npm:^4.0.1": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" @@ -3911,6 +5534,30 @@ __metadata: languageName: node linkType: hard +"source-map-support@npm:0.5.21, source-map-support@npm:~0.5.20": + version: 0.5.21 + resolution: "source-map-support@npm:0.5.21" + dependencies: + buffer-from: "npm:^1.0.0" + source-map: "npm:^0.6.0" + checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d + languageName: node + linkType: hard + +"source-map@npm:0.7.4": + version: 0.7.4 + resolution: "source-map@npm:0.7.4" + checksum: 10c0/dc0cf3768fe23c345ea8760487f8c97ef6fca8a73c83cd7c9bf2fde8bc2c34adb9c0824d6feb14bc4f9e37fb522e18af621543f1289038a66ac7586da29aa7dc + languageName: node + linkType: hard + +"source-map@npm:^0.6.0": + version: 0.6.1 + resolution: "source-map@npm:0.6.1" + checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 + languageName: node + linkType: hard + "sprintf-js@npm:^1.1.3": version: 1.1.3 resolution: "sprintf-js@npm:1.1.3" @@ -3948,7 +5595,14 @@ __metadata: languageName: node linkType: hard -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": +"streamsearch@npm:^1.1.0": + version: 1.1.0 + resolution: "streamsearch@npm:1.1.0" + checksum: 10c0/fbd9aecc2621364384d157f7e59426f4bfd385e8b424b5aaa79c83a6f5a1c8fd2e4e3289e95de1eb3511cb96bb333d6281a9919fafce760e4edb35b2cd2facab + languageName: node + linkType: hard + +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -3979,6 +5633,15 @@ __metadata: languageName: node linkType: hard +"string_decoder@npm:~1.1.1": + version: 1.1.1 + resolution: "string_decoder@npm:1.1.1" + dependencies: + safe-buffer: "npm:~5.1.0" + checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e + languageName: node + linkType: hard + "strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -3997,6 +5660,13 @@ __metadata: languageName: node linkType: hard +"strip-bom@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-bom@npm:3.0.0" + checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1 + languageName: node + linkType: hard + "strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" @@ -4004,7 +5674,7 @@ __metadata: languageName: node linkType: hard -"supports-color@npm:^5.5.0": +"supports-color@npm:^5.3.0, supports-color@npm:^5.5.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" dependencies: @@ -4022,7 +5692,7 @@ __metadata: languageName: node linkType: hard -"supports-color@npm:^8.1.1": +"supports-color@npm:^8.0.0, supports-color@npm:^8.1.1": version: 8.1.1 resolution: "supports-color@npm:8.1.1" dependencies: @@ -4038,6 +5708,20 @@ __metadata: languageName: node linkType: hard +"symbol-observable@npm:4.0.0": + version: 4.0.0 + resolution: "symbol-observable@npm:4.0.0" + checksum: 10c0/5e9a3ab08263a6be8cbee76587ad5880dcc62a47002787ed5ebea56b1eb30dc87da6f0183d67e88286806799fbe21c69077fbd677be4be2188e92318d6c6f31d + languageName: node + linkType: hard + +"tapable@npm:^2.1.1, tapable@npm:^2.2.0, tapable@npm:^2.2.1": + version: 2.2.1 + resolution: "tapable@npm:2.2.1" + checksum: 10c0/bc40e6efe1e554d075469cedaba69a30eeb373552aaf41caeaaa45bf56ffacc2674261b106245bd566b35d8f3329b52d838e851ee0a852120acae26e622925c9 + languageName: node + linkType: hard + "tar@npm:^6.1.11, tar@npm:^6.1.2": version: 6.2.1 resolution: "tar@npm:6.2.1" @@ -4052,6 +5736,42 @@ __metadata: languageName: node linkType: hard +"terser-webpack-plugin@npm:^5.3.10": + version: 5.3.10 + resolution: "terser-webpack-plugin@npm:5.3.10" + dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.20" + jest-worker: "npm:^27.4.5" + schema-utils: "npm:^3.1.1" + serialize-javascript: "npm:^6.0.1" + terser: "npm:^5.26.0" + peerDependencies: + webpack: ^5.1.0 + peerDependenciesMeta: + "@swc/core": + optional: true + esbuild: + optional: true + uglify-js: + optional: true + checksum: 10c0/66d1ed3174542560911cf96f4716aeea8d60e7caab212291705d50072b6ba844c7391442541b13c848684044042bea9ec87512b8506528c12854943da05faf91 + languageName: node + linkType: hard + +"terser@npm:^5.26.0": + version: 5.30.3 + resolution: "terser@npm:5.30.3" + dependencies: + "@jridgewell/source-map": "npm:^0.3.3" + acorn: "npm:^8.8.2" + commander: "npm:^2.20.0" + source-map-support: "npm:~0.5.20" + bin: + terser: bin/terser + checksum: 10c0/ab5a8afef2e7a3b12a0fd17f9ff984fe02aefa945985eb139ab9984280d523a1104021eda889a7f993b69a67574ceb8fd0db8b76e5efc6a7607246db51bcc0b6 + languageName: node + linkType: hard + "text-hex@npm:1.0.x": version: 1.0.0 resolution: "text-hex@npm:1.0.0" @@ -4066,6 +5786,22 @@ __metadata: languageName: node linkType: hard +"through@npm:^2.3.6": + version: 2.3.8 + resolution: "through@npm:2.3.8" + checksum: 10c0/4b09f3774099de0d4df26d95c5821a62faee32c7e96fb1f4ebd54a2d7c11c57fe88b0a0d49cf375de5fee5ae6bf4eb56dbbf29d07366864e2ee805349970d3cc + languageName: node + linkType: hard + +"tmp@npm:^0.0.33": + version: 0.0.33 + resolution: "tmp@npm:0.0.33" + dependencies: + os-tmpdir: "npm:~1.0.2" + checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408 + languageName: node + linkType: hard + "to-regex-range@npm:^5.0.1": version: 5.0.1 resolution: "to-regex-range@npm:5.0.1" @@ -4093,6 +5829,22 @@ __metadata: languageName: node linkType: hard +"tr46@npm:~0.0.3": + version: 0.0.3 + resolution: "tr46@npm:0.0.3" + checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 + languageName: node + linkType: hard + +"tree-kill@npm:1.2.2": + version: 1.2.2 + resolution: "tree-kill@npm:1.2.2" + bin: + tree-kill: cli.js + checksum: 10c0/7b1b7c7f17608a8f8d20a162e7957ac1ef6cd1636db1aba92f4e072dc31818c2ff0efac1e3d91064ede67ed5dc57c565420531a8134090a12ac10cf792ab14d2 + languageName: node + linkType: hard + "triple-beam@npm:^1.3.0": version: 1.4.1 resolution: "triple-beam@npm:1.4.1" @@ -4147,6 +5899,35 @@ __metadata: languageName: node linkType: hard +"tsconfig-paths-webpack-plugin@npm:4.1.0": + version: 4.1.0 + resolution: "tsconfig-paths-webpack-plugin@npm:4.1.0" + dependencies: + chalk: "npm:^4.1.0" + enhanced-resolve: "npm:^5.7.0" + tsconfig-paths: "npm:^4.1.2" + checksum: 10c0/c030e867e70a3f6d1799fdffa209c3a35e1435ad99aac01946b9ebb0fa8208b7b508c1dfe8c8e13d6a2ef70c75b4db062fbfd3c1f3362c69b6c65ffd4a50e226 + languageName: node + linkType: hard + +"tsconfig-paths@npm:4.2.0, tsconfig-paths@npm:^4.1.2": + version: 4.2.0 + resolution: "tsconfig-paths@npm:4.2.0" + dependencies: + json5: "npm:^2.2.2" + minimist: "npm:^1.2.6" + strip-bom: "npm:^3.0.0" + checksum: 10c0/09a5877402d082bb1134930c10249edeebc0211f36150c35e1c542e5b91f1047b1ccf7da1e59babca1ef1f014c525510f4f870de7c9bda470c73bb4e2721b3ea + languageName: node + linkType: hard + +"tslib@npm:2.6.2, tslib@npm:^2.1.0": + version: 2.6.2 + resolution: "tslib@npm:2.6.2" + checksum: 10c0/e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb + languageName: node + linkType: hard + "tsscmp@npm:1.0.6": version: 1.0.6 resolution: "tsscmp@npm:1.0.6" @@ -4163,7 +5944,14 @@ __metadata: languageName: node linkType: hard -"type-is@npm:^1.6.16, type-is@npm:~1.6.18": +"type-fest@npm:^0.21.3": + version: 0.21.3 + resolution: "type-fest@npm:0.21.3" + checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 + languageName: node + linkType: hard + +"type-is@npm:^1.6.16, type-is@npm:^1.6.4, type-is@npm:~1.6.18": version: 1.6.18 resolution: "type-is@npm:1.6.18" dependencies: @@ -4173,6 +5961,13 @@ __metadata: languageName: node linkType: hard +"typedarray@npm:^0.0.6": + version: 0.0.6 + resolution: "typedarray@npm:0.0.6" + checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412 + languageName: node + linkType: hard + "typescript-eslint@npm:^7.6.0": version: 7.6.0 resolution: "typescript-eslint@npm:7.6.0" @@ -4189,6 +5984,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:5.3.3": + version: 5.3.3 + resolution: "typescript@npm:5.3.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/e33cef99d82573624fc0f854a2980322714986bc35b9cb4d1ce736ed182aeab78e2cb32b385efa493b2a976ef52c53e20d6c6918312353a91850e2b76f1ea44f + languageName: node + linkType: hard + "typescript@npm:5.4.4": version: 5.4.4 resolution: "typescript@npm:5.4.4" @@ -4199,6 +6004,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@npm%3A5.3.3#optional!builtin": + version: 5.3.3 + resolution: "typescript@patch:typescript@npm%3A5.3.3#optional!builtin::version=5.3.3&hash=e012d7" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/1d0a5f4ce496c42caa9a30e659c467c5686eae15d54b027ee7866744952547f1be1262f2d40de911618c242b510029d51d43ff605dba8fb740ec85ca2d3f9500 + languageName: node + linkType: hard + "typescript@patch:typescript@npm%3A5.4.4#optional!builtin": version: 5.4.4 resolution: "typescript@patch:typescript@npm%3A5.4.4#optional!builtin::version=5.4.4&hash=5adc0c" @@ -4209,6 +6024,15 @@ __metadata: languageName: node linkType: hard +"uid@npm:2.0.2": + version: 2.0.2 + resolution: "uid@npm:2.0.2" + dependencies: + "@lukeed/csprng": "npm:^1.0.0" + checksum: 10c0/e9d02d0562c74e74b5a2519e586db9d7f8204978e476cddd191ee1a9efb85efafdbab2dbf3fc3dde0f5da01fd9da161f37d604dabf513447fd2c03d008f1324c + languageName: node + linkType: hard + "undefsafe@npm:^2.0.5": version: 2.0.5 resolution: "undefsafe@npm:2.0.5" @@ -4241,6 +6065,13 @@ __metadata: languageName: node linkType: hard +"universalify@npm:^2.0.0": + version: 2.0.1 + resolution: "universalify@npm:2.0.1" + checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a + languageName: node + linkType: hard + "unpipe@npm:1.0.0, unpipe@npm:~1.0.0": version: 1.0.0 resolution: "unpipe@npm:1.0.0" @@ -4248,6 +6079,20 @@ __metadata: languageName: node linkType: hard +"update-browserslist-db@npm:^1.0.13": + version: 1.0.13 + resolution: "update-browserslist-db@npm:1.0.13" + dependencies: + escalade: "npm:^3.1.1" + picocolors: "npm:^1.0.0" + peerDependencies: + browserslist: ">= 4.21.0" + bin: + update-browserslist-db: cli.js + checksum: 10c0/e52b8b521c78ce1e0c775f356cd16a9c22c70d25f3e01180839c407a5dc787fb05a13f67560cbaf316770d26fa99f78f1acd711b1b54a4f35d4820d4ea7136e6 + languageName: node + linkType: hard + "uri-js@npm:^4.2.2": version: 4.4.1 resolution: "uri-js@npm:4.4.1" @@ -4257,7 +6102,7 @@ __metadata: languageName: node linkType: hard -"util-deprecate@npm:^1.0.1": +"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2" checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 @@ -4278,13 +6123,100 @@ __metadata: languageName: node linkType: hard -"vary@npm:^1.1.2, vary@npm:~1.1.2": +"vary@npm:^1, vary@npm:^1.1.2, vary@npm:~1.1.2": version: 1.1.2 resolution: "vary@npm:1.1.2" checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f languageName: node linkType: hard +"watchpack@npm:^2.4.0": + version: 2.4.1 + resolution: "watchpack@npm:2.4.1" + dependencies: + glob-to-regexp: "npm:^0.4.1" + graceful-fs: "npm:^4.1.2" + checksum: 10c0/c694de0a61004e587a8a0fdc9cfec20ee692c52032d9ab2c2e99969a37fdab9e6e1bd3164ed506f9a13f7c83e65563d563e0d6b87358470cdb7309b83db78683 + languageName: node + linkType: hard + +"wcwidth@npm:^1.0.1": + version: 1.0.1 + resolution: "wcwidth@npm:1.0.1" + dependencies: + defaults: "npm:^1.0.3" + checksum: 10c0/5b61ca583a95e2dd85d7078400190efd452e05751a64accb8c06ce4db65d7e0b0cde9917d705e826a2e05cc2548f61efde115ffa374c3e436d04be45c889e5b4 + languageName: node + linkType: hard + +"webidl-conversions@npm:^3.0.0": + version: 3.0.1 + resolution: "webidl-conversions@npm:3.0.1" + checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db + languageName: node + linkType: hard + +"webpack-node-externals@npm:3.0.0": + version: 3.0.0 + resolution: "webpack-node-externals@npm:3.0.0" + checksum: 10c0/9f645a4dc8e122dac43cdc8c1367d4b44af20c79632438b633acc1b4fe64ea7ba1ad6ab61bd0fc46e1b873158c48d8c7a25a489cdab1f31299f00eb3b81cfc61 + languageName: node + linkType: hard + +"webpack-sources@npm:^3.2.3": + version: 3.2.3 + resolution: "webpack-sources@npm:3.2.3" + checksum: 10c0/2ef63d77c4fad39de4a6db17323d75eb92897b32674e97d76f0a1e87c003882fc038571266ad0ef581ac734cbe20952912aaa26155f1905e96ce251adbb1eb4e + languageName: node + linkType: hard + +"webpack@npm:5.90.1": + version: 5.90.1 + resolution: "webpack@npm:5.90.1" + dependencies: + "@types/eslint-scope": "npm:^3.7.3" + "@types/estree": "npm:^1.0.5" + "@webassemblyjs/ast": "npm:^1.11.5" + "@webassemblyjs/wasm-edit": "npm:^1.11.5" + "@webassemblyjs/wasm-parser": "npm:^1.11.5" + acorn: "npm:^8.7.1" + acorn-import-assertions: "npm:^1.9.0" + browserslist: "npm:^4.21.10" + chrome-trace-event: "npm:^1.0.2" + enhanced-resolve: "npm:^5.15.0" + es-module-lexer: "npm:^1.2.1" + eslint-scope: "npm:5.1.1" + events: "npm:^3.2.0" + glob-to-regexp: "npm:^0.4.1" + graceful-fs: "npm:^4.2.9" + json-parse-even-better-errors: "npm:^2.3.1" + loader-runner: "npm:^4.2.0" + mime-types: "npm:^2.1.27" + neo-async: "npm:^2.6.2" + schema-utils: "npm:^3.2.0" + tapable: "npm:^2.1.1" + terser-webpack-plugin: "npm:^5.3.10" + watchpack: "npm:^2.4.0" + webpack-sources: "npm:^3.2.3" + peerDependenciesMeta: + webpack-cli: + optional: true + bin: + webpack: bin/webpack.js + checksum: 10c0/c36b86e5aa42f07c865cc5221d88b84bc62267ca2e60edaf69e8fccebe284c8199d352701697546a0fa6599d648a05ea427607e854c61ccc269b9c230fb25efa + languageName: node + linkType: hard + +"whatwg-url@npm:^5.0.0": + version: 5.0.0 + resolution: "whatwg-url@npm:5.0.0" + dependencies: + tr46: "npm:~0.0.3" + webidl-conversions: "npm:^3.0.0" + checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 + languageName: node + linkType: hard + "which@npm:^2.0.1": version: 2.0.2 resolution: "which@npm:2.0.2" @@ -4348,6 +6280,17 @@ __metadata: languageName: node linkType: hard +"wrap-ansi@npm:^6.0.1, wrap-ansi@npm:^6.2.0": + version: 6.2.0 + resolution: "wrap-ansi@npm:6.2.0" + dependencies: + ansi-styles: "npm:^4.0.0" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + checksum: 10c0/baad244e6e33335ea24e86e51868fe6823626e3a3c88d9a6674642afff1d34d9a154c917e74af8d845fd25d170c4ea9cf69a47133c3f3656e1252b3d462d9f6c + languageName: node + linkType: hard + "wrap-ansi@npm:^8.1.0": version: 8.1.0 resolution: "wrap-ansi@npm:8.1.0" @@ -4359,6 +6302,13 @@ __metadata: languageName: node linkType: hard +"wrappy@npm:1": + version: 1.0.2 + resolution: "wrappy@npm:1.0.2" + checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 + languageName: node + linkType: hard + "xtend@npm:^4.0.0": version: 4.0.2 resolution: "xtend@npm:4.0.2" @@ -4373,6 +6323,13 @@ __metadata: languageName: node linkType: hard +"yargs-parser@npm:21.1.1": + version: 21.1.1 + resolution: "yargs-parser@npm:21.1.1" + checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2 + languageName: node + linkType: hard + "ylru@npm:^1.2.0": version: 1.4.0 resolution: "ylru@npm:1.4.0" From c6fc59d8d8c63c40ebfdea80b76724bd4cb0bf35 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Tue, 16 Apr 2024 09:23:53 +0200 Subject: [PATCH 6/9] add fastify application --- apps/express/package.json | 2 +- apps/fastify/package.json | 21 + apps/fastify/src/app.ts | 94 + apps/fastify/tsconfig.json | 7 + apps/koa/package.json | 2 +- apps/nestjs/package.json | 4 +- package.json | 2 + utils/event-proxy-server/package.json | 6 +- .../fastify/test-error--event.json | 425 ++ .../fastify/test-error--transaction.json | 247 + .../fastify/test-error-manual--event.json | 428 ++ .../test-error-manual--transaction.json | 275 + ...t-local-variables-caught--transaction.json | 247 + .../test-local-variables-uncaught--event.json | 427 ++ ...local-variables-uncaught--transaction.json | 264 + .../fastify/test-param-error_1337--event.json | 425 ++ .../test-param-error_1337--transaction.json | 247 + .../test-param-success_1337--transaction.json | 247 + .../fastify/test-success--transaction.json | 247 + .../test-success-manual--transaction.json | 275 + yarn.lock | 6352 ----------------- 21 files changed, 3885 insertions(+), 6359 deletions(-) create mode 100644 apps/fastify/package.json create mode 100644 apps/fastify/src/app.ts create mode 100644 apps/fastify/tsconfig.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-error--event.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-error--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-error-manual--event.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-error-manual--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-local-variables-caught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--event.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-param-error_1337--event.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-param-error_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-param-success_1337--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-success--transaction.json create mode 100644 utils/event-proxy-server/payload-files/fastify/test-success-manual--transaction.json delete mode 100644 yarn.lock diff --git a/apps/express/package.json b/apps/express/package.json index 9fa3c4b..8b3ee9b 100644 --- a/apps/express/package.json +++ b/apps/express/package.json @@ -15,7 +15,7 @@ "extends": "../../package.json" }, "dependencies": { - "@sentry/node": "^8.0.0-alpha.9", + "@sentry/node": "^8.0.0-beta.1", "express": "^4.19.2" }, "devDependencies": { diff --git a/apps/fastify/package.json b/apps/fastify/package.json new file mode 100644 index 0000000..e9cba25 --- /dev/null +++ b/apps/fastify/package.json @@ -0,0 +1,21 @@ +{ + "name": "fastify-test-application", + "version": "1.0.0", + "directories": { + "lib": "lib" + }, + "scripts": { + "build": "tsc", + "start": "yarn build && node dist/app.js", + "clean": "npx rimraf node_modules,pnpm-lock.yaml" + }, + "license": "MIT", + "volta": { + "extends": "../../package.json" + }, + "dependencies": { + "@sentry/node": "8.0.0-beta.1", + "fastify": "4.26.2", + "koa": "2.15.3" + } +} diff --git a/apps/fastify/src/app.ts b/apps/fastify/src/app.ts new file mode 100644 index 0000000..95ecfe1 --- /dev/null +++ b/apps/fastify/src/app.ts @@ -0,0 +1,94 @@ +import * as Sentry from '@sentry/node'; + +Sentry.init({ + environment: 'qa', // dynamic sampling bias to keep transactions + dsn: process.env.E2E_TEST_DSN, + includeLocalVariables: true, + integrations: [], + tracesSampleRate: 1, + tunnel: 'http://localhost:3031/', // proxy server +}); + +import { fastify } from 'fastify'; + +declare global { + namespace globalThis { + var transactionIds: string[]; + } +} + +// Make sure fastify is imported after Sentry is initialized +const app = fastify(); + +// @ts-ignore +Sentry.setupFastifyErrorHandler(app); + +app.get('/test-success', function (_req, res) { + res.send({ version: 'v1' }); +}); + +app.get('/test-error', async function (req, res) { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + + res.send({ exceptionId }); +}); + +app.get<{ Params: { param: string } }>('/test-param-success/:param', function (req, res) { + res.send({ paramWas: req.params.param }); +}); + +app.get<{ Params: { param: string } }>('/test-param-error/:param', async function (req, res) { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + + res.send({ exceptionId, paramWas: req.params.param }); +}); + +app.get('/test-success-manual', async function (req, res) { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.startSpan({ name: 'child-span' }, () => {}); + }); + + await Sentry.flush(); + + res.send({ + transactionIds: global.transactionIds || [], + }); +}); + +app.get('/test-error-manual', async function (req, res) { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.startSpan({ name: 'child-span' }, () => { + Sentry.captureException(new Error('This is an error')); + }); + }); + + await Sentry.flush(2000); + + res.send({ + transactionIds: global.transactionIds || [], + }); +}); + +app.get('/test-local-variables-uncaught', function (req, res) { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + throw new Error(`Uncaught Local Variable Error - ${JSON.stringify({ randomVariableToRecord })}`); +}); + +app.get('/test-local-variables-caught', function (req, res) { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + + let exceptionId: string; + try { + throw new Error('Local Variable Error'); + } catch (e) { + exceptionId = Sentry.captureException(e); + } + + res.send({ exceptionId, randomVariableToRecord }); +}); + +app.listen({ port: 3030 }); diff --git a/apps/fastify/tsconfig.json b/apps/fastify/tsconfig.json new file mode 100644 index 0000000..899a860 --- /dev/null +++ b/apps/fastify/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "include": ["src/**/*.ts"], + "compilerOptions": { + "outDir": "dist" + } +} diff --git a/apps/koa/package.json b/apps/koa/package.json index aa76011..1408943 100644 --- a/apps/koa/package.json +++ b/apps/koa/package.json @@ -16,7 +16,7 @@ }, "dependencies": { "@koa/router": "12.0.1", - "@sentry/node": "8.0.0-alpha.9", + "@sentry/node": "8.0.0-beta.1", "koa": "2.15.3" }, "devDependencies": { diff --git a/apps/nestjs/package.json b/apps/nestjs/package.json index 40f347b..cab98bd 100644 --- a/apps/nestjs/package.json +++ b/apps/nestjs/package.json @@ -18,8 +18,8 @@ "@nestjs/common": "10.3.7", "@nestjs/core": "10.3.7", "@nestjs/platform-express": "10.3.7", - "@sentry/node": "8.0.0-alpha.9", - "@sentry/types": "8.0.0-alpha.9", + "@sentry/node": "8.0.0-beta.1", + "@sentry/types": "8.0.0-beta.1", "reflect-metadata": "0.2.2", "rxjs": "7.8.1" }, diff --git a/package.json b/package.json index 3354b85..24adab5 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "scripts": { "start:proxy-server": "yarn workspace event-proxy-server run start", "start:express": "yarn workspace express-test-application run start", + "start:fastify": "yarn workspace fastify-test-application run start", "start:nestjs": "yarn workspace nestjs-test-application run start", "start:koa": "yarn workspace koa-test-application run start", "fix:prettier": "prettier . --write", @@ -19,6 +20,7 @@ "workspaces": [ "utils/event-proxy-server", "apps/express", + "apps/fastify", "apps/nestjs", "apps/koa" ], diff --git a/utils/event-proxy-server/package.json b/utils/event-proxy-server/package.json index 42cdb72..ca68aff 100644 --- a/utils/event-proxy-server/package.json +++ b/utils/event-proxy-server/package.json @@ -1,6 +1,6 @@ { "private": true, - "version": "8.0.0-alpha.7", + "version": "8.0.0-beta.1", "name": "event-proxy-server", "author": "Sentry", "license": "MIT", @@ -16,8 +16,8 @@ "clean": "rimraf -g ./node_modules ./build" }, "dependencies": { - "@sentry/types": "8.0.0-alpha.9", - "@sentry/utils": "8.0.0-alpha.9" + "@sentry/types": "8.0.0-beta.1", + "@sentry/utils": "8.0.0-beta.1" }, "volta": { "extends": "../../package.json" diff --git a/utils/event-proxy-server/payload-files/fastify/test-error--event.json b/utils/event-proxy-server/payload-files/fastify/test-error--event.json new file mode 100644 index 0000000..658e418 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-error--event.json @@ -0,0 +1,425 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-fastify.build.src:instrumentation", + "function": "?", + "lineno": 194, + "colno": 17, + "in_app": false, + "pre_context": [ + " (0, instrumentation_1.safeExecuteInTheMiddle)(() => instrumentation.getConfig().requestHook(span, { request }), e => {", + " if (e) {", + " instrumentation._diag.error('request hook failed', e);", + " }", + " }, true);", + " }", + " return api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), () => {" + ], + "context_line": " done();", + "post_context": [ + " });", + " };", + " }", + "}", + "exports.FastifyInstrumentation = FastifyInstrumentation;", + "//# sourceMappingURL=instrumentation.js.map" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "fastify.lib:hooks", + "function": "next", + "lineno": 233, + "colno": 9, + "in_app": false, + "pre_context": [ + "", + "function hookRunnerGenerator (iterator) {", + " return function hookRunner (functions, request, reply, cb) {", + " let i = 0", + "", + " function next (err) {", + " if (err || i === functions.length) {" + ], + "context_line": " cb(err, request, reply)", + "post_context": [ + " return", + " }", + "", + " let result", + " try {", + " result = iterator(functions[i++], request, reply, next)", + " } catch (error) {" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "fastify.lib:handleRequest", + "function": "preHandlerCallback", + "lineno": 137, + "colno": 37, + "in_app": false, + "pre_context": [ + " reply.send(err)", + " return", + " }", + "", + " let result", + "", + " try {" + ], + "context_line": " result = request[kRouteContext].handler(request, reply)", + "post_context": [ + " } catch (err) {", + " reply[kReplyIsError] = true", + " reply.send(err)", + " return", + " }", + "", + " if (result !== undefined) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.?", + "lineno": 80, + "colno": 12, + "in_app": true, + "pre_context": [ + "var app = (0, fastify_1.fastify)();", + "// @ts-ignore", + "Sentry.setupFastifyErrorHandler(app);", + "app.get('/test-success', function (_req, res) {", + " res.send({ version: 'v1' });", + "});", + "app.get('/test-error', function (req, res) {" + ], + "context_line": " return __awaiter(this, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "__awaiter", + "lineno": 27, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 31, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.next", + "lineno": 37, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "step", + "lineno": 56, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "Object.defineProperty(exports, \"__esModule\", { value: true });", + "var Sentry = __importStar(require(\"@sentry/node\"));", + "Sentry.init({" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.?", + "lineno": 85, + "colno": 59, + "in_app": true, + "pre_context": [ + "});", + "app.get('/test-error', function (req, res) {", + " return __awaiter(this, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:", + " _a.sent();", + " res.send({ exceptionId: exceptionId });", + " return [2 /*return*/];", + " }", + " });" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "transaction": "GET /test-error", + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-error--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-error--transaction.json new file mode 100644 index 0000000..3b56a30 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-error--transaction.json @@ -0,0 +1,247 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-error", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-error-manual--event.json b/utils/event-proxy-server/payload-files/fastify/test-error-manual--event.json new file mode 100644 index 0000000..5561deb --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-error-manual--event.json @@ -0,0 +1,428 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "Object.startSpan", + "lineno": 854, + "colno": 17, + "in_app": false, + "pre_context": [ + "", + " const activeCtx = getContext(options.scope, options.forceTransaction);", + " const shouldSkipSpan = options.onlyIfParent && !api.trace.getSpan(activeCtx);", + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", + "" + ], + "context_line": " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + "post_context": [ + " _applySentryAttributesToSpan(span, options);", + "", + " return core.handleCallbackErrors(", + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@opentelemetry.sdk-trace-base.build.src:Tracer", + "function": "Tracer.startActiveSpan", + "lineno": 121, + "colno": 32, + "in_app": false, + "pre_context": [ + " opts = arg2;", + " ctx = arg3;", + " fn = arg4;", + " }", + " const parentContext = ctx !== null && ctx !== void 0 ? ctx : api.context.active();", + " const span = this.startSpan(name, opts, parentContext);", + " const contextWithSpanSet = api.trace.setSpan(parentContext, span);" + ], + "context_line": " return api.context.with(contextWithSpanSet, fn, undefined, span);", + "post_context": [ + " }", + " /** Returns the active {@link GeneralLimits}. */", + " getGeneralLimits() {", + " return this._generalLimits;", + " }", + " /** Returns the active {@link SpanLimits}. */", + " getSpanLimits() {" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, + "in_app": false, + "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) {" + ], + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "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", + " */" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, + "in_app": false, + "pre_context": [ + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", + "", + " setContextOnScope(newCurrentScope, ctx2);", + "" + ], + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", + "post_context": [ + " }", + " }", + "", + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 857, + "colno": 17, + "in_app": false, + "pre_context": [ + " const ctx = shouldSkipSpan ? core$1.suppressTracing(activeCtx) : activeCtx;", + "", + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", + "" + ], + "context_line": " return core.handleCallbackErrors(", + "post_context": [ + " () => callback(span),", + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " }," + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "@sentry.core.cjs.utils:handleCallbackErrors", + "function": "Object.handleCallbackErrors", + "lineno": 26, + "colno": 26, + "in_app": false, + "pre_context": [ + " fn,", + " onError,", + " // eslint-disable-next-line @typescript-eslint/no-empty-function", + " onFinally = () => {},", + ") {", + " let maybePromiseResult;", + " try {" + ], + "context_line": " maybePromiseResult = fn();", + "post_context": [ + " } catch (e) {", + " onError(e);", + " onFinally();", + " throw e;", + " }", + "", + " return maybeHandlePromiseRejection(maybePromiseResult, onError, onFinally);" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "?", + "lineno": 858, + "colno": 13, + "in_app": false, + "pre_context": [ + "", + " const spanContext = getSpanContext(options);", + "", + " return tracer.startActiveSpan(name, spanContext, ctx, span => {", + " _applySentryAttributesToSpan(span, options);", + "", + " return core.handleCallbackErrors(" + ], + "context_line": " () => callback(span),", + "post_context": [ + " () => {", + " // Only set the span status to ERROR when there wasn't any status set before, in order to avoid stomping useful span statuses", + " if (core.spanToJSON(span).status === undefined) {", + " span.setStatus({ code: api.SpanStatusCode.ERROR });", + " }", + " },", + " () => span.end()," + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "app", + "function": "?", + "lineno": 140, + "colno": 53, + "in_app": true, + "pre_context": [ + "app.get('/test-error-manual', function (req, res) {", + " return __awaiter(this, void 0, void 0, function () {", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " Sentry.startSpan({ name: 'test-span' }, function () {", + " Sentry.startSpan({ name: 'child-span' }, function () {" + ], + "context_line": " Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " });", + " });", + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:", + " _a.sent();", + " res.send({", + " transactionIds: global.transactionIds || []," + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "transaction": "GET /test-error-manual", + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error-manual" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-error-manual--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-error-manual--transaction.json new file mode 100644 index 0000000..e68d14b --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-error-manual--transaction.json @@ -0,0 +1,275 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-error-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-error-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-error-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-error-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-error-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-error-manual", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "child-span", + "parent_span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-error-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-error-manual" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-local-variables-caught--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-local-variables-caught--transaction.json new file mode 100644 index 0000000..b3a9384 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-local-variables-caught--transaction.json @@ -0,0 +1,247 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-caught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-caught", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-local-variables-caught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-caught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-local-variables-caught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-local-variables-caught", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-caught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-caught" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--event.json b/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--event.json new file mode 100644 index 0000000..fcaf153 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--event.json @@ -0,0 +1,427 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "Uncaught Local Variable Error - {\"randomVariableToRecord\":\"LOCAL_VARIABLE\"}", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "fastify.lib:hooks", + "function": "hookIterator", + "lineno": 405, + "colno": 10, + "in_app": false, + "pre_context": [ + " }", + "", + " next()", + "}", + "", + "function hookIterator (fn, request, reply, next) {", + " if (reply.sent === true) return undefined" + ], + "context_line": " return fn(request, reply, next)", + "post_context": [ + "}", + "", + "module.exports = {", + " Hooks,", + " buildHooks,", + " hookRunnerGenerator,", + " preParsingHookRunner," + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "@opentelemetry.instrumentation-fastify.build.src:instrumentation", + "function": "Object.preHandler", + "lineno": 193, + "colno": 38, + "in_app": false, + "pre_context": [ + " if (instrumentation.getConfig().requestHook) {", + " (0, instrumentation_1.safeExecuteInTheMiddle)(() => instrumentation.getConfig().requestHook(span, { request }), e => {", + " if (e) {", + " instrumentation._diag.error('request hook failed', e);", + " }", + " }, true);", + " }" + ], + "context_line": " return api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), () => {", + "post_context": [ + " done();", + " });", + " };", + " }", + "}", + "exports.FastifyInstrumentation = FastifyInstrumentation;", + "//# sourceMappingURL=instrumentation.js.map" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "@opentelemetry.api.build.src.api:context", + "function": "ContextAPI.with", + "lineno": 60, + "colno": 46, + "in_app": false, + "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) {" + ], + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "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", + " */" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "@sentry.opentelemetry.cjs:index", + "function": "SentryContextManager.with", + "lineno": "[[highNumber]]", + "colno": 24, + "in_app": false, + "pre_context": [ + " const ctx2 = ctx1", + " .deleteValue(SENTRY_FORK_ISOLATION_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_SCOPE_CONTEXT_KEY)", + " .deleteValue(SENTRY_FORK_SET_ISOLATION_SCOPE_CONTEXT_KEY);", + "", + " setContextOnScope(newCurrentScope, ctx2);", + "" + ], + "context_line": " return super.with(ctx2, fn, thisArg, ...args);", + "post_context": [ + " }", + " }", + "", + " return SentryContextManager ;", + "}", + "", + "/** If this attribute is true, it means that the parent is a remote span. */" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager", + "function": "SentryContextManager.with", + "lineno": 33, + "colno": 40, + "in_app": false, + "pre_context": [ + " }", + " active() {", + " var _a;", + " return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT;", + " }", + " with(context, fn, thisArg, ...args) {", + " const cb = thisArg == null ? fn : fn.bind(thisArg);" + ], + "context_line": " return this._asyncLocalStorage.run(context, cb, ...args);", + "post_context": [ + " }", + " enable() {", + " return this;", + " }", + " disable() {", + " this._asyncLocalStorage.disable();", + " return this;" + ] + }, + { + "filename": "[[FILENAME6]]", + "module": "node:async_hooks", + "function": "AsyncLocalStorage.run", + "lineno": 346, + "colno": 14, + "in_app": false + }, + { + "filename": "[[FILENAME2]]", + "module": "@opentelemetry.instrumentation-fastify.build.src:instrumentation", + "function": "?", + "lineno": 194, + "colno": 17, + "in_app": false, + "pre_context": [ + " (0, instrumentation_1.safeExecuteInTheMiddle)(() => instrumentation.getConfig().requestHook(span, { request }), e => {", + " if (e) {", + " instrumentation._diag.error('request hook failed', e);", + " }", + " }, true);", + " }", + " return api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), () => {" + ], + "context_line": " done();", + "post_context": [ + " });", + " };", + " }", + "}", + "exports.FastifyInstrumentation = FastifyInstrumentation;", + "//# sourceMappingURL=instrumentation.js.map" + ] + }, + { + "filename": "[[FILENAME1]]", + "module": "fastify.lib:hooks", + "function": "next", + "lineno": 233, + "colno": 9, + "in_app": false, + "pre_context": [ + "", + "function hookRunnerGenerator (iterator) {", + " return function hookRunner (functions, request, reply, cb) {", + " let i = 0", + "", + " function next (err) {", + " if (err || i === functions.length) {" + ], + "context_line": " cb(err, request, reply)", + "post_context": [ + " return", + " }", + "", + " let result", + " try {", + " result = iterator(functions[i++], request, reply, next)", + " } catch (error) {" + ] + }, + { + "filename": "[[FILENAME7]]", + "module": "fastify.lib:handleRequest", + "function": "preHandlerCallback", + "lineno": 137, + "colno": 37, + "in_app": false, + "pre_context": [ + " reply.send(err)", + " return", + " }", + "", + " let result", + "", + " try {" + ], + "context_line": " result = request[kRouteContext].handler(request, reply)", + "post_context": [ + " } catch (err) {", + " reply[kReplyIsError] = true", + " reply.send(err)", + " return", + " }", + "", + " if (result !== undefined) {" + ] + }, + { + "filename": "[[FILENAME8]]", + "module": "app", + "function": "Object.?", + "lineno": 156, + "colno": 11, + "in_app": true, + "pre_context": [ + " return [2 /*return*/];", + " }", + " });", + " });", + "});", + "app.get('/test-local-variables-uncaught', function (req, res) {", + " var randomVariableToRecord = 'LOCAL_VARIABLE';" + ], + "context_line": " throw new Error(\"Uncaught Local Variable Error - \".concat(JSON.stringify({ randomVariableToRecord: randomVariableToRecord })));", + "post_context": [ + "});", + "app.get('/test-local-variables-caught', function (req, res) {", + " var randomVariableToRecord = 'LOCAL_VARIABLE';", + " var exceptionId;", + " try {", + " throw new Error('Local Variable Error');", + " }" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "transaction": "GET /test-local-variables-uncaught", + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-uncaught" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--transaction.json new file mode 100644 index 0000000..93bff8c --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-local-variables-uncaught--transaction.json @@ -0,0 +1,264 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-local-variables-uncaught", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-local-variables-uncaught", + "otel.kind": "SERVER", + "http.response.status_code": 500, + "http.url": "http://localhost:3030/test-local-variables-uncaught", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-local-variables-uncaught", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 500, + "http.status_text": "INTERNAL SERVER ERROR", + "http.route": "/test-local-variables-uncaught" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "unknown_error" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-local-variables-uncaught", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onError", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-local-variables-uncaught", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-local-variables-uncaught" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--event.json b/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--event.json new file mode 100644 index 0000000..7d9c228 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--event.json @@ -0,0 +1,425 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]" + }, + { + "type": "event" + }, + { + "exception": { + "values": [ + { + "type": "Error", + "value": "This is an error", + "stacktrace": { + "frames": [ + { + "filename": "[[FILENAME1]]", + "module": "@opentelemetry.instrumentation-fastify.build.src:instrumentation", + "function": "?", + "lineno": 194, + "colno": 17, + "in_app": false, + "pre_context": [ + " (0, instrumentation_1.safeExecuteInTheMiddle)(() => instrumentation.getConfig().requestHook(span, { request }), e => {", + " if (e) {", + " instrumentation._diag.error('request hook failed', e);", + " }", + " }, true);", + " }", + " return api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), () => {" + ], + "context_line": " done();", + "post_context": [ + " });", + " };", + " }", + "}", + "exports.FastifyInstrumentation = FastifyInstrumentation;", + "//# sourceMappingURL=instrumentation.js.map" + ] + }, + { + "filename": "[[FILENAME2]]", + "module": "fastify.lib:hooks", + "function": "next", + "lineno": 233, + "colno": 9, + "in_app": false, + "pre_context": [ + "", + "function hookRunnerGenerator (iterator) {", + " return function hookRunner (functions, request, reply, cb) {", + " let i = 0", + "", + " function next (err) {", + " if (err || i === functions.length) {" + ], + "context_line": " cb(err, request, reply)", + "post_context": [ + " return", + " }", + "", + " let result", + " try {", + " result = iterator(functions[i++], request, reply, next)", + " } catch (error) {" + ] + }, + { + "filename": "[[FILENAME3]]", + "module": "fastify.lib:handleRequest", + "function": "preHandlerCallback", + "lineno": 137, + "colno": 37, + "in_app": false, + "pre_context": [ + " reply.send(err)", + " return", + " }", + "", + " let result", + "", + " try {" + ], + "context_line": " result = request[kRouteContext].handler(request, reply)", + "post_context": [ + " } catch (err) {", + " reply[kReplyIsError] = true", + " reply.send(err)", + " return", + " }", + "", + " if (result !== undefined) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.?", + "lineno": 99, + "colno": 12, + "in_app": true, + "pre_context": [ + " });", + " });", + "});", + "app.get('/test-param-success/:param', function (req, res) {", + " res.send({ paramWas: req.params.param });", + "});", + "app.get('/test-param-error/:param', function (req, res) {" + ], + "context_line": " return __awaiter(this, void 0, void 0, function () {", + "post_context": [ + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:", + " exceptionId = Sentry.captureException(new Error('This is an error'));", + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "__awaiter", + "lineno": 27, + "colno": 12, + "in_app": true, + "pre_context": [ + " var result = {};", + " if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);", + " __setModuleDefault(result, mod);", + " return result;", + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }" + ], + "context_line": " return new (P || (P = Promise))(function (resolve, reject) {", + "post_context": [ + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {" + ] + }, + { + "filename": "[[FILENAME5]]", + "module": "", + "function": "new Promise", + "in_app": false + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "?", + "lineno": 31, + "colno": 71, + "in_app": true, + "pre_context": [ + "};", + "var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {", + " function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }", + " return new (P || (P = Promise))(function (resolve, reject) {", + " function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }", + " function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }", + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }" + ], + "context_line": " step((generator = generator.apply(thisArg, _arguments || [])).next());", + "post_context": [ + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}", + " function verb(n) { return function (v) { return step([n, v]); }; }", + " function step(op) {" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.next", + "lineno": 37, + "colno": 53, + "in_app": true, + "pre_context": [ + " function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }", + " step((generator = generator.apply(thisArg, _arguments || [])).next());", + " });", + "};", + "var __generator = (this && this.__generator) || function (thisArg, body) {", + " var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;", + " return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { re {snip}" + ], + "context_line": " function verb(n) { return function (v) { return step([n, v]); }; }", + "post_context": [ + " function step(op) {", + " if (f) throw new TypeError(\"Generator is already executing.\");", + " while (g && (g = 0, op[0] && (_ = 0)), _) try {", + " if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.ca {snip}", + " if (y = 0, t) op = [op[0] & 2, t.value];", + " switch (op[0]) {", + " case 0: case 1: t = op; break;" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "step", + "lineno": 56, + "colno": 23, + "in_app": true, + "pre_context": [ + " if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }", + " if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }", + " if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }", + " if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }", + " if (t[2]) _.ops.pop();", + " _.trys.pop(); continue;", + " }" + ], + "context_line": " op = body.call(thisArg, _);", + "post_context": [ + " } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }", + " if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };", + " }", + "};", + "Object.defineProperty(exports, \"__esModule\", { value: true });", + "var Sentry = __importStar(require(\"@sentry/node\"));", + "Sentry.init({" + ] + }, + { + "filename": "[[FILENAME4]]", + "module": "app", + "function": "Object.?", + "lineno": 104, + "colno": 59, + "in_app": true, + "pre_context": [ + "});", + "app.get('/test-param-error/:param', function (req, res) {", + " return __awaiter(this, void 0, void 0, function () {", + " var exceptionId;", + " return __generator(this, function (_a) {", + " switch (_a.label) {", + " case 0:" + ], + "context_line": " exceptionId = Sentry.captureException(new Error('This is an error'));", + "post_context": [ + " return [4 /*yield*/, Sentry.flush(2000)];", + " case 1:", + " _a.sent();", + " res.send({ exceptionId: exceptionId, paramWas: req.params.param });", + " return [2 /*return*/];", + " }", + " });" + ] + } + ] + }, + "mechanism": { + "type": "generic", + "handled": true + } + } + ] + }, + "event_id": "[[ID1]]", + "platform": "node", + "contexts": { + "trace": { + "trace_id": "[[ID2]]", + "span_id": "[[ID3]]", + "parent_span_id": "[[ID4]]" + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "transaction": "GET /test-param-error/:param", + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-param-error/1337" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--transaction.json new file mode 100644 index 0000000..b823ac2 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-param-error_1337--transaction.json @@ -0,0 +1,247 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-error/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-error/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-error/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-error/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-error/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-param-error/:param", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-error/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-param-error/1337" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-param-success_1337--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-param-success_1337--transaction.json new file mode 100644 index 0000000..79a8325 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-param-success_1337--transaction.json @@ -0,0 +1,247 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-param-success/:param", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-param-success/1337", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-param-success/1337", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-param-success/1337", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-param-success/:param" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-param-success/:param", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-param-success/:param", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-param-success/1337" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-success--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-success--transaction.json new file mode 100644 index 0000000..8bf65e3 --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-success--transaction.json @@ -0,0 +1,247 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-success", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-success" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/fastify/test-success-manual--transaction.json b/utils/event-proxy-server/payload-files/fastify/test-success-manual--transaction.json new file mode 100644 index 0000000..948919b --- /dev/null +++ b/utils/event-proxy-server/payload-files/fastify/test-success-manual--transaction.json @@ -0,0 +1,275 @@ +[ + { + "event_id": "[[ID1]]", + "sent_at": "[[ISODateString]]", + "sdk": { + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1" + }, + "dsn": "[[dsn]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]", + "sample_rate": "1", + "transaction": "GET /test-success-manual", + "sampled": "true" + } + }, + { + "type": "transaction" + }, + { + "contexts": { + "trace": { + "span_id": "[[ID3]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.source": "route", + "sentry.sample_rate": 1, + "sentry.op": "http.server", + "sentry.origin": "auto.http.otel.http", + "url": "http://localhost:3030/test-success-manual", + "otel.kind": "SERVER", + "http.response.status_code": 200, + "http.url": "http://localhost:3030/test-success-manual", + "http.host": "localhost:3030", + "net.host.name": "localhost", + "http.method": "GET", + "http.scheme": "http", + "http.target": "/test-success-manual", + "http.user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0", + "http.flavor": "1.1", + "net.transport": "ip_tcp", + "net.host.ip": "127.0.0.1", + "net.host.port": "[[highNumber]]", + "net.peer.ip": "127.0.0.1", + "net.peer.port": "[[highNumber]]", + "http.status_code": 200, + "http.status_text": "OK", + "http.route": "/test-success-manual" + }, + "origin": "auto.http.otel.http", + "op": "http.server", + "status": "ok" + }, + "otel": { + "resource": { + "service.name": "node", + "telemetry.sdk.language": "nodejs", + "telemetry.sdk.name": "opentelemetry", + "telemetry.sdk.version": "1.21.0", + "service.namespace": "sentry", + "service.version": "8.0.0-beta.1" + } + }, + "runtime": { + "name": "node", + "version": "v20.12.1" + }, + "app": { + "app_start_time": "[[ISODateString]]", + "app_memory": "[[highNumber]]" + }, + "os": { + "kernel_version": "23.2.0", + "name": "macOS", + "version": "14.2", + "build": "23C64" + }, + "device": { + "boot_time": "[[ISODateString]]", + "arch": "arm64", + "memory_size": "[[highNumber]]", + "free_memory": "[[highNumber]]", + "processor_count": 10, + "cpu_description": "Apple M1 Pro", + "processor_frequency": "[[highNumber]]" + }, + "culture": { + "locale": "en-US", + "timezone": "Europe/Vienna" + }, + "cloud_resource": {} + }, + "spans": [ + { + "span_id": "[[ID4]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "fastify.type": "middleware", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "hook.name": "onRequest", + "otel.kind": "INTERNAL" + }, + "description": "middleware - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID5]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "auto.http.otel.fastify", + "plugin.name": "fastify -> sentry-fastify-error-handler", + "fastify.type": "request_handler", + "http.route": "/test-success-manual", + "otel.kind": "INTERNAL" + }, + "description": "request handler - fastify -> sentry-fastify-error-handler", + "parent_span_id": "[[ID3]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "auto.http.otel.fastify" + }, + { + "span_id": "[[ID6]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "test-span", + "parent_span_id": "[[ID5]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + }, + { + "span_id": "[[ID7]]", + "trace_id": "[[ID2]]", + "data": { + "sentry.origin": "manual", + "otel.kind": "INTERNAL" + }, + "description": "child-span", + "parent_span_id": "[[ID6]]", + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "status": "ok", + "origin": "manual" + } + ], + "start_timestamp": "[[timestamp]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /test-success-manual", + "type": "transaction", + "transaction_info": { + "source": "route" + }, + "platform": "node", + "server_name": "D9M3PY4LQ7.local", + "event_id": "[[ID1]]", + "environment": "qa", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "Http", + "NodeFetch", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa" + ], + "name": "sentry.javascript.node", + "version": "8.0.0-beta.1", + "packages": [ + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ] + }, + "request": { + "method": "GET", + "cookies": {}, + "headers": { + "host": "localhost:3030", + "user-agent": "[[user-agent]]", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", + "accept-language": "en-US,en;q=0.5", + "accept-encoding": "gzip, deflate, br", + "connection": "keep-alive", + "upgrade-insecure-requests": "1", + "sec-fetch-dest": "document", + "sec-fetch-mode": "navigate", + "sec-fetch-site": "none", + "sec-fetch-user": "?1", + "pragma": "no-cache", + "cache-control": "no-cache" + }, + "url": "http://localhost:3030/test-success-manual" + }, + "modules": { + "semver": "7.6.0", + "yallist": "4.0.0", + "shimmer": "1.2.1", + "require-in-the-middle": "7.3.0", + "resolve": "1.22.8", + "is-core-module": "2.13.1", + "hasown": "2.0.2", + "function-bind": "1.1.2", + "debug": "4.3.4", + "supports-color": "5.5.0", + "module-details-from-path": "1.0.3", + "import-in-the-middle": "1.7.3", + "fastify": "4.26.2", + "avvio": "8.3.0", + "fastq": "1.17.1", + "reusify": "1.0.4", + "process-warning": "3.0.0", + "abstract-logging": "2.0.1", + "pino": "8.20.0", + "pino-std-serializers": "6.2.2", + "fast-redact": "3.5.0", + "quick-format-unescaped": "4.0.4", + "sonic-boom": "3.8.1", + "atomic-sleep": "1.0.0", + "on-exit-leak-free": "2.1.2", + "thread-stream": "2.4.1", + "safe-stable-stringify": "2.4.3", + "rfdc": "1.3.1", + "fast-json-stringify": "5.14.1", + "ajv": "8.12.0", + "fast-deep-equal": "3.1.3", + "uri-js": "4.4.1", + "fast-uri": "2.3.0", + "proxy-addr": "2.0.7", + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1", + "toad-cache": "3.7.0", + "fast-content-type-parse": "1.1.0", + "secure-json-parse": "2.7.0", + "json-schema-ref-resolver": "1.0.1", + "find-my-way": "8.1.0", + "fast-querystring": "1.1.2", + "fast-decode-uri-component": "1.0.1", + "safe-regex2": "2.0.0", + "ret": "0.2.2", + "opentelemetry-instrumentation-fetch-node": "1.2.0" + } + } +] \ No newline at end of file diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 2a9c74b..0000000 --- a/yarn.lock +++ /dev/null @@ -1,6352 +0,0 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - -__metadata: - version: 8 - cacheKey: 10c0 - -"@aashutoshrathi/word-wrap@npm:^1.2.3": - version: 1.2.6 - resolution: "@aashutoshrathi/word-wrap@npm:1.2.6" - checksum: 10c0/53c2b231a61a46792b39a0d43bc4f4f776bb4542aa57ee04930676802e5501282c2fc8aac14e4cd1f1120ff8b52616b6ff5ab539ad30aa2277d726444b71619f - languageName: node - linkType: hard - -"@angular-devkit/core@npm:17.1.2": - version: 17.1.2 - resolution: "@angular-devkit/core@npm:17.1.2" - dependencies: - ajv: "npm:8.12.0" - ajv-formats: "npm:2.1.1" - jsonc-parser: "npm:3.2.0" - picomatch: "npm:3.0.1" - rxjs: "npm:7.8.1" - source-map: "npm:0.7.4" - peerDependencies: - chokidar: ^3.5.2 - peerDependenciesMeta: - chokidar: - optional: true - checksum: 10c0/2e589c681126238a6d1ff2c256d4b18c64da86303ebae1545bc8f9923b9d282752fc03972c5c2cf8b48bdd3452c301124ee7acc7ab98a8f9d703618b1aeb44d2 - languageName: node - linkType: hard - -"@angular-devkit/schematics-cli@npm:17.1.2": - version: 17.1.2 - resolution: "@angular-devkit/schematics-cli@npm:17.1.2" - dependencies: - "@angular-devkit/core": "npm:17.1.2" - "@angular-devkit/schematics": "npm:17.1.2" - ansi-colors: "npm:4.1.3" - inquirer: "npm:9.2.12" - symbol-observable: "npm:4.0.0" - yargs-parser: "npm:21.1.1" - bin: - schematics: bin/schematics.js - checksum: 10c0/cff34b26eeb8be2c14d2c57fd48c0421e2e967db981d4b3d0766b87947e61a79761e99b12b13bdaff899343513572a74fe02fbd78947537a736270fa1c497b8a - languageName: node - linkType: hard - -"@angular-devkit/schematics@npm:17.1.2": - version: 17.1.2 - resolution: "@angular-devkit/schematics@npm:17.1.2" - dependencies: - "@angular-devkit/core": "npm:17.1.2" - jsonc-parser: "npm:3.2.0" - magic-string: "npm:0.30.5" - ora: "npm:5.4.1" - rxjs: "npm:7.8.1" - checksum: 10c0/30db52fe227f84798598e9880ad6a7afaa5763b352168f3801efc87dea1c16d55426ccd6563b305415e5db0006c2fa00041df70986a873a24b0a3172aa1f84e2 - languageName: node - linkType: hard - -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.16.7": - version: 7.24.2 - resolution: "@babel/code-frame@npm:7.24.2" - dependencies: - "@babel/highlight": "npm:^7.24.2" - picocolors: "npm:^1.0.0" - checksum: 10c0/d1d4cba89475ab6aab7a88242e1fd73b15ecb9f30c109b69752956434d10a26a52cbd37727c4eca104b6d45227bd1dfce39a6a6f4a14c9b2f07f871e968cf406 - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.22.20": - version: 7.22.20 - resolution: "@babel/helper-validator-identifier@npm:7.22.20" - checksum: 10c0/dcad63db345fb110e032de46c3688384b0008a42a4845180ce7cd62b1a9c0507a1bed727c4d1060ed1a03ae57b4d918570259f81724aaac1a5b776056f37504e - languageName: node - linkType: hard - -"@babel/highlight@npm:^7.24.2": - version: 7.24.2 - resolution: "@babel/highlight@npm:7.24.2" - dependencies: - "@babel/helper-validator-identifier": "npm:^7.22.20" - chalk: "npm:^2.4.2" - js-tokens: "npm:^4.0.0" - picocolors: "npm:^1.0.0" - checksum: 10c0/98ce00321daedeed33a4ed9362dc089a70375ff1b3b91228b9f05e6591d387a81a8cba68886e207861b8871efa0bc997ceabdd9c90f6cce3ee1b2f7f941b42db - languageName: node - linkType: hard - -"@colors/colors@npm:1.5.0": - version: 1.5.0 - resolution: "@colors/colors@npm:1.5.0" - checksum: 10c0/eb42729851adca56d19a08e48d5a1e95efd2a32c55ae0323de8119052be0510d4b7a1611f2abcbf28c044a6c11e6b7d38f99fccdad7429300c37a8ea5fb95b44 - languageName: node - linkType: hard - -"@colors/colors@npm:1.6.0, @colors/colors@npm:^1.6.0": - version: 1.6.0 - resolution: "@colors/colors@npm:1.6.0" - checksum: 10c0/9328a0778a5b0db243af54455b79a69e3fb21122d6c15ef9e9fcc94881d8d17352d8b2b2590f9bdd46fac5c2d6c1636dcfc14358a20c70e22daf89e1a759b629 - languageName: node - linkType: hard - -"@cspotcode/source-map-support@npm:^0.8.0": - version: 0.8.1 - resolution: "@cspotcode/source-map-support@npm:0.8.1" - dependencies: - "@jridgewell/trace-mapping": "npm:0.3.9" - checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6 - languageName: node - linkType: hard - -"@dabh/diagnostics@npm:^2.0.2": - version: 2.0.3 - resolution: "@dabh/diagnostics@npm:2.0.3" - dependencies: - colorspace: "npm:1.1.x" - enabled: "npm:2.0.x" - kuler: "npm:^2.0.0" - checksum: 10c0/a5133df8492802465ed01f2f0a5784585241a1030c362d54a602ed1839816d6c93d71dde05cf2ddb4fd0796238c19774406bd62fa2564b637907b495f52425fe - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.4.0 - resolution: "@eslint-community/eslint-utils@npm:4.4.0" - dependencies: - eslint-visitor-keys: "npm:^3.3.0" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10c0/7e559c4ce59cd3a06b1b5a517b593912e680a7f981ae7affab0d01d709e99cd5647019be8fafa38c350305bc32f1f7d42c7073edde2ab536c745e365f37b607e - languageName: node - linkType: hard - -"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.6.1": - version: 4.10.0 - resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: 10c0/c5f60ef1f1ea7649fa7af0e80a5a79f64b55a8a8fa5086de4727eb4c86c652aedee407a9c143b8995d2c0b2d75c1222bec9ba5d73dbfc1f314550554f0979ef4 - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^3.0.2": - version: 3.0.2 - resolution: "@eslint/eslintrc@npm:3.0.2" - dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^10.0.1" - globals: "npm:^14.0.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.0" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10c0/d8c92f06bdf8e2be9fcc0eeac4a9351745174adfcc72571ef3d179101cb55e19f15f6385c2a4f4945a3ba9245802d3371208e2e1e4f00f6bcf6b8711656af85a - languageName: node - linkType: hard - -"@eslint/js@npm:9.0.0, @eslint/js@npm:^9.0.0": - version: 9.0.0 - resolution: "@eslint/js@npm:9.0.0" - checksum: 10c0/ec3242a60a2525d2785d96d1e95b8060235f47f3b953aa81626968591ef8c1eb4f7f8b3647db2c97fdfa524eace949a5695be50521f64b8dcc4ed3b493ee409e - languageName: node - linkType: hard - -"@hapi/b64@npm:5.x.x": - version: 5.0.0 - resolution: "@hapi/b64@npm:5.0.0" - dependencies: - "@hapi/hoek": "npm:9.x.x" - checksum: 10c0/01389a2de70a3d48252f71786ee6b9487d571f999a46ea80b3481f84af66974e551e751286c85612d570ef714b35c07f9b71f765a05816584062f2726ad69ad8 - languageName: node - linkType: hard - -"@hapi/boom@npm:9.x.x, @hapi/boom@npm:^9.0.0": - version: 9.1.4 - resolution: "@hapi/boom@npm:9.1.4" - dependencies: - "@hapi/hoek": "npm:9.x.x" - checksum: 10c0/49bb99443e7bdbbdc87ee8de97cd64351e173b57d7c59061c69972d2de77fb98f2f440c1be42b37e1ac04f57c60fbb79f8fd3e9e5695360add560c37e2d584db - languageName: node - linkType: hard - -"@hapi/bourne@npm:2.x.x": - version: 2.1.0 - resolution: "@hapi/bourne@npm:2.1.0" - checksum: 10c0/0dddacffeb1874d60dd9309f2d8f7103d971c21c4bfb0cfadb406f1dcc0bc00c0b5eed09fbd45a27fe179b6c9f99015500c2197213914d6f93efa584b9313ffd - languageName: node - linkType: hard - -"@hapi/cryptiles@npm:5.x.x": - version: 5.1.0 - resolution: "@hapi/cryptiles@npm:5.1.0" - dependencies: - "@hapi/boom": "npm:9.x.x" - checksum: 10c0/844b337d94febcd0b40990fcdbcb12bf06f19afc3c3a555a1f73d586250c5227f3a3368ac9a445f53d6bdef7acf0267376087280dfc6917387012d61b307f8b7 - languageName: node - linkType: hard - -"@hapi/hoek@npm:9.x.x, @hapi/hoek@npm:^9.0.0, @hapi/hoek@npm:^9.3.0": - version: 9.3.0 - resolution: "@hapi/hoek@npm:9.3.0" - checksum: 10c0/a096063805051fb8bba4c947e293c664b05a32b47e13bc654c0dd43813a1cec993bdd8f29ceb838020299e1d0f89f68dc0d62a603c13c9cc8541963f0beca055 - languageName: node - linkType: hard - -"@hapi/iron@npm:^6.0.0": - version: 6.0.0 - resolution: "@hapi/iron@npm:6.0.0" - dependencies: - "@hapi/b64": "npm:5.x.x" - "@hapi/boom": "npm:9.x.x" - "@hapi/bourne": "npm:2.x.x" - "@hapi/cryptiles": "npm:5.x.x" - "@hapi/hoek": "npm:9.x.x" - checksum: 10c0/81678335c546165440b7214d5275fa58313ff81b4e928ef7862dfe14b2f03269db64a7c8d251e277683d007c8413a921db82c9d46c394159afa625d919c9d3cb - languageName: node - linkType: hard - -"@hapi/podium@npm:^4.1.3": - version: 4.1.3 - resolution: "@hapi/podium@npm:4.1.3" - dependencies: - "@hapi/hoek": "npm:9.x.x" - "@hapi/teamwork": "npm:5.x.x" - "@hapi/validate": "npm:1.x.x" - checksum: 10c0/483b999707d5214291ef2c51d5313dfe5d48968411369fc52258f07e230836c070fdd5402a6d85ed667de9e72806bb45c052e17b57dff07543b40b0b7e72bed0 - languageName: node - linkType: hard - -"@hapi/teamwork@npm:5.x.x": - version: 5.1.1 - resolution: "@hapi/teamwork@npm:5.1.1" - checksum: 10c0/8174a4693a00cb82474d75b0296b345b7e1c020dc440a5dc21f4f5a091306068553faab70dc6cf642ac36f49e20ee1e1aed6a81f99ffca5b1a42633d0fa437bb - languageName: node - linkType: hard - -"@hapi/topo@npm:^5.0.0, @hapi/topo@npm:^5.1.0": - version: 5.1.0 - resolution: "@hapi/topo@npm:5.1.0" - dependencies: - "@hapi/hoek": "npm:^9.0.0" - checksum: 10c0/b16b06d9357947149e032bdf10151eb71aea8057c79c4046bf32393cb89d0d0f7ca501c40c0f7534a5ceca078de0700d2257ac855c15e59fe4e00bba2f25c86f - languageName: node - linkType: hard - -"@hapi/validate@npm:1.x.x": - version: 1.1.3 - resolution: "@hapi/validate@npm:1.1.3" - dependencies: - "@hapi/hoek": "npm:^9.0.0" - "@hapi/topo": "npm:^5.0.0" - checksum: 10c0/dff9f31a5cae3356ae98cef99d5c5cf9c056b452a22755945ed27df987f5a690f6372fcd7f55c319c8c546906b5943fd6783d5620a0f0369d243a2b47f0fbee7 - languageName: node - linkType: hard - -"@humanwhocodes/config-array@npm:^0.12.3": - version: 0.12.3 - resolution: "@humanwhocodes/config-array@npm:0.12.3" - dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.3" - debug: "npm:^4.3.1" - minimatch: "npm:^3.0.5" - checksum: 10c0/7a97f1414c63f353557ff8ad2987774cbcd3ed87525909cc845b629518dd74dc92cacf8ac8dc4161549a87441f8c64802ac530ce879ddcbf2551a53ba73d03d1 - languageName: node - linkType: hard - -"@humanwhocodes/module-importer@npm:^1.0.1": - version: 1.0.1 - resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 - languageName: node - linkType: hard - -"@humanwhocodes/object-schema@npm:^2.0.3": - version: 2.0.3 - resolution: "@humanwhocodes/object-schema@npm:2.0.3" - checksum: 10c0/80520eabbfc2d32fe195a93557cef50dfe8c8905de447f022675aaf66abc33ae54098f5ea78548d925aa671cd4ab7c7daa5ad704fe42358c9b5e7db60f80696c - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: "npm:^5.1.2" - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: "npm:^7.0.1" - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: "npm:^8.1.0" - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e - languageName: node - linkType: hard - -"@jridgewell/gen-mapping@npm:^0.3.5": - version: 0.3.5 - resolution: "@jridgewell/gen-mapping@npm:0.3.5" - dependencies: - "@jridgewell/set-array": "npm:^1.2.1" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" - "@jridgewell/trace-mapping": "npm:^0.3.24" - checksum: 10c0/1be4fd4a6b0f41337c4f5fdf4afc3bd19e39c3691924817108b82ffcb9c9e609c273f936932b9fba4b3a298ce2eb06d9bff4eb1cc3bd81c4f4ee1b4917e25feb - languageName: node - linkType: hard - -"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e - languageName: node - linkType: hard - -"@jridgewell/set-array@npm:^1.2.1": - version: 1.2.1 - resolution: "@jridgewell/set-array@npm:1.2.1" - checksum: 10c0/2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4 - languageName: node - linkType: hard - -"@jridgewell/source-map@npm:^0.3.3": - version: 0.3.6 - resolution: "@jridgewell/source-map@npm:0.3.6" - dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.5" - "@jridgewell/trace-mapping": "npm:^0.3.25" - checksum: 10c0/6a4ecc713ed246ff8e5bdcc1ef7c49aaa93f7463d948ba5054dda18b02dcc6a055e2828c577bcceee058f302ce1fc95595713d44f5c45e43d459f88d267f2f04 - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": - version: 1.4.15 - resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" - checksum: 10c0/0c6b5ae663087558039052a626d2d7ed5208da36cfd707dcc5cea4a07cfc918248403dcb5989a8f7afaf245ce0573b7cc6fd94c4a30453bd10e44d9363940ba5 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:0.3.9": - version: 0.3.9 - resolution: "@jridgewell/trace-mapping@npm:0.3.9" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.0.3" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" - checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": - version: 0.3.25 - resolution: "@jridgewell/trace-mapping@npm:0.3.25" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.1.0" - "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 10c0/3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4 - languageName: node - linkType: hard - -"@koa/router@npm:12.0.1": - version: 12.0.1 - resolution: "@koa/router@npm:12.0.1" - dependencies: - debug: "npm:^4.3.4" - http-errors: "npm:^2.0.0" - koa-compose: "npm:^4.1.0" - methods: "npm:^1.1.2" - path-to-regexp: "npm:^6.2.1" - checksum: 10c0/978a668a88dad8cba38afe0df537b95f6d49bdaa60af5f479240fde3a87a7046cf8c068a58c355442335794db5cb583b88ca07a4b65f217b44925a7ce99ccc1d - languageName: node - linkType: hard - -"@ljharb/through@npm:^2.3.11": - version: 2.3.13 - resolution: "@ljharb/through@npm:2.3.13" - dependencies: - call-bind: "npm:^1.0.7" - checksum: 10c0/fb60b2fb2c674a674d8ebdb8972ccf52f8a62a9c1f5a2ac42557bc0273231c65d642aa2d7627cbb300766a25ae4642acd0f95fba2f8a1ff891086f0cb15807c3 - languageName: node - linkType: hard - -"@lukeed/csprng@npm:^1.0.0": - version: 1.1.0 - resolution: "@lukeed/csprng@npm:1.1.0" - checksum: 10c0/5d6dcf478af732972083ab2889c294b57f1028fa13c2c240d7a4aaa079c2c75df7ef0dcbdda5419147fc6704b4adf96b2de92f1a9a72ac21c6350c4014fffe6c - languageName: node - linkType: hard - -"@nestjs/cli@npm:10.3.2": - version: 10.3.2 - resolution: "@nestjs/cli@npm:10.3.2" - dependencies: - "@angular-devkit/core": "npm:17.1.2" - "@angular-devkit/schematics": "npm:17.1.2" - "@angular-devkit/schematics-cli": "npm:17.1.2" - "@nestjs/schematics": "npm:^10.0.1" - chalk: "npm:4.1.2" - chokidar: "npm:3.6.0" - cli-table3: "npm:0.6.3" - commander: "npm:4.1.1" - fork-ts-checker-webpack-plugin: "npm:9.0.2" - glob: "npm:10.3.10" - inquirer: "npm:8.2.6" - node-emoji: "npm:1.11.0" - ora: "npm:5.4.1" - rimraf: "npm:4.4.1" - shelljs: "npm:0.8.5" - source-map-support: "npm:0.5.21" - tree-kill: "npm:1.2.2" - tsconfig-paths: "npm:4.2.0" - tsconfig-paths-webpack-plugin: "npm:4.1.0" - typescript: "npm:5.3.3" - webpack: "npm:5.90.1" - webpack-node-externals: "npm:3.0.0" - peerDependencies: - "@swc/cli": ^0.1.62 || ^0.3.0 - "@swc/core": ^1.3.62 - peerDependenciesMeta: - "@swc/cli": - optional: true - "@swc/core": - optional: true - bin: - nest: bin/nest.js - checksum: 10c0/45d0ebf5024b9a2e68fdd700c766b36681d359f7b14ad7b2d98a49f7c97d6724b0f5fceb75378eb45d0accbe4605ead89247ce1b9e97467300a3b1d7b0fe008a - languageName: node - linkType: hard - -"@nestjs/common@npm:10.3.7": - version: 10.3.7 - resolution: "@nestjs/common@npm:10.3.7" - dependencies: - iterare: "npm:1.2.1" - tslib: "npm:2.6.2" - uid: "npm:2.0.2" - peerDependencies: - class-transformer: "*" - class-validator: "*" - reflect-metadata: ^0.1.12 || ^0.2.0 - rxjs: ^7.1.0 - peerDependenciesMeta: - class-transformer: - optional: true - class-validator: - optional: true - checksum: 10c0/d25fba11d553f32a1c80e16da85ff05739eba5678d752feac159ba4ff6c4129d254bd289c95d64106e5c13d78e716a1f3673e6db7897bbcd569fbef49d4f9ec0 - languageName: node - linkType: hard - -"@nestjs/core@npm:10.3.7": - version: 10.3.7 - resolution: "@nestjs/core@npm:10.3.7" - dependencies: - "@nuxtjs/opencollective": "npm:0.3.2" - fast-safe-stringify: "npm:2.1.1" - iterare: "npm:1.2.1" - path-to-regexp: "npm:3.2.0" - tslib: "npm:2.6.2" - uid: "npm:2.0.2" - peerDependencies: - "@nestjs/common": ^10.0.0 - "@nestjs/microservices": ^10.0.0 - "@nestjs/platform-express": ^10.0.0 - "@nestjs/websockets": ^10.0.0 - reflect-metadata: ^0.1.12 || ^0.2.0 - rxjs: ^7.1.0 - peerDependenciesMeta: - "@nestjs/microservices": - optional: true - "@nestjs/platform-express": - optional: true - "@nestjs/websockets": - optional: true - checksum: 10c0/961cf1b0f157cd8f9aaab3bfe4d2247f41e104a5b1c669764146061915d8206a261cf1833deb5bf37d35d97c74a5288f0de092a5ce247dab34b7ad39e7910d03 - languageName: node - linkType: hard - -"@nestjs/platform-express@npm:10.3.7": - version: 10.3.7 - resolution: "@nestjs/platform-express@npm:10.3.7" - dependencies: - body-parser: "npm:1.20.2" - cors: "npm:2.8.5" - express: "npm:4.19.2" - multer: "npm:1.4.4-lts.1" - tslib: "npm:2.6.2" - peerDependencies: - "@nestjs/common": ^10.0.0 - "@nestjs/core": ^10.0.0 - checksum: 10c0/281ce6149bb9c7288dda3eabe6d3732d6874c9c47ad923a74022659ec765c1c76d1c05323d6f570faf6f976014b7bc8dabd328e4e86e0db9e4f0f1752c6df7d1 - languageName: node - linkType: hard - -"@nestjs/schematics@npm:10.1.1, @nestjs/schematics@npm:^10.0.1": - version: 10.1.1 - resolution: "@nestjs/schematics@npm:10.1.1" - dependencies: - "@angular-devkit/core": "npm:17.1.2" - "@angular-devkit/schematics": "npm:17.1.2" - comment-json: "npm:4.2.3" - jsonc-parser: "npm:3.2.1" - pluralize: "npm:8.0.0" - peerDependencies: - typescript: ">=4.8.2" - checksum: 10c0/fa264dc1a4366876b47badbc895ee234ccc6de112484aa5ba45a0a03e67f429f73036d4e9108bb21ad1c30fe30652cbe9cc773c00b3a092c5f2a1499895241ca - languageName: node - linkType: hard - -"@nodelib/fs.scandir@npm:2.1.5": - version: 2.1.5 - resolution: "@nodelib/fs.scandir@npm:2.1.5" - dependencies: - "@nodelib/fs.stat": "npm:2.0.5" - run-parallel: "npm:^1.1.9" - checksum: 10c0/732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb - languageName: node - linkType: hard - -"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": - version: 2.0.5 - resolution: "@nodelib/fs.stat@npm:2.0.5" - checksum: 10c0/88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": - version: 1.2.8 - resolution: "@nodelib/fs.walk@npm:1.2.8" - dependencies: - "@nodelib/fs.scandir": "npm:2.1.5" - fastq: "npm:^1.6.0" - checksum: 10c0/db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1 - languageName: node - linkType: hard - -"@npmcli/agent@npm:^2.0.0": - version: 2.2.2 - resolution: "@npmcli/agent@npm:2.2.2" - dependencies: - agent-base: "npm:^7.1.0" - http-proxy-agent: "npm:^7.0.0" - https-proxy-agent: "npm:^7.0.1" - lru-cache: "npm:^10.0.1" - socks-proxy-agent: "npm:^8.0.3" - checksum: 10c0/325e0db7b287d4154ecd164c0815c08007abfb07653cc57bceded17bb7fd240998a3cbdbe87d700e30bef494885eccc725ab73b668020811d56623d145b524ae - languageName: node - linkType: hard - -"@npmcli/fs@npm:^3.1.0": - version: 3.1.0 - resolution: "@npmcli/fs@npm:3.1.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10c0/162b4a0b8705cd6f5c2470b851d1dc6cd228c86d2170e1769d738c1fbb69a87160901411c3c035331e9e99db72f1f1099a8b734bf1637cc32b9a5be1660e4e1e - languageName: node - linkType: hard - -"@nuxtjs/opencollective@npm:0.3.2": - version: 0.3.2 - resolution: "@nuxtjs/opencollective@npm:0.3.2" - dependencies: - chalk: "npm:^4.1.0" - consola: "npm:^2.15.0" - node-fetch: "npm:^2.6.1" - bin: - opencollective: bin/opencollective.js - checksum: 10c0/540268687af3289ff107585484d42201b404cdbb98b3a512487c12a6b180a8f0e1df0d701df47d3d9e0d5c0f6eb3252d80535562aedca9edf52cf7fd17ae4601 - languageName: node - linkType: hard - -"@opentelemetry/api@npm:1.7.0": - version: 1.7.0 - resolution: "@opentelemetry/api@npm:1.7.0" - checksum: 10c0/b5468115d1cec45dd2b86b39210fdc03620a93b9f07c3d20b14081f75e2f7c9b37ceceeb60d5f35c6d4f9819ae07eee0b4874e53e7362376db21db1e00f483f8 - languageName: node - linkType: hard - -"@opentelemetry/api@npm:^1.6.0": - version: 1.8.0 - resolution: "@opentelemetry/api@npm:1.8.0" - checksum: 10c0/66d5504bfbf9c19a14ea549f5fca975a73a5e1e8a1e40a6dc2d662893c942b9ba66c009262816dee2b9ffd0267acd707ec692eba20db11a09d4ee114c00dc161 - languageName: node - linkType: hard - -"@opentelemetry/context-async-hooks@npm:1.21.0": - version: 1.21.0 - resolution: "@opentelemetry/context-async-hooks@npm:1.21.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/568bfdb76fa423a22f05a78b2a722dec64698c93a2f7e67ebc707c6f0c152b975ece9c93d472dfe58b1a479e144e76c7d6c419579db8310f5e23f3cebbe1346a - languageName: node - linkType: hard - -"@opentelemetry/core@npm:1.20.0": - version: 1.20.0 - resolution: "@opentelemetry/core@npm:1.20.0" - dependencies: - "@opentelemetry/semantic-conventions": "npm:1.20.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/70091bd7756abfce0cdd1fbf0fc2e03c4d84660a115effce99784b7f6a628857bdf9b89aa3dff3b745d82ea3004ac548fa094954395fc4b7613bd60a34d46099 - languageName: node - linkType: hard - -"@opentelemetry/core@npm:1.21.0": - version: 1.21.0 - resolution: "@opentelemetry/core@npm:1.21.0" - dependencies: - "@opentelemetry/semantic-conventions": "npm:1.21.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/e6f1adcd224944f725ccfc4a337cb20405cb2081fa0a2a66a47a9044b248f47318f43c6d140e8ebbd4082d8657894e9d1a8e1a10db112ca8896c6bc4494c346c - languageName: node - linkType: hard - -"@opentelemetry/core@npm:1.23.0, @opentelemetry/core@npm:^1.1.0, @opentelemetry/core@npm:^1.8.0": - version: 1.23.0 - resolution: "@opentelemetry/core@npm:1.23.0" - dependencies: - "@opentelemetry/semantic-conventions": "npm:1.23.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.9.0" - checksum: 10c0/b68442034315c182fd5e6c1bcca7b249a4995dc219c6935718fb143d24b13cee5e7884c6750b9f55ae8f4477b7edb9b3140c6663112485b49f2a9bc5a243f5f2 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-express@npm:0.35.0": - version: 0.35.0 - resolution: "@opentelemetry/instrumentation-express@npm:0.35.0" - dependencies: - "@opentelemetry/core": "npm:^1.8.0" - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/361b1c7ea191979645c31224e3e9a20e4d2aab26101bd70816b76ecc6ec34858f97bacf4c5c03d912f2a8cd246792e7f4883415ad977f97d24f8e1210f2198d4 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-fastify@npm:0.33.0": - version: 0.33.0 - resolution: "@opentelemetry/instrumentation-fastify@npm:0.33.0" - dependencies: - "@opentelemetry/core": "npm:^1.8.0" - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/2b03e742e43826ffcd67cb7653018d6f966517e740ad6d282a2ae8da38265c21aca01e89f26a3a50b1911162380288adb984958a70625f10a4182d5adccbbeff - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-graphql@npm:0.37.0": - version: 0.37.0 - resolution: "@opentelemetry/instrumentation-graphql@npm:0.37.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/8501e09d5aaac4558b183c76e423439a2ed743355e251b6d1de306efdc9366b971bc849c1440e77c94b0224ef75348d97ccb1499b1b7098efe2c314294eb0e84 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-hapi@npm:0.34.0": - version: 0.34.0 - resolution: "@opentelemetry/instrumentation-hapi@npm:0.34.0" - dependencies: - "@opentelemetry/core": "npm:^1.8.0" - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - "@types/hapi__hapi": "npm:20.0.13" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/1c789e0cc4e6baa99b1c2044d5e9022d22ca22778280dbd5169f7cfa08a069ddb999c1544f04c2580ebfe06fd17dd0c5bdaa9b77d6851759abb0d7a4ecdc15b5 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-http@npm:0.48.0": - version: 0.48.0 - resolution: "@opentelemetry/instrumentation-http@npm:0.48.0" - dependencies: - "@opentelemetry/core": "npm:1.21.0" - "@opentelemetry/instrumentation": "npm:0.48.0" - "@opentelemetry/semantic-conventions": "npm:1.21.0" - semver: "npm:^7.5.2" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/c02e3b4168d709c453c14e29d11e37e9c29b1791c5266948f0ead77777c1e343c6450e9851558790596a311bf4bf068b685a0314713d3fda083994c5463fae28 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-koa@npm:0.37.0": - version: 0.37.0 - resolution: "@opentelemetry/instrumentation-koa@npm:0.37.0" - dependencies: - "@opentelemetry/core": "npm:^1.8.0" - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - "@types/koa": "npm:2.14.0" - "@types/koa__router": "npm:12.0.3" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/bb7bc4a5841fc1172597828d05ee44803510f28907e4b1f01ccf81801d407e15b8f6e08c4276425e8f961ad127c82bfe9f6ae21324dfc5a9b2302dd08428e617 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-mongodb@npm:0.39.0": - version: 0.39.0 - resolution: "@opentelemetry/instrumentation-mongodb@npm:0.39.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/sdk-metrics": "npm:^1.9.1" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/7dc7fe5fb9c18cdbdd882ccc83ecf9587e4822cfa5b730bd8b437029cc8df6d3e4e4838e3e2c4c04d568b88a053006328ed1055bf874d5ee6b5eefeabcd15386 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-mongoose@npm:0.35.0": - version: 0.35.0 - resolution: "@opentelemetry/instrumentation-mongoose@npm:0.35.0" - dependencies: - "@opentelemetry/core": "npm:^1.8.0" - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/dac272772644525af92f6aebc9618f858b13a0f89ddffd4144621adfb6e8fd5309b69612abeb94523bc7f369a94d59710174975325cbbdc68372517230cca1c8 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-mysql2@npm:0.35.0": - version: 0.35.0 - resolution: "@opentelemetry/instrumentation-mysql2@npm:0.35.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - "@opentelemetry/sql-common": "npm:^0.40.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/c83d031df6db68efa76450b8ca13f1f76fd106bab7b4dcd0932f44966c8018cd7afa13994bd9ad1a2334d9b8622f6d58448d45212ea3b8cffe711d971b64ca70 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-mysql@npm:0.35.0": - version: 0.35.0 - resolution: "@opentelemetry/instrumentation-mysql@npm:0.35.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - "@types/mysql": "npm:2.15.22" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/24f92429f71df9e56a7875aa57a4e694260bb202c9110983b432190be7f6dc211a987e4ba3e7d572d4e53fa1f52a227d6e76c70767139a0c34304aec06540c72 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-nestjs-core@npm:0.34.0": - version: 0.34.0 - resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.34.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/f6929e44b6cb85488f35fc059a2b689b7406c402ba83226a21a25e9942d8e11eae208de259cd080f7f459a0de590220d248d2dc9dc7f957f2521c5923d815497 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation-pg@npm:0.38.0": - version: 0.38.0 - resolution: "@opentelemetry/instrumentation-pg@npm:0.38.0" - dependencies: - "@opentelemetry/instrumentation": "npm:^0.48.0" - "@opentelemetry/semantic-conventions": "npm:^1.0.0" - "@opentelemetry/sql-common": "npm:^0.40.0" - "@types/pg": "npm:8.6.1" - "@types/pg-pool": "npm:2.0.4" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/bac92340d2ca5b24b83a79d10d0f1822a4960cba996f510bb132bce8f8df3e3e2e02aaa1eadff7ceffa41d4a4cf1b64f13f6531b60afbd1e13ff091f4b38001e - languageName: node - linkType: hard - -"@opentelemetry/instrumentation@npm:0.47.0": - version: 0.47.0 - resolution: "@opentelemetry/instrumentation@npm:0.47.0" - dependencies: - "@types/shimmer": "npm:^1.0.2" - import-in-the-middle: "npm:^1.7.2" - require-in-the-middle: "npm:^7.1.1" - semver: "npm:^7.5.2" - shimmer: "npm:^1.2.1" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/cc4c0ed030ec60c58d805d96c509e5ce1d33ae40b64622824319ed24d9e7c9e9a7c0864360c08107126ab29c026848a30b29a91295b9007aa21d0a67dc200a8e - languageName: node - linkType: hard - -"@opentelemetry/instrumentation@npm:0.48.0, @opentelemetry/instrumentation@npm:^0.48.0": - version: 0.48.0 - resolution: "@opentelemetry/instrumentation@npm:0.48.0" - dependencies: - "@types/shimmer": "npm:^1.0.2" - import-in-the-middle: "npm:1.7.1" - require-in-the-middle: "npm:^7.1.1" - semver: "npm:^7.5.2" - shimmer: "npm:^1.2.1" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/627d4246c1a6d62d0b1b96d967c62284bf98cefae76f5c5b07f827473cec89030121d343c0c0631f251e8d52cd01822bc4af704970d9c0988be6b4d0c226c8b4 - languageName: node - linkType: hard - -"@opentelemetry/instrumentation@npm:^0.43.0": - version: 0.43.0 - resolution: "@opentelemetry/instrumentation@npm:0.43.0" - dependencies: - "@types/shimmer": "npm:^1.0.2" - import-in-the-middle: "npm:1.4.2" - require-in-the-middle: "npm:^7.1.1" - semver: "npm:^7.5.2" - shimmer: "npm:^1.2.1" - peerDependencies: - "@opentelemetry/api": ^1.3.0 - checksum: 10c0/78682576ec5094eaa20e5e6766f93329d495cb4a58cbc56a95752ff15bfc58a511ffe0981b596eb7b893014441f4c748028448b35ff5e37f82b1e1917f9610c7 - languageName: node - linkType: hard - -"@opentelemetry/resources@npm:1.20.0": - version: 1.20.0 - resolution: "@opentelemetry/resources@npm:1.20.0" - dependencies: - "@opentelemetry/core": "npm:1.20.0" - "@opentelemetry/semantic-conventions": "npm:1.20.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/4a8a030e2e627a32c1f32e02dd0093d93d2202ea646035f84eae71d9ec9417d3d0d82d110cbf5b79bec2ea918f97dcd62b4f09ce22936436f34bba42b7a7576a - languageName: node - linkType: hard - -"@opentelemetry/resources@npm:1.21.0": - version: 1.21.0 - resolution: "@opentelemetry/resources@npm:1.21.0" - dependencies: - "@opentelemetry/core": "npm:1.21.0" - "@opentelemetry/semantic-conventions": "npm:1.21.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/0ac61b835e20d3323e1e6a5c74cbb64a9200e165724d6d1449f01bd18a0c5af3da854dacdc729cdb4ed00cb740639c76d6cd7c638ad6efffc23f9da0de36406a - languageName: node - linkType: hard - -"@opentelemetry/resources@npm:1.23.0": - version: 1.23.0 - resolution: "@opentelemetry/resources@npm:1.23.0" - dependencies: - "@opentelemetry/core": "npm:1.23.0" - "@opentelemetry/semantic-conventions": "npm:1.23.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.9.0" - checksum: 10c0/b1abc023f2f32ed6f328f27821ae70b7a936964a19d29246072e11a9abdf588158ba65a1e9f1177933868906d53d836c837304bb98d37231a01e31bc77b38476 - languageName: node - linkType: hard - -"@opentelemetry/sdk-metrics@npm:^1.9.1": - version: 1.23.0 - resolution: "@opentelemetry/sdk-metrics@npm:1.23.0" - dependencies: - "@opentelemetry/core": "npm:1.23.0" - "@opentelemetry/resources": "npm:1.23.0" - lodash.merge: "npm:^4.6.2" - peerDependencies: - "@opentelemetry/api": ">=1.3.0 <1.9.0" - checksum: 10c0/dd70dc372750c23cda642a4a52f24c69633f21186360104ce7857001edcfc02a30336ad673c7ec99b61eca0664b0f5ec9a7a01a4a1992347982cc0f33aaf6e60 - languageName: node - linkType: hard - -"@opentelemetry/sdk-trace-base@npm:1.20.0": - version: 1.20.0 - resolution: "@opentelemetry/sdk-trace-base@npm:1.20.0" - dependencies: - "@opentelemetry/core": "npm:1.20.0" - "@opentelemetry/resources": "npm:1.20.0" - "@opentelemetry/semantic-conventions": "npm:1.20.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/d92dea3bb9eba044fd20549200c4ecf66b935d7568be1eaa00c51ddfb9b66505baaaacead2a0ab6624def79e1b2a6e22ce487e3c9a91c7ec9d951f42b6d6e171 - languageName: node - linkType: hard - -"@opentelemetry/sdk-trace-base@npm:1.21.0": - version: 1.21.0 - resolution: "@opentelemetry/sdk-trace-base@npm:1.21.0" - dependencies: - "@opentelemetry/core": "npm:1.21.0" - "@opentelemetry/resources": "npm:1.21.0" - "@opentelemetry/semantic-conventions": "npm:1.21.0" - peerDependencies: - "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 10c0/0d68bfb614c45713185d20ad6aa766f38060fc5716d4fd196bb3195386f8bf22e3a9a56d3ec2a2c6753f9edb0d0b0e780f0d271a2d50ca866440ae624b4268ab - languageName: node - linkType: hard - -"@opentelemetry/semantic-conventions@npm:1.20.0": - version: 1.20.0 - resolution: "@opentelemetry/semantic-conventions@npm:1.20.0" - checksum: 10c0/71299d2040b1d3f665128107fda6bde818244e7a49932d7e4ac451c088fd4116ace91d119376df30c15eb1a61da76ab50edade2c90214ba7db9284d4c3e43197 - languageName: node - linkType: hard - -"@opentelemetry/semantic-conventions@npm:1.21.0": - version: 1.21.0 - resolution: "@opentelemetry/semantic-conventions@npm:1.21.0" - checksum: 10c0/ba1eabdbe5cdc04cbb7ce28f2df91fc95000e14861eb93937cfc7768d29c7e57692eb4fb2645f6ba87ae046acc1d1e27e4e6415e46e03015d54a6fdaf8e9635b - languageName: node - linkType: hard - -"@opentelemetry/semantic-conventions@npm:1.23.0, @opentelemetry/semantic-conventions@npm:^1.0.0, @opentelemetry/semantic-conventions@npm:^1.17.0": - version: 1.23.0 - resolution: "@opentelemetry/semantic-conventions@npm:1.23.0" - checksum: 10c0/2712f3874a45607bc7024e0d1a01c91a7e4671e7b925e2fcc79227f350c16c59a29ba36d8ab5f0842fe003ff464d24ab576033b35390316886bb120477f96ca6 - languageName: node - linkType: hard - -"@opentelemetry/sql-common@npm:^0.40.0": - version: 0.40.0 - resolution: "@opentelemetry/sql-common@npm:0.40.0" - dependencies: - "@opentelemetry/core": "npm:^1.1.0" - peerDependencies: - "@opentelemetry/api": ^1.1.0 - checksum: 10c0/c82454ca9ce69564f8a19e9d47bfb6b7fa96720dc178c04df56de0c7666fba535f62c638b2c3f03832f61872adf258178c7f9787823d64e0483ad780a25daeff - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd - languageName: node - linkType: hard - -"@prisma/instrumentation@npm:5.9.0": - version: 5.9.0 - resolution: "@prisma/instrumentation@npm:5.9.0" - dependencies: - "@opentelemetry/api": "npm:1.7.0" - "@opentelemetry/instrumentation": "npm:0.47.0" - "@opentelemetry/sdk-trace-base": "npm:1.20.0" - checksum: 10c0/4f1bf75da102e37e4a2a62859bfa08a4192698f8d56a9fa181cccf63c5868e1de81cf44c8a57366ff51e4d17474746198ec106c4e71928dbc961123ebfcd2f93 - languageName: node - linkType: hard - -"@sentry/core@npm:8.0.0-alpha.9": - version: 8.0.0-alpha.9 - resolution: "@sentry/core@npm:8.0.0-alpha.9" - dependencies: - "@sentry/types": "npm:8.0.0-alpha.9" - "@sentry/utils": "npm:8.0.0-alpha.9" - checksum: 10c0/1e465ef8cfeec57edd7ca04ac57091544934677140d3a5a1f65b4e7f516414c49909336b9a297bc95c0e3728067992b61306fd8fc61dd66e0c088fb09770164c - languageName: node - linkType: hard - -"@sentry/node@npm:8.0.0-alpha.9, @sentry/node@npm:^8.0.0-alpha.9": - version: 8.0.0-alpha.9 - resolution: "@sentry/node@npm:8.0.0-alpha.9" - dependencies: - "@opentelemetry/api": "npm:1.7.0" - "@opentelemetry/context-async-hooks": "npm:1.21.0" - "@opentelemetry/core": "npm:1.21.0" - "@opentelemetry/instrumentation": "npm:0.48.0" - "@opentelemetry/instrumentation-express": "npm:0.35.0" - "@opentelemetry/instrumentation-fastify": "npm:0.33.0" - "@opentelemetry/instrumentation-graphql": "npm:0.37.0" - "@opentelemetry/instrumentation-hapi": "npm:0.34.0" - "@opentelemetry/instrumentation-http": "npm:0.48.0" - "@opentelemetry/instrumentation-koa": "npm:0.37.0" - "@opentelemetry/instrumentation-mongodb": "npm:0.39.0" - "@opentelemetry/instrumentation-mongoose": "npm:0.35.0" - "@opentelemetry/instrumentation-mysql": "npm:0.35.0" - "@opentelemetry/instrumentation-mysql2": "npm:0.35.0" - "@opentelemetry/instrumentation-nestjs-core": "npm:0.34.0" - "@opentelemetry/instrumentation-pg": "npm:0.38.0" - "@opentelemetry/resources": "npm:1.21.0" - "@opentelemetry/sdk-trace-base": "npm:1.21.0" - "@opentelemetry/semantic-conventions": "npm:1.21.0" - "@prisma/instrumentation": "npm:5.9.0" - "@sentry/core": "npm:8.0.0-alpha.9" - "@sentry/opentelemetry": "npm:8.0.0-alpha.9" - "@sentry/types": "npm:8.0.0-alpha.9" - "@sentry/utils": "npm:8.0.0-alpha.9" - opentelemetry-instrumentation-fetch-node: "npm:1.1.2" - dependenciesMeta: - opentelemetry-instrumentation-fetch-node: - optional: true - checksum: 10c0/79dc8a1c33ab08e22b6a6d8afa3550f8a31ac7d99527e32fba27454472560d353185179c60868b3c894df8d8b83c4791b0df0f4e8095c758a8756a8cc708dc54 - languageName: node - linkType: hard - -"@sentry/opentelemetry@npm:8.0.0-alpha.9": - version: 8.0.0-alpha.9 - resolution: "@sentry/opentelemetry@npm:8.0.0-alpha.9" - dependencies: - "@sentry/core": "npm:8.0.0-alpha.9" - "@sentry/types": "npm:8.0.0-alpha.9" - "@sentry/utils": "npm:8.0.0-alpha.9" - peerDependencies: - "@opentelemetry/api": ^1.0.0 - "@opentelemetry/core": ^1.0.0 - "@opentelemetry/sdk-trace-base": ^1.0.0 - "@opentelemetry/semantic-conventions": ^1.0.0 - checksum: 10c0/0e74d3a49f5dd0c20606aa94597eaf7c999d47e2d600e404a053f4dc8e417ee2966483893e8791e53a929edd7499bd435276eb2490d65115d16da8de33fcb1e2 - languageName: node - linkType: hard - -"@sentry/types@npm:8.0.0-alpha.9": - version: 8.0.0-alpha.9 - resolution: "@sentry/types@npm:8.0.0-alpha.9" - checksum: 10c0/01ce71189b811168b75da85759e855ad2400be9fec548fe2592ffe69d1f3b3a3868ba47ef85ea4bbc6e635973a22443a89a459020b17db8c17a2965b945d157a - languageName: node - linkType: hard - -"@sentry/utils@npm:8.0.0-alpha.9": - version: 8.0.0-alpha.9 - resolution: "@sentry/utils@npm:8.0.0-alpha.9" - dependencies: - "@sentry/types": "npm:8.0.0-alpha.9" - checksum: 10c0/703ca39d3ba8fe6658ca8090ca21ce9baa54ce694fe2913d455cde02991f472705e6a4256eb394d81145d35f28e4b80124bcd90c3dbb80916711ec1e77300f74 - languageName: node - linkType: hard - -"@sideway/address@npm:^4.1.5": - version: 4.1.5 - resolution: "@sideway/address@npm:4.1.5" - dependencies: - "@hapi/hoek": "npm:^9.0.0" - checksum: 10c0/638eb6f7e7dba209053dd6c8da74d7cc995e2b791b97644d0303a7dd3119263bcb7225a4f6804d4db2bc4f96e5a9d262975a014f58eae4d1753c27cbc96ef959 - languageName: node - linkType: hard - -"@sideway/formula@npm:^3.0.1": - version: 3.0.1 - resolution: "@sideway/formula@npm:3.0.1" - checksum: 10c0/3fe81fa9662efc076bf41612b060eb9b02e846ea4bea5bd114f1662b7f1541e9dedcf98aff0d24400bcb92f113964a50e0290b86e284edbdf6346fa9b7e2bf2c - languageName: node - linkType: hard - -"@sideway/pinpoint@npm:^2.0.0": - version: 2.0.0 - resolution: "@sideway/pinpoint@npm:2.0.0" - checksum: 10c0/d2ca75dacaf69b8fc0bb8916a204e01def3105ee44d8be16c355e5f58189eb94039e15ce831f3d544f229889ccfa35562a0ce2516179f3a7ee1bbe0b71e55b36 - languageName: node - linkType: hard - -"@tsconfig/node10@npm:^1.0.7": - version: 1.0.11 - resolution: "@tsconfig/node10@npm:1.0.11" - checksum: 10c0/28a0710e5d039e0de484bdf85fee883bfd3f6a8980601f4d44066b0a6bcd821d31c4e231d1117731c4e24268bd4cf2a788a6787c12fc7f8d11014c07d582783c - languageName: node - linkType: hard - -"@tsconfig/node12@npm:^1.0.7": - version: 1.0.11 - resolution: "@tsconfig/node12@npm:1.0.11" - checksum: 10c0/dddca2b553e2bee1308a056705103fc8304e42bb2d2cbd797b84403a223b25c78f2c683ec3e24a095e82cd435387c877239bffcb15a590ba817cd3f6b9a99fd9 - languageName: node - linkType: hard - -"@tsconfig/node14@npm:^1.0.0": - version: 1.0.3 - resolution: "@tsconfig/node14@npm:1.0.3" - checksum: 10c0/67c1316d065fdaa32525bc9449ff82c197c4c19092b9663b23213c8cbbf8d88b6ed6a17898e0cbc2711950fbfaf40388938c1c748a2ee89f7234fc9e7fe2bf44 - languageName: node - linkType: hard - -"@tsconfig/node16@npm:^1.0.2": - version: 1.0.4 - resolution: "@tsconfig/node16@npm:1.0.4" - checksum: 10c0/05f8f2734e266fb1839eb1d57290df1664fe2aa3b0fdd685a9035806daa635f7519bf6d5d9b33f6e69dd545b8c46bd6e2b5c79acb2b1f146e885f7f11a42a5bb - languageName: node - linkType: hard - -"@types/accepts@npm:*": - version: 1.3.7 - resolution: "@types/accepts@npm:1.3.7" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/7b21efc78b98ed57063ac31588f871f11501c080cd1201ca3743cf02ee0aee74bdb5a634183bc0987dc8dc582b26316789fd203650319ccc89a66cf88311d64f - languageName: node - linkType: hard - -"@types/body-parser@npm:*": - version: 1.19.5 - resolution: "@types/body-parser@npm:1.19.5" - dependencies: - "@types/connect": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/aebeb200f25e8818d8cf39cd0209026750d77c9b85381cdd8deeb50913e4d18a1ebe4b74ca9b0b4d21952511eeaba5e9fbbf739b52731a2061e206ec60d568df - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c - languageName: node - linkType: hard - -"@types/content-disposition@npm:*": - version: 0.5.8 - resolution: "@types/content-disposition@npm:0.5.8" - checksum: 10c0/f10baeab2ec44579012c1170763851687e740ea30531a80cd7a403475730ce7d7ead4f88927cea6970cc2d5e74fa7af38cdf4f039c5f115fba1bb98ec0014977 - languageName: node - linkType: hard - -"@types/cookies@npm:*": - version: 0.9.0 - resolution: "@types/cookies@npm:0.9.0" - dependencies: - "@types/connect": "npm:*" - "@types/express": "npm:*" - "@types/keygrip": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/ce95c1968532af674185efd4092cbdec8d5d3bda72f729e512bf37fa77877f466ad4bd5f00fca299f94c6e3d2a3875744ae5a705ffc5113183f5e46b76d8846a - languageName: node - linkType: hard - -"@types/eslint-scope@npm:^3.7.3": - version: 3.7.7 - resolution: "@types/eslint-scope@npm:3.7.7" - dependencies: - "@types/eslint": "npm:*" - "@types/estree": "npm:*" - checksum: 10c0/a0ecbdf2f03912679440550817ff77ef39a30fa8bfdacaf6372b88b1f931828aec392f52283240f0d648cf3055c5ddc564544a626bcf245f3d09fcb099ebe3cc - languageName: node - linkType: hard - -"@types/eslint@npm:*": - version: 8.56.9 - resolution: "@types/eslint@npm:8.56.9" - dependencies: - "@types/estree": "npm:*" - "@types/json-schema": "npm:*" - checksum: 10c0/a800e3d10bd12fc837773101c35a65c189528e306bc41eca9f30176f5ede4d35944a0c0e16b668971db3521df2f2bef62ab2471740eadc72aeb39dbaba6c9101 - languageName: node - linkType: hard - -"@types/estree@npm:*, @types/estree@npm:^1.0.5": - version: 1.0.5 - resolution: "@types/estree@npm:1.0.5" - checksum: 10c0/b3b0e334288ddb407c7b3357ca67dbee75ee22db242ca7c56fe27db4e1a31989cb8af48a84dd401deb787fe10cc6b2ab1ee82dc4783be87ededbe3d53c79c70d - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:^4.17.33": - version: 4.19.0 - resolution: "@types/express-serve-static-core@npm:4.19.0" - dependencies: - "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10c0/38a13dfbb38d18526276e68dae1097eb0ebef296e76bff2a9bf6831c052c2f87797e910c87bd3f0dd1a1b4136241c9d7c841779a00b22576d12aa9b483a63349 - languageName: node - linkType: hard - -"@types/express@npm:*, @types/express@npm:^4, @types/express@npm:^4.17.17": - version: 4.17.21 - resolution: "@types/express@npm:4.17.21" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^4.17.33" - "@types/qs": "npm:*" - "@types/serve-static": "npm:*" - checksum: 10c0/12e562c4571da50c7d239e117e688dc434db1bac8be55613294762f84fd77fbd0658ccd553c7d3ab02408f385bc93980992369dd30e2ecd2c68c358e6af8fabf - languageName: node - linkType: hard - -"@types/hapi__catbox@npm:*": - version: 10.2.6 - resolution: "@types/hapi__catbox@npm:10.2.6" - checksum: 10c0/782d5c0a12655f785eab0e2c83bd415435cc825277165f7fec44229edce092b97f5c7bb73f00296a246a550bf074ca679b359b5b07a4669d0c6331a22e5be174 - languageName: node - linkType: hard - -"@types/hapi__hapi@npm:20.0.13": - version: 20.0.13 - resolution: "@types/hapi__hapi@npm:20.0.13" - dependencies: - "@hapi/boom": "npm:^9.0.0" - "@hapi/iron": "npm:^6.0.0" - "@hapi/podium": "npm:^4.1.3" - "@types/hapi__catbox": "npm:*" - "@types/hapi__mimos": "npm:*" - "@types/hapi__shot": "npm:*" - "@types/node": "npm:*" - joi: "npm:^17.3.0" - checksum: 10c0/7e993ead7c6b7d3d3d8ab0abeb39b4fa29f3608a29e585d5ccef16823b1f09959e94bbe8a72c4722e95016167da91c57ae2f18c4b13e2b9fc472a67f087e3bc2 - languageName: node - linkType: hard - -"@types/hapi__mimos@npm:*": - version: 4.1.4 - resolution: "@types/hapi__mimos@npm:4.1.4" - dependencies: - "@types/mime-db": "npm:*" - checksum: 10c0/c3e960a375bd02bb067dc041b7b64fcbc6b3520ca16229ab72c63e9b886b3c1b1b03bc08d2b01e9368ea177dae5e9a00d5cd3c8f37fd872a49fad2307805db22 - languageName: node - linkType: hard - -"@types/hapi__shot@npm:*": - version: 4.1.6 - resolution: "@types/hapi__shot@npm:4.1.6" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/ffd39b424e593a54f044df11bc2216e2cc5c09a104e30be5ce8b8969693c713536b19bf6f472749ed12c2cf742aa11aa4184c48c5bd5124565ae1532db663c3b - languageName: node - linkType: hard - -"@types/http-assert@npm:*": - version: 1.5.5 - resolution: "@types/http-assert@npm:1.5.5" - checksum: 10c0/02e7ba584d6d14bdb4dad05dd36ecbc4a2f4209472287e6d558e222c93182214445a0c6cd096f114bfc88446be03d82ef6db24ecda13922b0d697918c76b4067 - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 2.0.4 - resolution: "@types/http-errors@npm:2.0.4" - checksum: 10c0/494670a57ad4062fee6c575047ad5782506dd35a6b9ed3894cea65830a94367bd84ba302eb3dde331871f6d70ca287bfedb1b2cf658e6132cd2cbd427ab56836 - languageName: node - linkType: hard - -"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.8": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db - languageName: node - linkType: hard - -"@types/keygrip@npm:*": - version: 1.0.6 - resolution: "@types/keygrip@npm:1.0.6" - checksum: 10c0/1045a79913259f539ac1d04384ea8f61cf29f1d299040eb4b67d92304ec3bcea59b7e4b83cf95a73aa251ff62e55924e380d0c563a21fe8f6e91de20cc610386 - languageName: node - linkType: hard - -"@types/koa-compose@npm:*": - version: 3.2.8 - resolution: "@types/koa-compose@npm:3.2.8" - dependencies: - "@types/koa": "npm:*" - checksum: 10c0/f2bfb7376c1e9075e8df7a46a5fce073159b01b94ec7dcca6e9f68627d48ea86a726bcfbd06491e1c99f68c0f27b8174b498081f9a3e4f976694452b5d0b5f01 - languageName: node - linkType: hard - -"@types/koa@npm:*, @types/koa@npm:2.15.0": - version: 2.15.0 - resolution: "@types/koa@npm:2.15.0" - dependencies: - "@types/accepts": "npm:*" - "@types/content-disposition": "npm:*" - "@types/cookies": "npm:*" - "@types/http-assert": "npm:*" - "@types/http-errors": "npm:*" - "@types/keygrip": "npm:*" - "@types/koa-compose": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/3fd591e25ecffc32ffa7cb152d2c5caeccefe5a72cb09d187102d8f41101bdaeeb802a07a6672eac58f805fa59892e79c1cc203ca7b27b0de75d7eac508c2b47 - languageName: node - linkType: hard - -"@types/koa@npm:2.14.0": - version: 2.14.0 - resolution: "@types/koa@npm:2.14.0" - dependencies: - "@types/accepts": "npm:*" - "@types/content-disposition": "npm:*" - "@types/cookies": "npm:*" - "@types/http-assert": "npm:*" - "@types/http-errors": "npm:*" - "@types/keygrip": "npm:*" - "@types/koa-compose": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/783536ea905244ec8edcda5f6063f34b3f4bfe16ff75f4d8faaa9b3ce58455ff140b20e63064a31491c1e7f34de4e869bce410fb116012887b9792c98591f744 - languageName: node - linkType: hard - -"@types/koa__router@npm:12.0.3": - version: 12.0.3 - resolution: "@types/koa__router@npm:12.0.3" - dependencies: - "@types/koa": "npm:*" - checksum: 10c0/f9e2c360bed2f326df2d2cb3d1dd508a14360ae2299516579bed9690084f92056df09f28946d3245e9ef67ee0688af4a27990036f0e9afc9eb31241852884612 - languageName: node - linkType: hard - -"@types/koa__router@npm:12.0.4": - version: 12.0.4 - resolution: "@types/koa__router@npm:12.0.4" - dependencies: - "@types/koa": "npm:*" - checksum: 10c0/bc783b47d3c2a6bb8171ba3ddffa5781c5ed11e6b716e74281dfb71229ceb3189ddf5ac178e6f9552ca9d43e8370e0bd558054d66439b43a9e500d046a15ffa8 - languageName: node - linkType: hard - -"@types/mime-db@npm:*": - version: 1.43.5 - resolution: "@types/mime-db@npm:1.43.5" - checksum: 10c0/226af9f9126d1e4cc7241e8960087fb72b598179fb3aee2d35024d1583e2e83222199c0c63afa23763f1abc575e5514b3677505497608688d25155f8fd828a65 - languageName: node - linkType: hard - -"@types/mime@npm:^1": - version: 1.3.5 - resolution: "@types/mime@npm:1.3.5" - checksum: 10c0/c2ee31cd9b993804df33a694d5aa3fa536511a49f2e06eeab0b484fef59b4483777dbb9e42a4198a0809ffbf698081fdbca1e5c2218b82b91603dfab10a10fbc - languageName: node - linkType: hard - -"@types/mysql@npm:2.15.22": - version: 2.15.22 - resolution: "@types/mysql@npm:2.15.22" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/872e7389985c954e7bf507cbe8f62f33c779d28e456b711d18133eaf9636487d0521e7f2c32e22eae0aa71f2d1c6e10d6212fbace50f73ab0a803949cc71f2cc - languageName: node - linkType: hard - -"@types/node@npm:*, @types/node@npm:^20.12.5": - version: 20.12.5 - resolution: "@types/node@npm:20.12.5" - dependencies: - undici-types: "npm:~5.26.4" - checksum: 10c0/2da65516fba98f0417620e42bddbe53e144d4782d69cd37f99df2537c6850b9cfbdb8a017f02c61e9a074bcac84f9f3f221b250474ac8c6b95d507a47e8d53f9 - languageName: node - linkType: hard - -"@types/pg-pool@npm:2.0.4": - version: 2.0.4 - resolution: "@types/pg-pool@npm:2.0.4" - dependencies: - "@types/pg": "npm:*" - checksum: 10c0/1c6b83e1c33c66e6b1ee11332ecf74ad393ba2a3966d5ee7ffaa40ddfe1f3cb4df224263515967d39101fa13b10c1f70da45795ca6eaeeea7d8e9edeeb58093f - languageName: node - linkType: hard - -"@types/pg@npm:*": - version: 8.11.5 - resolution: "@types/pg@npm:8.11.5" - dependencies: - "@types/node": "npm:*" - pg-protocol: "npm:*" - pg-types: "npm:^4.0.1" - checksum: 10c0/d64d183bee2df96cd0558231190ff629558e8c0fd3203b880f48a7d34b1eaea528d20c09b57b19c0939f369136e6c6941533592eadd71174be78d1ec0ca5e60e - languageName: node - linkType: hard - -"@types/pg@npm:8.6.1": - version: 8.6.1 - resolution: "@types/pg@npm:8.6.1" - dependencies: - "@types/node": "npm:*" - pg-protocol: "npm:*" - pg-types: "npm:^2.2.0" - checksum: 10c0/8d16660c9a4f050d6d5e391c59f9a62e9d377a2a6a7eb5865f8828082dbdfeab700fd707e585f42d67b29e796b32863aea5bd6d5cbb8ceda2d598da5d0c61693 - languageName: node - linkType: hard - -"@types/qs@npm:*": - version: 6.9.14 - resolution: "@types/qs@npm:6.9.14" - checksum: 10c0/11ad1eb7f6d7c216002789959d88acc7c43f72854fa4335f01de0df41b4c4024668dace8a37ba12270314345ede0ec6b07f93053a45e7bd4cd7318a3dcf0b6b8 - languageName: node - linkType: hard - -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 10c0/361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c - languageName: node - linkType: hard - -"@types/semver@npm:^7.5.8": - version: 7.5.8 - resolution: "@types/semver@npm:7.5.8" - checksum: 10c0/8663ff927234d1c5fcc04b33062cb2b9fcfbe0f5f351ed26c4d1e1581657deebd506b41ff7fdf89e787e3d33ce05854bc01686379b89e9c49b564c4cfa988efa - languageName: node - linkType: hard - -"@types/send@npm:*": - version: 0.17.4 - resolution: "@types/send@npm:0.17.4" - dependencies: - "@types/mime": "npm:^1" - "@types/node": "npm:*" - checksum: 10c0/7f17fa696cb83be0a104b04b424fdedc7eaba1c9a34b06027239aba513b398a0e2b7279778af521f516a397ced417c96960e5f50fcfce40c4bc4509fb1a5883c - languageName: node - linkType: hard - -"@types/serve-static@npm:*": - version: 1.15.7 - resolution: "@types/serve-static@npm:1.15.7" - dependencies: - "@types/http-errors": "npm:*" - "@types/node": "npm:*" - "@types/send": "npm:*" - checksum: 10c0/26ec864d3a626ea627f8b09c122b623499d2221bbf2f470127f4c9ebfe92bd8a6bb5157001372d4c4bd0dd37a1691620217d9dc4df5aa8f779f3fd996b1c60ae - languageName: node - linkType: hard - -"@types/shimmer@npm:^1.0.2": - version: 1.0.5 - resolution: "@types/shimmer@npm:1.0.5" - checksum: 10c0/bbdcfebd46732267a7f861ca2e25b8f113ca303bfb1ebf891aeeb509b0507f816f95611fa82acdd4d1d534472a54754f6be3301b2cf77659654671e3e31318ec - languageName: node - linkType: hard - -"@types/triple-beam@npm:^1.3.2": - version: 1.3.5 - resolution: "@types/triple-beam@npm:1.3.5" - checksum: 10c0/d5d7f25da612f6d79266f4f1bb9c1ef8f1684e9f60abab251e1261170631062b656ba26ff22631f2760caeafd372abc41e64867cde27fba54fafb73a35b9056a - languageName: node - linkType: hard - -"@typescript-eslint/eslint-plugin@npm:7.6.0, @typescript-eslint/eslint-plugin@npm:^7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/eslint-plugin@npm:7.6.0" - dependencies: - "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:7.6.0" - "@typescript-eslint/type-utils": "npm:7.6.0" - "@typescript-eslint/utils": "npm:7.6.0" - "@typescript-eslint/visitor-keys": "npm:7.6.0" - debug: "npm:^4.3.4" - graphemer: "npm:^1.4.0" - ignore: "npm:^5.3.1" - natural-compare: "npm:^1.4.0" - semver: "npm:^7.6.0" - ts-api-utils: "npm:^1.3.0" - peerDependencies: - "@typescript-eslint/parser": ^7.0.0 - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/c3ca611c6658dfc05e6457e87c66cdc6f038cf9bbb345f3168d171491bc1439f815a49529a1511940141a387873e10dfc7ab68fd172cf54c34f8a3aa8c558e13 - languageName: node - linkType: hard - -"@typescript-eslint/parser@npm:7.6.0, @typescript-eslint/parser@npm:^7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/parser@npm:7.6.0" - dependencies: - "@typescript-eslint/scope-manager": "npm:7.6.0" - "@typescript-eslint/types": "npm:7.6.0" - "@typescript-eslint/typescript-estree": "npm:7.6.0" - "@typescript-eslint/visitor-keys": "npm:7.6.0" - debug: "npm:^4.3.4" - peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/69450c15180f7ee5a9d9c2e8ed7aa781a3b63635c099de1f102167c247d71c55b152934187e854baa5c9ea3dcbc0c9f5983379139e6cfa1ccbb900b9f23dab37 - languageName: node - linkType: hard - -"@typescript-eslint/scope-manager@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/scope-manager@npm:7.6.0" - dependencies: - "@typescript-eslint/types": "npm:7.6.0" - "@typescript-eslint/visitor-keys": "npm:7.6.0" - checksum: 10c0/1c1e75fd4fa2dabcab0457ca2ec872752c112fec27bf11edb5bf13c547ad5f3ca5a3b424e19c6916dfc8bd348cde258db8abfd12c9ed93b4bc4df9ef9e3db9f5 - languageName: node - linkType: hard - -"@typescript-eslint/type-utils@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/type-utils@npm:7.6.0" - dependencies: - "@typescript-eslint/typescript-estree": "npm:7.6.0" - "@typescript-eslint/utils": "npm:7.6.0" - debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.3.0" - peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/d5fa5856e24b593e8ae93f27049e7ea49c0725f9fe44e6252a8fc8228859e2db254a3c399bedaf1fdac76fae94aa9bae10a9d466032c7bdb5bdeb1da2e4e3a53 - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/types@npm:7.6.0" - checksum: 10c0/7ca2a307557d4d8fc9c7d43e4dc8c4841e6c5380b59dcc8b644b3d7b6a702968ff5a70b74cb7e3d3af3f3cef87e9775573b8272b1b2963d80441992ac4e7e951 - languageName: node - linkType: hard - -"@typescript-eslint/typescript-estree@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/typescript-estree@npm:7.6.0" - dependencies: - "@typescript-eslint/types": "npm:7.6.0" - "@typescript-eslint/visitor-keys": "npm:7.6.0" - debug: "npm:^4.3.4" - globby: "npm:^11.1.0" - is-glob: "npm:^4.0.3" - minimatch: "npm:^9.0.4" - semver: "npm:^7.6.0" - ts-api-utils: "npm:^1.3.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/ab54ce7a61928640bf036cc1d80394de92581d90666786603b566b9a44833603e017d7e739a37aee82a007c6d1dbdc6328d7e42d1732925cc53c111e7e38961e - languageName: node - linkType: hard - -"@typescript-eslint/utils@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/utils@npm:7.6.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@types/json-schema": "npm:^7.0.15" - "@types/semver": "npm:^7.5.8" - "@typescript-eslint/scope-manager": "npm:7.6.0" - "@typescript-eslint/types": "npm:7.6.0" - "@typescript-eslint/typescript-estree": "npm:7.6.0" - semver: "npm:^7.6.0" - peerDependencies: - eslint: ^8.56.0 - checksum: 10c0/1552004d9c451347f11398648ec7b22381d5b335f10e8d2dfdfbcb024ef93c9a23ec5731ee271495b4b546ab5db0a817bd13c4c4db8be825ed90b80a89dfd0f7 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:7.6.0": - version: 7.6.0 - resolution: "@typescript-eslint/visitor-keys@npm:7.6.0" - dependencies: - "@typescript-eslint/types": "npm:7.6.0" - eslint-visitor-keys: "npm:^3.4.3" - checksum: 10c0/b5ca6a9258889ef103165884e99b51124b2a3dad250cf7cee2fb13525f76922256a6146a8dcef74cad6548a52409ff89259809c7fa7c8be07059bb7454e7fa8f - languageName: node - linkType: hard - -"@webassemblyjs/ast@npm:1.12.1, @webassemblyjs/ast@npm:^1.11.5": - version: 1.12.1 - resolution: "@webassemblyjs/ast@npm:1.12.1" - dependencies: - "@webassemblyjs/helper-numbers": "npm:1.11.6" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - checksum: 10c0/ba7f2b96c6e67e249df6156d02c69eb5f1bd18d5005303cdc42accb053bebbbde673826e54db0437c9748e97abd218366a1d13fa46859b23cde611b6b409998c - languageName: node - linkType: hard - -"@webassemblyjs/floating-point-hex-parser@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.6" - checksum: 10c0/37fe26f89e18e4ca0e7d89cfe3b9f17cfa327d7daf906ae01400416dbb2e33c8a125b4dc55ad7ff405e5fcfb6cf0d764074c9bc532b9a31a71e762be57d2ea0a - languageName: node - linkType: hard - -"@webassemblyjs/helper-api-error@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/helper-api-error@npm:1.11.6" - checksum: 10c0/a681ed51863e4ff18cf38d223429f414894e5f7496856854d9a886eeddcee32d7c9f66290f2919c9bb6d2fc2b2fae3f989b6a1e02a81e829359738ea0c4d371a - languageName: node - linkType: hard - -"@webassemblyjs/helper-buffer@npm:1.12.1": - version: 1.12.1 - resolution: "@webassemblyjs/helper-buffer@npm:1.12.1" - checksum: 10c0/0270724afb4601237410f7fd845ab58ccda1d5456a8783aadfb16eaaf3f2c9610c28e4a5bcb6ad880cde5183c82f7f116d5ccfc2310502439d33f14b6888b48a - languageName: node - linkType: hard - -"@webassemblyjs/helper-numbers@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/helper-numbers@npm:1.11.6" - dependencies: - "@webassemblyjs/floating-point-hex-parser": "npm:1.11.6" - "@webassemblyjs/helper-api-error": "npm:1.11.6" - "@xtuc/long": "npm:4.2.2" - checksum: 10c0/c7d5afc0ff3bd748339b466d8d2f27b908208bf3ff26b2e8e72c39814479d486e0dca6f3d4d776fd9027c1efe05b5c0716c57a23041eb34473892b2731c33af3 - languageName: node - linkType: hard - -"@webassemblyjs/helper-wasm-bytecode@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.6" - checksum: 10c0/79d2bebdd11383d142745efa32781249745213af8e022651847382685ca76709f83e1d97adc5f0d3c2b8546bf02864f8b43a531fdf5ca0748cb9e4e0ef2acaa5 - languageName: node - linkType: hard - -"@webassemblyjs/helper-wasm-section@npm:1.12.1": - version: 1.12.1 - resolution: "@webassemblyjs/helper-wasm-section@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@webassemblyjs/helper-buffer": "npm:1.12.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/wasm-gen": "npm:1.12.1" - checksum: 10c0/0546350724d285ae3c26e6fc444be4c3b5fb824f3be0ec8ceb474179dc3f4430336dd2e36a44b3e3a1a6815960e5eec98cd9b3a8ec66dc53d86daedd3296a6a2 - languageName: node - linkType: hard - -"@webassemblyjs/ieee754@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/ieee754@npm:1.11.6" - dependencies: - "@xtuc/ieee754": "npm:^1.2.0" - checksum: 10c0/59de0365da450322c958deadade5ec2d300c70f75e17ae55de3c9ce564deff5b429e757d107c7ec69bd0ba169c6b6cc2ff66293ab7264a7053c829b50ffa732f - languageName: node - linkType: hard - -"@webassemblyjs/leb128@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/leb128@npm:1.11.6" - dependencies: - "@xtuc/long": "npm:4.2.2" - checksum: 10c0/cb344fc04f1968209804de4da018679c5d4708a03b472a33e0fa75657bb024978f570d3ccf9263b7f341f77ecaa75d0e051b9cd4b7bb17a339032cfd1c37f96e - languageName: node - linkType: hard - -"@webassemblyjs/utf8@npm:1.11.6": - version: 1.11.6 - resolution: "@webassemblyjs/utf8@npm:1.11.6" - checksum: 10c0/14d6c24751a89ad9d801180b0d770f30a853c39f035a15fbc96266d6ac46355227abd27a3fd2eeaa97b4294ced2440a6b012750ae17bafe1a7633029a87b6bee - languageName: node - linkType: hard - -"@webassemblyjs/wasm-edit@npm:^1.11.5": - version: 1.12.1 - resolution: "@webassemblyjs/wasm-edit@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@webassemblyjs/helper-buffer": "npm:1.12.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/helper-wasm-section": "npm:1.12.1" - "@webassemblyjs/wasm-gen": "npm:1.12.1" - "@webassemblyjs/wasm-opt": "npm:1.12.1" - "@webassemblyjs/wasm-parser": "npm:1.12.1" - "@webassemblyjs/wast-printer": "npm:1.12.1" - checksum: 10c0/972f5e6c522890743999e0ed45260aae728098801c6128856b310dd21f1ee63435fc7b518e30e0ba1cdafd0d1e38275829c1e4451c3536a1d9e726e07a5bba0b - languageName: node - linkType: hard - -"@webassemblyjs/wasm-gen@npm:1.12.1": - version: 1.12.1 - resolution: "@webassemblyjs/wasm-gen@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/ieee754": "npm:1.11.6" - "@webassemblyjs/leb128": "npm:1.11.6" - "@webassemblyjs/utf8": "npm:1.11.6" - checksum: 10c0/1e257288177af9fa34c69cab94f4d9036ebed611f77f3897c988874e75182eeeec759c79b89a7a49dd24624fc2d3d48d5580b62b67c4a1c9bfbdcd266b281c16 - languageName: node - linkType: hard - -"@webassemblyjs/wasm-opt@npm:1.12.1": - version: 1.12.1 - resolution: "@webassemblyjs/wasm-opt@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@webassemblyjs/helper-buffer": "npm:1.12.1" - "@webassemblyjs/wasm-gen": "npm:1.12.1" - "@webassemblyjs/wasm-parser": "npm:1.12.1" - checksum: 10c0/992a45e1f1871033c36987459436ab4e6430642ca49328e6e32a13de9106fe69ae6c0ac27d7050efd76851e502d11cd1ac0e06b55655dfa889ad82f11a2712fb - languageName: node - linkType: hard - -"@webassemblyjs/wasm-parser@npm:1.12.1, @webassemblyjs/wasm-parser@npm:^1.11.5": - version: 1.12.1 - resolution: "@webassemblyjs/wasm-parser@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@webassemblyjs/helper-api-error": "npm:1.11.6" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.11.6" - "@webassemblyjs/ieee754": "npm:1.11.6" - "@webassemblyjs/leb128": "npm:1.11.6" - "@webassemblyjs/utf8": "npm:1.11.6" - checksum: 10c0/e85cec1acad07e5eb65b92d37c8e6ca09c6ca50d7ca58803a1532b452c7321050a0328c49810c337cc2dfd100c5326a54d5ebd1aa5c339ebe6ef10c250323a0e - languageName: node - linkType: hard - -"@webassemblyjs/wast-printer@npm:1.12.1": - version: 1.12.1 - resolution: "@webassemblyjs/wast-printer@npm:1.12.1" - dependencies: - "@webassemblyjs/ast": "npm:1.12.1" - "@xtuc/long": "npm:4.2.2" - checksum: 10c0/39bf746eb7a79aa69953f194943bbc43bebae98bd7cadd4d8bc8c0df470ca6bf9d2b789effaa180e900fab4e2691983c1f7d41571458bd2a26267f2f0c73705a - languageName: node - linkType: hard - -"@xtuc/ieee754@npm:^1.2.0": - version: 1.2.0 - resolution: "@xtuc/ieee754@npm:1.2.0" - checksum: 10c0/a8565d29d135039bd99ae4b2220d3e167d22cf53f867e491ed479b3f84f895742d0097f935b19aab90265a23d5d46711e4204f14c479ae3637fbf06c4666882f - languageName: node - linkType: hard - -"@xtuc/long@npm:4.2.2": - version: 4.2.2 - resolution: "@xtuc/long@npm:4.2.2" - checksum: 10c0/8582cbc69c79ad2d31568c412129bf23d2b1210a1dfb60c82d5a1df93334da4ee51f3057051658569e2c196d8dc33bc05ae6b974a711d0d16e801e1d0647ccd1 - languageName: node - linkType: hard - -"abbrev@npm:1": - version: 1.1.1 - resolution: "abbrev@npm:1.1.1" - checksum: 10c0/3f762677702acb24f65e813070e306c61fafe25d4b2583f9dfc935131f774863f3addd5741572ed576bd69cabe473c5af18e1e108b829cb7b6b4747884f726e6 - languageName: node - linkType: hard - -"abbrev@npm:^2.0.0": - version: 2.0.0 - resolution: "abbrev@npm:2.0.0" - checksum: 10c0/f742a5a107473946f426c691c08daba61a1d15942616f300b5d32fd735be88fef5cba24201757b6c407fd564555fb48c751cfa33519b2605c8a7aadd22baf372 - languageName: node - linkType: hard - -"accepts@npm:^1.3.5, accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 - languageName: node - linkType: hard - -"acorn-import-assertions@npm:^1.9.0": - version: 1.9.0 - resolution: "acorn-import-assertions@npm:1.9.0" - peerDependencies: - acorn: ^8 - checksum: 10c0/3b4a194e128efdc9b86c2b1544f623aba4c1aa70d638f8ab7dc3971a5b4aa4c57bd62f99af6e5325bb5973c55863b4112e708a6f408bad7a138647ca72283afe - languageName: node - linkType: hard - -"acorn-jsx@npm:^5.3.2": - version: 5.3.2 - resolution: "acorn-jsx@npm:5.3.2" - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 - languageName: node - linkType: hard - -"acorn-walk@npm:^8.1.1": - version: 8.3.2 - resolution: "acorn-walk@npm:8.3.2" - checksum: 10c0/7e2a8dad5480df7f872569b9dccff2f3da7e65f5353686b1d6032ab9f4ddf6e3a2cb83a9b52cf50b1497fd522154dda92f0abf7153290cc79cd14721ff121e52 - languageName: node - linkType: hard - -"acorn@npm:8.8.2": - version: 8.8.2 - resolution: "acorn@npm:8.8.2" - bin: - acorn: bin/acorn - checksum: 10c0/b5c54e736af5ed753911c6752fafd02d0a74cf4d55be606bd81fe71faba4f986dc090952329931ac2aba165803fd0005c59eeef08f9c6c689e8dc420031f3df0 - languageName: node - linkType: hard - -"acorn@npm:^8.11.3, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.2": - version: 8.11.3 - resolution: "acorn@npm:8.11.3" - bin: - acorn: bin/acorn - checksum: 10c0/3ff155f8812e4a746fee8ecff1f227d527c4c45655bb1fad6347c3cb58e46190598217551b1500f18542d2bbe5c87120cb6927f5a074a59166fbdd9468f0a299 - languageName: node - linkType: hard - -"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.1": - version: 7.1.1 - resolution: "agent-base@npm:7.1.1" - dependencies: - debug: "npm:^4.3.4" - checksum: 10c0/e59ce7bed9c63bf071a30cc471f2933862044c97fd9958967bfe22521d7a0f601ce4ed5a8c011799d0c726ca70312142ae193bbebb60f576b52be19d4a363b50 - languageName: node - linkType: hard - -"aggregate-error@npm:^3.0.0": - version: 3.1.0 - resolution: "aggregate-error@npm:3.1.0" - dependencies: - clean-stack: "npm:^2.0.0" - indent-string: "npm:^4.0.0" - checksum: 10c0/a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039 - languageName: node - linkType: hard - -"ajv-formats@npm:2.1.1": - version: 2.1.1 - resolution: "ajv-formats@npm:2.1.1" - dependencies: - ajv: "npm:^8.0.0" - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - checksum: 10c0/e43ba22e91b6a48d96224b83d260d3a3a561b42d391f8d3c6d2c1559f9aa5b253bfb306bc94bbeca1d967c014e15a6efe9a207309e95b3eaae07fcbcdc2af662 - languageName: node - linkType: hard - -"ajv-keywords@npm:^3.5.2": - version: 3.5.2 - resolution: "ajv-keywords@npm:3.5.2" - peerDependencies: - ajv: ^6.9.1 - checksum: 10c0/0c57a47cbd656e8cdfd99d7c2264de5868918ffa207c8d7a72a7f63379d4333254b2ba03d69e3c035e996a3fd3eb6d5725d7a1597cca10694296e32510546360 - languageName: node - linkType: hard - -"ajv@npm:8.12.0, ajv@npm:^8.0.0": - version: 8.12.0 - resolution: "ajv@npm:8.12.0" - dependencies: - fast-deep-equal: "npm:^3.1.1" - json-schema-traverse: "npm:^1.0.0" - require-from-string: "npm:^2.0.2" - uri-js: "npm:^4.2.2" - checksum: 10c0/ac4f72adf727ee425e049bc9d8b31d4a57e1c90da8d28bcd23d60781b12fcd6fc3d68db5df16994c57b78b94eed7988f5a6b482fd376dc5b084125e20a0a622e - languageName: node - linkType: hard - -"ajv@npm:^6.12.4, ajv@npm:^6.12.5": - version: 6.12.6 - resolution: "ajv@npm:6.12.6" - dependencies: - fast-deep-equal: "npm:^3.1.1" - fast-json-stable-stringify: "npm:^2.0.0" - json-schema-traverse: "npm:^0.4.1" - uri-js: "npm:^4.2.2" - checksum: 10c0/41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 - languageName: node - linkType: hard - -"ansi-colors@npm:4.1.3": - version: 4.1.3 - resolution: "ansi-colors@npm:4.1.3" - checksum: 10c0/ec87a2f59902f74e61eada7f6e6fe20094a628dab765cfdbd03c3477599368768cffccdb5d3bb19a1b6c99126783a143b1fee31aab729b31ffe5836c7e5e28b9 - languageName: node - linkType: hard - -"ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.2": - version: 4.3.2 - resolution: "ansi-escapes@npm:4.3.2" - dependencies: - type-fest: "npm:^0.21.3" - checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 - languageName: node - linkType: hard - -"ansi-regex@npm:^5.0.1": - version: 5.0.1 - resolution: "ansi-regex@npm:5.0.1" - checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 - languageName: node - linkType: hard - -"ansi-regex@npm:^6.0.1": - version: 6.0.1 - resolution: "ansi-regex@npm:6.0.1" - checksum: 10c0/cbe16dbd2c6b2735d1df7976a7070dd277326434f0212f43abf6d87674095d247968209babdaad31bb00882fa68807256ba9be340eec2f1004de14ca75f52a08 - languageName: node - linkType: hard - -"ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.0" - checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b - languageName: node - linkType: hard - -"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" - dependencies: - color-convert: "npm:^2.0.1" - checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 - languageName: node - linkType: hard - -"ansi-styles@npm:^6.1.0": - version: 6.2.1 - resolution: "ansi-styles@npm:6.2.1" - checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c - languageName: node - linkType: hard - -"anymatch@npm:~3.1.2": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: "npm:^3.0.0" - picomatch: "npm:^2.0.4" - checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac - languageName: node - linkType: hard - -"append-field@npm:^1.0.0": - version: 1.0.0 - resolution: "append-field@npm:1.0.0" - checksum: 10c0/1b5abcc227e5179936a9e4f7e2af4769fa1f00eda85bbaed907f7964b0fd1f7d61f0f332b35337f391389ff13dd5310c2546ba670f8e5a743b23ec85185c73ef - languageName: node - linkType: hard - -"arg@npm:^4.1.0": - version: 4.1.3 - resolution: "arg@npm:4.1.3" - checksum: 10c0/070ff801a9d236a6caa647507bdcc7034530604844d64408149a26b9e87c2f97650055c0f049abd1efc024b334635c01f29e0b632b371ac3f26130f4cf65997a - languageName: node - linkType: hard - -"argparse@npm:^2.0.1": - version: 2.0.1 - resolution: "argparse@npm:2.0.1" - checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e - languageName: node - linkType: hard - -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 - languageName: node - linkType: hard - -"array-timsort@npm:^1.0.3": - version: 1.0.3 - resolution: "array-timsort@npm:1.0.3" - checksum: 10c0/bd3a1707b621947265c89867e67c9102b9b9f4c50f5b3974220112290d8b60d26ce60595edec5deed3325207b759d70b758bed3cd310b5ddadb835657ffb6d12 - languageName: node - linkType: hard - -"array-union@npm:^2.1.0": - version: 2.1.0 - resolution: "array-union@npm:2.1.0" - checksum: 10c0/429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962 - languageName: node - linkType: hard - -"async@npm:^3.2.3": - version: 3.2.5 - resolution: "async@npm:3.2.5" - checksum: 10c0/1408287b26c6db67d45cb346e34892cee555b8b59e6c68e6f8c3e495cad5ca13b4f218180e871f3c2ca30df4ab52693b66f2f6ff43644760cab0b2198bda79c1 - languageName: node - linkType: hard - -"balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee - languageName: node - linkType: hard - -"base64-js@npm:^1.3.1": - version: 1.5.1 - resolution: "base64-js@npm:1.5.1" - checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf - languageName: node - linkType: hard - -"binary-extensions@npm:^2.0.0": - version: 2.3.0 - resolution: "binary-extensions@npm:2.3.0" - checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 - languageName: node - linkType: hard - -"bl@npm:^4.1.0": - version: 4.1.0 - resolution: "bl@npm:4.1.0" - dependencies: - buffer: "npm:^5.5.0" - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.4.0" - checksum: 10c0/02847e1d2cb089c9dc6958add42e3cdeaf07d13f575973963335ac0fdece563a50ac770ac4c8fa06492d2dd276f6cc3b7f08c7cd9c7a7ad0f8d388b2a28def5f - languageName: node - linkType: hard - -"body-parser@npm:1.20.2": - version: 1.20.2 - resolution: "body-parser@npm:1.20.2" - dependencies: - bytes: "npm:3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - on-finished: "npm:2.4.1" - qs: "npm:6.11.0" - raw-body: "npm:2.5.2" - type-is: "npm:~1.6.18" - unpipe: "npm:1.0.0" - checksum: 10c0/06f1438fff388a2e2354c96aa3ea8147b79bfcb1262dfcc2aae68ec13723d01d5781680657b74e9f83c808266d5baf52804032fbde2b7382b89bd8cdb273ace9 - languageName: node - linkType: hard - -"brace-expansion@npm:^1.1.7": - version: 1.1.11 - resolution: "brace-expansion@npm:1.1.11" - dependencies: - balanced-match: "npm:^1.0.0" - concat-map: "npm:0.0.1" - checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 - languageName: node - linkType: hard - -"brace-expansion@npm:^2.0.1": - version: 2.0.1 - resolution: "brace-expansion@npm:2.0.1" - dependencies: - balanced-match: "npm:^1.0.0" - checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f - languageName: node - linkType: hard - -"braces@npm:^3.0.2, braces@npm:~3.0.2": - version: 3.0.2 - resolution: "braces@npm:3.0.2" - dependencies: - fill-range: "npm:^7.0.1" - checksum: 10c0/321b4d675791479293264019156ca322163f02dc06e3c4cab33bb15cd43d80b51efef69b0930cfde3acd63d126ebca24cd0544fa6f261e093a0fb41ab9dda381 - languageName: node - linkType: hard - -"browserslist@npm:^4.21.10": - version: 4.23.0 - resolution: "browserslist@npm:4.23.0" - dependencies: - caniuse-lite: "npm:^1.0.30001587" - electron-to-chromium: "npm:^1.4.668" - node-releases: "npm:^2.0.14" - update-browserslist-db: "npm:^1.0.13" - bin: - browserslist: cli.js - checksum: 10c0/8e9cc154529062128d02a7af4d8adeead83ca1df8cd9ee65a88e2161039f3d68a4d40fea7353cab6bae4c16182dec2fdd9a1cf7dc2a2935498cee1af0e998943 - languageName: node - linkType: hard - -"buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 - languageName: node - linkType: hard - -"buffer@npm:^5.5.0": - version: 5.7.1 - resolution: "buffer@npm:5.7.1" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.1.13" - checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e - languageName: node - linkType: hard - -"busboy@npm:^1.0.0": - version: 1.6.0 - resolution: "busboy@npm:1.6.0" - dependencies: - streamsearch: "npm:^1.1.0" - checksum: 10c0/fa7e836a2b82699b6e074393428b91ae579d4f9e21f5ac468e1b459a244341d722d2d22d10920cdd849743dbece6dca11d72de939fb75a7448825cf2babfba1f - languageName: node - linkType: hard - -"bytes@npm:3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e - languageName: node - linkType: hard - -"cacache@npm:^18.0.0": - version: 18.0.2 - resolution: "cacache@npm:18.0.2" - dependencies: - "@npmcli/fs": "npm:^3.1.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^10.2.2" - lru-cache: "npm:^10.0.1" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^4.0.0" - ssri: "npm:^10.0.0" - tar: "npm:^6.1.11" - unique-filename: "npm:^3.0.0" - checksum: 10c0/7992665305cc251a984f4fdbab1449d50e88c635bc43bf2785530c61d239c61b349e5734461baa461caaee65f040ab14e2d58e694f479c0810cffd181ba5eabc - languageName: node - linkType: hard - -"cache-content-type@npm:^1.0.0": - version: 1.0.1 - resolution: "cache-content-type@npm:1.0.1" - dependencies: - mime-types: "npm:^2.1.18" - ylru: "npm:^1.2.0" - checksum: 10c0/59b50e29e64a24bb52a16e5d35b69ad27ef14313701acc5e462b0aeebf2f09ff87fb6538eb0c0f0de4de05c8a1eecaef47f455f5b4928079e68f607f816a0843 - languageName: node - linkType: hard - -"call-bind@npm:^1.0.7": - version: 1.0.7 - resolution: "call-bind@npm:1.0.7" - dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.1" - checksum: 10c0/a3ded2e423b8e2a265983dba81c27e125b48eefb2655e7dfab6be597088da3d47c47976c24bc51b8fd9af1061f8f87b4ab78a314f3c77784b2ae2ba535ad8b8d - languageName: node - linkType: hard - -"callsites@npm:^3.0.0": - version: 3.1.0 - resolution: "callsites@npm:3.1.0" - checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 - languageName: node - linkType: hard - -"caniuse-lite@npm:^1.0.30001587": - version: 1.0.30001610 - resolution: "caniuse-lite@npm:1.0.30001610" - checksum: 10c0/015956a0bf2e3e233da3dc00c5632bbb4d416bcd6ced2f839e33e45b197a856234f97cb046e7427b83d7e3a3d6df314dfab1c86eb9d970970e00ad85a50b4933 - languageName: node - linkType: hard - -"chalk@npm:4.1.2, chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 - languageName: node - linkType: hard - -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" - dependencies: - ansi-styles: "npm:^3.2.1" - escape-string-regexp: "npm:^1.0.5" - supports-color: "npm:^5.3.0" - checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 - languageName: node - linkType: hard - -"chalk@npm:^5.3.0": - version: 5.3.0 - resolution: "chalk@npm:5.3.0" - checksum: 10c0/8297d436b2c0f95801103ff2ef67268d362021b8210daf8ddbe349695333eb3610a71122172ff3b0272f1ef2cf7cc2c41fdaa4715f52e49ffe04c56340feed09 - languageName: node - linkType: hard - -"chardet@npm:^0.7.0": - version: 0.7.0 - resolution: "chardet@npm:0.7.0" - checksum: 10c0/96e4731b9ec8050cbb56ab684e8c48d6c33f7826b755802d14e3ebfdc51c57afeece3ea39bc6b09acc359e4363525388b915e16640c1378053820f5e70d0f27d - languageName: node - linkType: hard - -"chokidar@npm:3.6.0, chokidar@npm:^3.5.2, chokidar@npm:^3.5.3": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: "npm:~3.1.2" - braces: "npm:~3.0.2" - fsevents: "npm:~2.3.2" - glob-parent: "npm:~5.1.2" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.6.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 - languageName: node - linkType: hard - -"chownr@npm:^2.0.0": - version: 2.0.0 - resolution: "chownr@npm:2.0.0" - checksum: 10c0/594754e1303672171cc04e50f6c398ae16128eb134a88f801bf5354fd96f205320f23536a045d9abd8b51024a149696e51231565891d4efdab8846021ecf88e6 - languageName: node - linkType: hard - -"chrome-trace-event@npm:^1.0.2": - version: 1.0.3 - resolution: "chrome-trace-event@npm:1.0.3" - checksum: 10c0/080ce2d20c2b9e0f8461a380e9585686caa768b1c834a464470c9dc74cda07f27611c7b727a2cd768a9cecd033297fdec4ce01f1e58b62227882c1059dec321c - languageName: node - linkType: hard - -"cjs-module-lexer@npm:^1.2.2": - version: 1.2.3 - resolution: "cjs-module-lexer@npm:1.2.3" - checksum: 10c0/0de9a9c3fad03a46804c0d38e7b712fb282584a9c7ef1ed44cae22fb71d9bb600309d66a9711ac36a596fd03422f5bb03e021e8f369c12a39fa1786ae531baab - languageName: node - linkType: hard - -"clean-stack@npm:^2.0.0": - version: 2.2.0 - resolution: "clean-stack@npm:2.2.0" - checksum: 10c0/1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1 - languageName: node - linkType: hard - -"cli-cursor@npm:^3.1.0": - version: 3.1.0 - resolution: "cli-cursor@npm:3.1.0" - dependencies: - restore-cursor: "npm:^3.1.0" - checksum: 10c0/92a2f98ff9037d09be3dfe1f0d749664797fb674bf388375a2207a1203b69d41847abf16434203e0089212479e47a358b13a0222ab9fccfe8e2644a7ccebd111 - languageName: node - linkType: hard - -"cli-spinners@npm:^2.5.0": - version: 2.9.2 - resolution: "cli-spinners@npm:2.9.2" - checksum: 10c0/907a1c227ddf0d7a101e7ab8b300affc742ead4b4ebe920a5bf1bc6d45dce2958fcd195eb28fa25275062fe6fa9b109b93b63bc8033396ed3bcb50297008b3a3 - languageName: node - linkType: hard - -"cli-table3@npm:0.6.3": - version: 0.6.3 - resolution: "cli-table3@npm:0.6.3" - dependencies: - "@colors/colors": "npm:1.5.0" - string-width: "npm:^4.2.0" - dependenciesMeta: - "@colors/colors": - optional: true - checksum: 10c0/39e580cb346c2eaf1bd8f4ff055ae644e902b8303c164a1b8894c0dc95941f92e001db51f49649011be987e708d9fa3183ccc2289a4d376a057769664048cc0c - languageName: node - linkType: hard - -"cli-width@npm:^3.0.0": - version: 3.0.0 - resolution: "cli-width@npm:3.0.0" - checksum: 10c0/125a62810e59a2564268c80fdff56c23159a7690c003e34aeb2e68497dccff26911998ff49c33916fcfdf71e824322cc3953e3f7b48b27267c7a062c81348a9a - languageName: node - linkType: hard - -"cli-width@npm:^4.1.0": - version: 4.1.0 - resolution: "cli-width@npm:4.1.0" - checksum: 10c0/1fbd56413578f6117abcaf858903ba1f4ad78370a4032f916745fa2c7e390183a9d9029cf837df320b0fdce8137668e522f60a30a5f3d6529ff3872d265a955f - languageName: node - linkType: hard - -"clone@npm:^1.0.2": - version: 1.0.4 - resolution: "clone@npm:1.0.4" - checksum: 10c0/2176952b3649293473999a95d7bebfc9dc96410f6cbd3d2595cf12fd401f63a4bf41a7adbfd3ab2ff09ed60cb9870c58c6acdd18b87767366fabfc163700f13b - languageName: node - linkType: hard - -"co@npm:^4.6.0": - version: 4.6.0 - resolution: "co@npm:4.6.0" - checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 - languageName: node - linkType: hard - -"color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: "npm:1.1.3" - checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c - languageName: node - linkType: hard - -"color-convert@npm:^2.0.1": - version: 2.0.1 - resolution: "color-convert@npm:2.0.1" - dependencies: - color-name: "npm:~1.1.4" - checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 - languageName: node - linkType: hard - -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 - languageName: node - linkType: hard - -"color-name@npm:^1.0.0, color-name@npm:~1.1.4": - version: 1.1.4 - resolution: "color-name@npm:1.1.4" - checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 - languageName: node - linkType: hard - -"color-string@npm:^1.6.0": - version: 1.9.1 - resolution: "color-string@npm:1.9.1" - dependencies: - color-name: "npm:^1.0.0" - simple-swizzle: "npm:^0.2.2" - checksum: 10c0/b0bfd74c03b1f837f543898b512f5ea353f71630ccdd0d66f83028d1f0924a7d4272deb278b9aef376cacf1289b522ac3fb175e99895283645a2dc3a33af2404 - languageName: node - linkType: hard - -"color@npm:^3.1.3": - version: 3.2.1 - resolution: "color@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.3" - color-string: "npm:^1.6.0" - checksum: 10c0/39345d55825884c32a88b95127d417a2c24681d8b57069413596d9fcbb721459ef9d9ec24ce3e65527b5373ce171b73e38dbcd9c830a52a6487e7f37bf00e83c - languageName: node - linkType: hard - -"colorspace@npm:1.1.x": - version: 1.1.4 - resolution: "colorspace@npm:1.1.4" - dependencies: - color: "npm:^3.1.3" - text-hex: "npm:1.0.x" - checksum: 10c0/af5f91ff7f8e146b96e439ac20ed79b197210193bde721b47380a75b21751d90fa56390c773bb67c0aedd34ff85091883a437ab56861c779bd507d639ba7e123 - languageName: node - linkType: hard - -"commander@npm:10.0.0": - version: 10.0.0 - resolution: "commander@npm:10.0.0" - checksum: 10c0/f1824812019664598ba7409c489cb5c15d33f65b43b08952a84e87e0023144c08d101e2f43af968cf2d464c0d667b50a2a9780f4a6c52915324f54fe9b451a31 - languageName: node - linkType: hard - -"commander@npm:4.1.1": - version: 4.1.1 - resolution: "commander@npm:4.1.1" - checksum: 10c0/84a76c08fe6cc08c9c93f62ac573d2907d8e79138999312c92d4155bc2325d487d64d13f669b2000c9f8caf70493c1be2dac74fec3c51d5a04f8bc3ae1830bab - languageName: node - linkType: hard - -"commander@npm:^2.20.0": - version: 2.20.3 - resolution: "commander@npm:2.20.3" - checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288 - languageName: node - linkType: hard - -"comment-json@npm:4.2.3": - version: 4.2.3 - resolution: "comment-json@npm:4.2.3" - dependencies: - array-timsort: "npm:^1.0.3" - core-util-is: "npm:^1.0.3" - esprima: "npm:^4.0.1" - has-own-prop: "npm:^2.0.0" - repeat-string: "npm:^1.6.1" - checksum: 10c0/e8a0d3a6d75d92551f9a7e6fefa31f3d831dc33117b0b9432f061f45a571c85c16143e4110693d450f6eca20841db43f5429ac0d801673bcf03e9973ab1c31af - languageName: node - linkType: hard - -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f - languageName: node - linkType: hard - -"concat-stream@npm:^1.5.2": - version: 1.6.2 - resolution: "concat-stream@npm:1.6.2" - dependencies: - buffer-from: "npm:^1.0.0" - inherits: "npm:^2.0.3" - readable-stream: "npm:^2.2.2" - typedarray: "npm:^0.0.6" - checksum: 10c0/2e9864e18282946dabbccb212c5c7cec0702745e3671679eb8291812ca7fd12023f7d8cb36493942a62f770ac96a7f90009dc5c82ad69893438371720fa92617 - languageName: node - linkType: hard - -"consola@npm:^2.15.0": - version: 2.15.3 - resolution: "consola@npm:2.15.3" - checksum: 10c0/34a337e6b4a1349ee4d7b4c568484344418da8fdb829d7d71bfefcd724f608f273987633b6eef465e8de510929907a092e13cb7a28a5d3acb3be446fcc79fd5e - languageName: node - linkType: hard - -"content-disposition@npm:0.5.4, content-disposition@npm:~0.5.2": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb - languageName: node - linkType: hard - -"content-type@npm:^1.0.4, content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af - languageName: node - linkType: hard - -"cookie-signature@npm:1.0.6": - version: 1.0.6 - resolution: "cookie-signature@npm:1.0.6" - checksum: 10c0/b36fd0d4e3fef8456915fcf7742e58fbfcc12a17a018e0eb9501c9d5ef6893b596466f03b0564b81af29ff2538fd0aa4b9d54fe5ccbfb4c90ea50ad29fe2d221 - languageName: node - linkType: hard - -"cookie@npm:0.6.0": - version: 0.6.0 - resolution: "cookie@npm:0.6.0" - checksum: 10c0/f2318b31af7a31b4ddb4a678d024514df5e705f9be5909a192d7f116cfb6d45cbacf96a473fa733faa95050e7cff26e7832bb3ef94751592f1387b71c8956686 - languageName: node - linkType: hard - -"cookies@npm:~0.9.0": - version: 0.9.1 - resolution: "cookies@npm:0.9.1" - dependencies: - depd: "npm:~2.0.0" - keygrip: "npm:~1.1.0" - checksum: 10c0/3ffa1c0e992b62ee119adae4dd2ddd4a89166fa5434cd9bd9ff84ec4d2f14dfe2318a601280abfe32a4f64f884ec9345fb1912e488b002d188d2efa0d3919ba3 - languageName: node - linkType: hard - -"core-util-is@npm:^1.0.3, core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 - languageName: node - linkType: hard - -"cors@npm:2.8.5": - version: 2.8.5 - resolution: "cors@npm:2.8.5" - dependencies: - object-assign: "npm:^4" - vary: "npm:^1" - checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 - languageName: node - linkType: hard - -"cosmiconfig@npm:^8.2.0": - version: 8.3.6 - resolution: "cosmiconfig@npm:8.3.6" - dependencies: - import-fresh: "npm:^3.3.0" - js-yaml: "npm:^4.1.0" - parse-json: "npm:^5.2.0" - path-type: "npm:^4.0.0" - peerDependencies: - typescript: ">=4.9.5" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/0382a9ed13208f8bfc22ca2f62b364855207dffdb73dc26e150ade78c3093f1cf56172df2dd460c8caf2afa91c0ed4ec8a88c62f8f9cd1cf423d26506aa8797a - languageName: node - linkType: hard - -"create-require@npm:^1.1.0": - version: 1.1.1 - resolution: "create-require@npm:1.1.1" - checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91 - languageName: node - linkType: hard - -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2": - version: 7.0.3 - resolution: "cross-spawn@npm:7.0.3" - dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10c0/5738c312387081c98d69c98e105b6327b069197f864a60593245d64c8089c8a0a744e16349281210d56835bb9274130d825a78b2ad6853ca13cfbeffc0c31750 - languageName: node - linkType: hard - -"debug@npm:2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: "npm:2.0.0" - checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 - languageName: node - linkType: hard - -"debug@npm:4, debug@npm:^4, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": - version: 4.3.4 - resolution: "debug@npm:4.3.4" - dependencies: - ms: "npm:2.1.2" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10c0/cedbec45298dd5c501d01b92b119cd3faebe5438c3917ff11ae1bff86a6c722930ac9c8659792824013168ba6db7c4668225d845c633fbdafbbf902a6389f736 - languageName: node - linkType: hard - -"deep-equal@npm:~1.0.1": - version: 1.0.1 - resolution: "deep-equal@npm:1.0.1" - checksum: 10c0/bef838ef9824e124d10335deb9c7540bfc9f2f0eab17ad1bb870d0eee83ee4e7e6f6f892e5eebc2bd82759a76676926ad5246180097e28e57752176ff7dae888 - languageName: node - linkType: hard - -"deep-is@npm:^0.1.3": - version: 0.1.4 - resolution: "deep-is@npm:0.1.4" - checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c - languageName: node - linkType: hard - -"deepmerge@npm:^4.2.2": - version: 4.3.1 - resolution: "deepmerge@npm:4.3.1" - checksum: 10c0/e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044 - languageName: node - linkType: hard - -"defaults@npm:^1.0.3": - version: 1.0.4 - resolution: "defaults@npm:1.0.4" - dependencies: - clone: "npm:^1.0.2" - checksum: 10c0/9cfbe498f5c8ed733775db62dfd585780387d93c17477949e1670bfcfb9346e0281ce8c4bf9f4ac1fc0f9b851113bd6dc9e41182ea1644ccd97de639fa13c35a - languageName: node - linkType: hard - -"define-data-property@npm:^1.1.4": - version: 1.1.4 - resolution: "define-data-property@npm:1.1.4" - dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.0.1" - checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37 - languageName: node - linkType: hard - -"delegates@npm:^1.0.0": - version: 1.0.0 - resolution: "delegates@npm:1.0.0" - checksum: 10c0/ba05874b91148e1db4bf254750c042bf2215febd23a6d3cda2e64896aef79745fbd4b9996488bd3cafb39ce19dbce0fd6e3b6665275638befffe1c9b312b91b5 - languageName: node - linkType: hard - -"depd@npm:2.0.0, depd@npm:^2.0.0, depd@npm:~2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c - languageName: node - linkType: hard - -"depd@npm:~1.1.2": - version: 1.1.2 - resolution: "depd@npm:1.1.2" - checksum: 10c0/acb24aaf936ef9a227b6be6d495f0d2eb20108a9a6ad40585c5bda1a897031512fef6484e4fdbb80bd249fdaa82841fa1039f416ece03188e677ba11bcfda249 - languageName: node - linkType: hard - -"destroy@npm:1.2.0, destroy@npm:^1.0.4": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 - languageName: node - linkType: hard - -"diff@npm:^4.0.1": - version: 4.0.2 - resolution: "diff@npm:4.0.2" - checksum: 10c0/81b91f9d39c4eaca068eb0c1eb0e4afbdc5bb2941d197f513dd596b820b956fef43485876226d65d497bebc15666aa2aa82c679e84f65d5f2bfbf14ee46e32c1 - languageName: node - linkType: hard - -"dir-glob@npm:^3.0.1": - version: 3.0.1 - resolution: "dir-glob@npm:3.0.1" - dependencies: - path-type: "npm:^4.0.0" - checksum: 10c0/dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c - languageName: node - linkType: hard - -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 - languageName: node - linkType: hard - -"electron-to-chromium@npm:^1.4.668": - version: 1.4.736 - resolution: "electron-to-chromium@npm:1.4.736" - checksum: 10c0/f3acb515dcb9333b318f9a8ee80a0c3975162da6cc45d9c00152e0de7004b2bfe1246fe6cdf0c41a1b7016780bd4324aff848830aba4227cb55480c1aa32d248 - languageName: node - linkType: hard - -"emoji-regex@npm:^8.0.0": - version: 8.0.0 - resolution: "emoji-regex@npm:8.0.0" - checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 - languageName: node - linkType: hard - -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 - languageName: node - linkType: hard - -"enabled@npm:2.0.x": - version: 2.0.0 - resolution: "enabled@npm:2.0.0" - checksum: 10c0/3b2c2af9bc7f8b9e291610f2dde4a75cf6ee52a68f4dd585482fbdf9a55d65388940e024e56d40bb03e05ef6671f5f53021fa8b72a20e954d7066ec28166713f - languageName: node - linkType: hard - -"encodeurl@npm:^1.0.2, encodeurl@npm:~1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec - languageName: node - linkType: hard - -"encoding@npm:^0.1.13": - version: 0.1.13 - resolution: "encoding@npm:0.1.13" - dependencies: - iconv-lite: "npm:^0.6.2" - checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 - languageName: node - linkType: hard - -"enhanced-resolve@npm:^5.15.0, enhanced-resolve@npm:^5.7.0": - version: 5.16.0 - resolution: "enhanced-resolve@npm:5.16.0" - dependencies: - graceful-fs: "npm:^4.2.4" - tapable: "npm:^2.2.0" - checksum: 10c0/dd69669cbb638ccacefd03e04d5e195ee6a99b7f5f8012f86d2df7781834de357923e06064ea621137c4ce0b37cc12b872b4e6d1ac6ab15fe98e7f1dfbbb08c4 - languageName: node - linkType: hard - -"env-paths@npm:^2.2.0": - version: 2.2.1 - resolution: "env-paths@npm:2.2.1" - checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 - languageName: node - linkType: hard - -"err-code@npm:^2.0.2": - version: 2.0.3 - resolution: "err-code@npm:2.0.3" - checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 - languageName: node - linkType: hard - -"error-ex@npm:^1.3.1": - version: 1.3.2 - resolution: "error-ex@npm:1.3.2" - dependencies: - is-arrayish: "npm:^0.2.1" - checksum: 10c0/ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce - languageName: node - linkType: hard - -"es-check@npm:7.1.1": - version: 7.1.1 - resolution: "es-check@npm:7.1.1" - dependencies: - acorn: "npm:8.8.2" - commander: "npm:10.0.0" - fast-glob: "npm:^3.2.12" - supports-color: "npm:^8.1.1" - winston: "npm:^3.8.2" - bin: - es-check: index.js - checksum: 10c0/5a9ad5b64cb87e1ce88ac8a6fcbe2dbb0cd6d80edf70a93faf1dc306c0b752a43218bb151fe54e51eaa7f8e67d37e2255fcb715399e6ccc236f8ad43e44bf187 - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0": - version: 1.0.0 - resolution: "es-define-property@npm:1.0.0" - dependencies: - get-intrinsic: "npm:^1.2.4" - checksum: 10c0/6bf3191feb7ea2ebda48b577f69bdfac7a2b3c9bcf97307f55fd6ef1bbca0b49f0c219a935aca506c993d8c5d8bddd937766cb760cd5e5a1071351f2df9f9aa4 - languageName: node - linkType: hard - -"es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 - languageName: node - linkType: hard - -"es-module-lexer@npm:^1.2.1": - version: 1.5.0 - resolution: "es-module-lexer@npm:1.5.0" - checksum: 10c0/d199853404f3381801eb102befb84a8fc48f93ed86b852c2461c2c4ad4bbbc91128f3d974ff9b8718628260ae3f36e661295ab3e419222868aa31269284e34c9 - languageName: node - linkType: hard - -"escalade@npm:^3.1.1": - version: 3.1.2 - resolution: "escalade@npm:3.1.2" - checksum: 10c0/6b4adafecd0682f3aa1cd1106b8fff30e492c7015b178bc81b2d2f75106dabea6c6d6e8508fc491bd58e597c74abb0e8e2368f943ecb9393d4162e3c2f3cf287 - languageName: node - linkType: hard - -"escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^4.0.0": - version: 4.0.0 - resolution: "escape-string-regexp@npm:4.0.0" - checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^5.0.0": - version: 5.0.0 - resolution: "escape-string-regexp@npm:5.0.0" - checksum: 10c0/6366f474c6f37a802800a435232395e04e9885919873e382b157ab7e8f0feb8fed71497f84a6f6a81a49aab41815522f5839112bd38026d203aea0c91622df95 - languageName: node - linkType: hard - -"eslint-scope@npm:5.1.1": - version: 5.1.1 - resolution: "eslint-scope@npm:5.1.1" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^4.1.1" - checksum: 10c0/d30ef9dc1c1cbdece34db1539a4933fe3f9b14e1ffb27ecc85987902ee663ad7c9473bbd49a9a03195a373741e62e2f807c4938992e019b511993d163450e70a - languageName: node - linkType: hard - -"eslint-scope@npm:^8.0.1": - version: 8.0.1 - resolution: "eslint-scope@npm:8.0.1" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10c0/0ec40ab284e58ac7ef064ecd23c127e03d339fa57173c96852336c73afc70ce5631da21dc1c772415a37a421291845538dd69db83c68d611044c0fde1d1fa269 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.3": - version: 3.4.3 - resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^4.0.0": - version: 4.0.0 - resolution: "eslint-visitor-keys@npm:4.0.0" - checksum: 10c0/76619f42cf162705a1515a6868e6fc7567e185c7063a05621a8ac4c3b850d022661262c21d9f1fc1d144ecf0d5d64d70a3f43c15c3fc969a61ace0fb25698cf5 - languageName: node - linkType: hard - -"eslint@npm:^9.0.0": - version: 9.0.0 - resolution: "eslint@npm:9.0.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@eslint-community/regexpp": "npm:^4.6.1" - "@eslint/eslintrc": "npm:^3.0.2" - "@eslint/js": "npm:9.0.0" - "@humanwhocodes/config-array": "npm:^0.12.3" - "@humanwhocodes/module-importer": "npm:^1.0.1" - "@nodelib/fs.walk": "npm:^1.2.8" - ajv: "npm:^6.12.4" - chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.2" - debug: "npm:^4.3.2" - escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^8.0.1" - eslint-visitor-keys: "npm:^4.0.0" - espree: "npm:^10.0.1" - esquery: "npm:^1.4.2" - esutils: "npm:^2.0.2" - fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^8.0.0" - find-up: "npm:^5.0.0" - glob-parent: "npm:^6.0.2" - graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.0" - imurmurhash: "npm:^0.1.4" - is-glob: "npm:^4.0.0" - is-path-inside: "npm:^3.0.3" - json-stable-stringify-without-jsonify: "npm:^1.0.1" - levn: "npm:^0.4.1" - lodash.merge: "npm:^4.6.2" - minimatch: "npm:^3.1.2" - natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.3" - strip-ansi: "npm:^6.0.1" - text-table: "npm:^0.2.0" - bin: - eslint: bin/eslint.js - checksum: 10c0/ab23e45cfef5ec174fc165edc03e0d6655fd7e50fd18068e6d966e9640f0d0a9048244e1297569ba4fd1ccddcfc0b00fb0c9723caa4209e0b2b23139ae688368 - languageName: node - linkType: hard - -"espree@npm:^10.0.1": - version: 10.0.1 - resolution: "espree@npm:10.0.1" - dependencies: - acorn: "npm:^8.11.3" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^4.0.0" - checksum: 10c0/7c0f84afa0f9db7bb899619e6364ed832ef13fe8943691757ddde9a1805ae68b826ed66803323015f707a629a5507d0d290edda2276c25131fe0ad883b8b5636 - languageName: node - linkType: hard - -"esprima@npm:^4.0.1": - version: 4.0.1 - resolution: "esprima@npm:4.0.1" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 - languageName: node - linkType: hard - -"esquery@npm:^1.4.2": - version: 1.5.0 - resolution: "esquery@npm:1.5.0" - dependencies: - estraverse: "npm:^5.1.0" - checksum: 10c0/a084bd049d954cc88ac69df30534043fb2aee5555b56246493f42f27d1e168f00d9e5d4192e46f10290d312dc30dc7d58994d61a609c579c1219d636996f9213 - languageName: node - linkType: hard - -"esrecurse@npm:^4.3.0": - version: 4.3.0 - resolution: "esrecurse@npm:4.3.0" - dependencies: - estraverse: "npm:^5.2.0" - checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 - languageName: node - linkType: hard - -"estraverse@npm:^4.1.1": - version: 4.3.0 - resolution: "estraverse@npm:4.3.0" - checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d - languageName: node - linkType: hard - -"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 - languageName: node - linkType: hard - -"esutils@npm:^2.0.2": - version: 2.0.3 - resolution: "esutils@npm:2.0.3" - checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 - languageName: node - linkType: hard - -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 - languageName: node - linkType: hard - -"event-proxy-server@workspace:utils/event-proxy-server": - version: 0.0.0-use.local - resolution: "event-proxy-server@workspace:utils/event-proxy-server" - dependencies: - "@sentry/types": "npm:8.0.0-alpha.9" - "@sentry/utils": "npm:8.0.0-alpha.9" - languageName: unknown - linkType: soft - -"events@npm:^3.2.0": - version: 3.3.0 - resolution: "events@npm:3.3.0" - checksum: 10c0/d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6 - languageName: node - linkType: hard - -"exponential-backoff@npm:^3.1.1": - version: 3.1.1 - resolution: "exponential-backoff@npm:3.1.1" - checksum: 10c0/160456d2d647e6019640bd07111634d8c353038d9fa40176afb7cd49b0548bdae83b56d05e907c2cce2300b81cae35d800ef92fefb9d0208e190fa3b7d6bb579 - languageName: node - linkType: hard - -"express-test-application@workspace:apps/express": - version: 0.0.0-use.local - resolution: "express-test-application@workspace:apps/express" - dependencies: - "@sentry/node": "npm:^8.0.0-alpha.9" - "@types/express": "npm:^4" - express: "npm:^4.19.2" - languageName: unknown - linkType: soft - -"express@npm:4.19.2, express@npm:^4.19.2": - version: 4.19.2 - resolution: "express@npm:4.19.2" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:1.20.2" - content-disposition: "npm:0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:0.6.0" - cookie-signature: "npm:1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:1.2.0" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - merge-descriptors: "npm:1.0.1" - methods: "npm:~1.1.2" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:0.1.7" - proxy-addr: "npm:~2.0.7" - qs: "npm:6.11.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:0.18.0" - serve-static: "npm:1.15.0" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10c0/e82e2662ea9971c1407aea9fc3c16d6b963e55e3830cd0ef5e00b533feda8b770af4e3be630488ef8a752d7c75c4fcefb15892868eeaafe7353cb9e3e269fdcb - languageName: node - linkType: hard - -"external-editor@npm:^3.0.3, external-editor@npm:^3.1.0": - version: 3.1.0 - resolution: "external-editor@npm:3.1.0" - dependencies: - chardet: "npm:^0.7.0" - iconv-lite: "npm:^0.4.24" - tmp: "npm:^0.0.33" - checksum: 10c0/c98f1ba3efdfa3c561db4447ff366a6adb5c1e2581462522c56a18bf90dfe4da382f9cd1feee3e330108c3595a854b218272539f311ba1b3298f841eb0fbf339 - languageName: node - linkType: hard - -"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": - version: 3.1.3 - resolution: "fast-deep-equal@npm:3.1.3" - checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 - languageName: node - linkType: hard - -"fast-glob@npm:^3.2.12, fast-glob@npm:^3.2.9": - version: 3.3.2 - resolution: "fast-glob@npm:3.3.2" - dependencies: - "@nodelib/fs.stat": "npm:^2.0.2" - "@nodelib/fs.walk": "npm:^1.2.3" - glob-parent: "npm:^5.1.2" - merge2: "npm:^1.3.0" - micromatch: "npm:^4.0.4" - checksum: 10c0/42baad7b9cd40b63e42039132bde27ca2cb3a4950d0a0f9abe4639ea1aa9d3e3b40f98b1fe31cbc0cc17b664c9ea7447d911a152fa34ec5b72977b125a6fc845 - languageName: node - linkType: hard - -"fast-json-stable-stringify@npm:^2.0.0": - version: 2.1.0 - resolution: "fast-json-stable-stringify@npm:2.1.0" - checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b - languageName: node - linkType: hard - -"fast-levenshtein@npm:^2.0.6": - version: 2.0.6 - resolution: "fast-levenshtein@npm:2.0.6" - checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 - languageName: node - linkType: hard - -"fast-safe-stringify@npm:2.1.1": - version: 2.1.1 - resolution: "fast-safe-stringify@npm:2.1.1" - checksum: 10c0/d90ec1c963394919828872f21edaa3ad6f1dddd288d2bd4e977027afff09f5db40f94e39536d4646f7e01761d704d72d51dce5af1b93717f3489ef808f5f4e4d - languageName: node - linkType: hard - -"fastq@npm:^1.6.0": - version: 1.17.1 - resolution: "fastq@npm:1.17.1" - dependencies: - reusify: "npm:^1.0.4" - checksum: 10c0/1095f16cea45fb3beff558bb3afa74ca7a9250f5a670b65db7ed585f92b4b48381445cd328b3d87323da81e43232b5d5978a8201bde84e0cd514310f1ea6da34 - languageName: node - linkType: hard - -"fecha@npm:^4.2.0": - version: 4.2.3 - resolution: "fecha@npm:4.2.3" - checksum: 10c0/0e895965959cf6a22bb7b00f0bf546f2783836310f510ddf63f463e1518d4c96dec61ab33fdfd8e79a71b4856a7c865478ce2ee8498d560fe125947703c9b1cf - languageName: node - linkType: hard - -"figures@npm:^3.0.0": - version: 3.2.0 - resolution: "figures@npm:3.2.0" - dependencies: - escape-string-regexp: "npm:^1.0.5" - checksum: 10c0/9c421646ede432829a50bc4e55c7a4eb4bcb7cc07b5bab2f471ef1ab9a344595bbebb6c5c21470093fbb730cd81bbca119624c40473a125293f656f49cb47629 - languageName: node - linkType: hard - -"figures@npm:^5.0.0": - version: 5.0.0 - resolution: "figures@npm:5.0.0" - dependencies: - escape-string-regexp: "npm:^5.0.0" - is-unicode-supported: "npm:^1.2.0" - checksum: 10c0/ce0f17d4ea8b0fc429c5207c343534a2f5284ecfb22aa08607da7dc84ed9e1cf754f5b97760e8dcb98d3c9d1a1e4d3d578fe3b5b99c426f05d0f06c7ba618e16 - languageName: node - linkType: hard - -"file-entry-cache@npm:^8.0.0": - version: 8.0.0 - resolution: "file-entry-cache@npm:8.0.0" - dependencies: - flat-cache: "npm:^4.0.0" - checksum: 10c0/9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 - languageName: node - linkType: hard - -"fill-range@npm:^7.0.1": - version: 7.0.1 - resolution: "fill-range@npm:7.0.1" - dependencies: - to-regex-range: "npm:^5.0.1" - checksum: 10c0/7cdad7d426ffbaadf45aeb5d15ec675bbd77f7597ad5399e3d2766987ed20bda24d5fac64b3ee79d93276f5865608bb22344a26b9b1ae6c4d00bd94bf611623f - languageName: node - linkType: hard - -"finalhandler@npm:1.2.0": - version: 1.2.0 - resolution: "finalhandler@npm:1.2.0" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:2.0.1" - unpipe: "npm:~1.0.0" - checksum: 10c0/64b7e5ff2ad1fcb14931cd012651631b721ce657da24aedb5650ddde9378bf8e95daa451da43398123f5de161a81e79ff5affe4f9f2a6d2df4a813d6d3e254b7 - languageName: node - linkType: hard - -"find-up@npm:^5.0.0": - version: 5.0.0 - resolution: "find-up@npm:5.0.0" - dependencies: - locate-path: "npm:^6.0.0" - path-exists: "npm:^4.0.0" - checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a - languageName: node - linkType: hard - -"flat-cache@npm:^4.0.0": - version: 4.0.1 - resolution: "flat-cache@npm:4.0.1" - dependencies: - flatted: "npm:^3.2.9" - keyv: "npm:^4.5.4" - checksum: 10c0/2c59d93e9faa2523e4fda6b4ada749bed432cfa28c8e251f33b25795e426a1c6dbada777afb1f74fcfff33934fdbdea921ee738fcc33e71adc9d6eca984a1cfc - languageName: node - linkType: hard - -"flatted@npm:^3.2.9": - version: 3.3.1 - resolution: "flatted@npm:3.3.1" - checksum: 10c0/324166b125ee07d4ca9bcf3a5f98d915d5db4f39d711fba640a3178b959919aae1f7cfd8aabcfef5826ed8aa8a2aa14cc85b2d7d18ff638ddf4ae3df39573eaf - languageName: node - linkType: hard - -"fn.name@npm:1.x.x": - version: 1.1.0 - resolution: "fn.name@npm:1.1.0" - checksum: 10c0/8ad62aa2d4f0b2a76d09dba36cfec61c540c13a0fd72e5d94164e430f987a7ce6a743112bbeb14877c810ef500d1f73d7f56e76d029d2e3413f20d79e3460a9a - languageName: node - linkType: hard - -"foreground-child@npm:^3.1.0": - version: 3.1.1 - resolution: "foreground-child@npm:3.1.1" - dependencies: - cross-spawn: "npm:^7.0.0" - signal-exit: "npm:^4.0.1" - checksum: 10c0/9700a0285628abaeb37007c9a4d92bd49f67210f09067638774338e146c8e9c825c5c877f072b2f75f41dc6a2d0be8664f79ffc03f6576649f54a84fb9b47de0 - languageName: node - linkType: hard - -"fork-ts-checker-webpack-plugin@npm:9.0.2": - version: 9.0.2 - resolution: "fork-ts-checker-webpack-plugin@npm:9.0.2" - dependencies: - "@babel/code-frame": "npm:^7.16.7" - chalk: "npm:^4.1.2" - chokidar: "npm:^3.5.3" - cosmiconfig: "npm:^8.2.0" - deepmerge: "npm:^4.2.2" - fs-extra: "npm:^10.0.0" - memfs: "npm:^3.4.1" - minimatch: "npm:^3.0.4" - node-abort-controller: "npm:^3.0.1" - schema-utils: "npm:^3.1.1" - semver: "npm:^7.3.5" - tapable: "npm:^2.2.1" - peerDependencies: - typescript: ">3.6.0" - webpack: ^5.11.0 - checksum: 10c0/37e11dadcc65d297f07882f1661795289f2bf16fa9dea0b90bcc438855d48787378bce4dfcd8e842782f220503438995efbb28cbe560126f6a744ff740e8cc38 - languageName: node - linkType: hard - -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 - languageName: node - linkType: hard - -"fresh@npm:0.5.2, fresh@npm:~0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a - languageName: node - linkType: hard - -"fs-extra@npm:^10.0.0": - version: 10.1.0 - resolution: "fs-extra@npm:10.1.0" - dependencies: - graceful-fs: "npm:^4.2.0" - jsonfile: "npm:^6.0.1" - universalify: "npm:^2.0.0" - checksum: 10c0/5f579466e7109719d162a9249abbeffe7f426eb133ea486e020b89bc6d67a741134076bf439983f2eb79276ceaf6bd7b7c1e43c3fd67fe889863e69072fb0a5e - languageName: node - linkType: hard - -"fs-minipass@npm:^2.0.0": - version: 2.1.0 - resolution: "fs-minipass@npm:2.1.0" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/703d16522b8282d7299337539c3ed6edddd1afe82435e4f5b76e34a79cd74e488a8a0e26a636afc2440e1a23b03878e2122e3a2cfe375a5cf63c37d92b86a004 - languageName: node - linkType: hard - -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 - languageName: node - linkType: hard - -"fs-monkey@npm:^1.0.4": - version: 1.0.5 - resolution: "fs-monkey@npm:1.0.5" - checksum: 10c0/815025e75549fb1ac6c403413b82fd631eded862ae27694a515c0f666069e95874ab34e79c33d1b3b8c87d1e54350d5e4262090d0aa5bd7130143cbc627537e4 - languageName: node - linkType: hard - -"fs.realpath@npm:^1.0.0": - version: 1.0.0 - resolution: "fs.realpath@npm:1.0.0" - checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 - languageName: node - linkType: hard - -"fsevents@npm:~2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" - dependencies: - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - has-proto: "npm:^1.0.1" - has-symbols: "npm:^1.0.3" - hasown: "npm:^2.0.0" - checksum: 10c0/0a9b82c16696ed6da5e39b1267104475c47e3a9bdbe8b509dfe1710946e38a87be70d759f4bb3cda042d76a41ef47fe769660f3b7c0d1f68750299344ffb15b7 - languageName: node - linkType: hard - -"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": - version: 5.1.2 - resolution: "glob-parent@npm:5.1.2" - dependencies: - is-glob: "npm:^4.0.1" - checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee - languageName: node - linkType: hard - -"glob-parent@npm:^6.0.2": - version: 6.0.2 - resolution: "glob-parent@npm:6.0.2" - dependencies: - is-glob: "npm:^4.0.3" - checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 - languageName: node - linkType: hard - -"glob-to-regexp@npm:^0.4.1": - version: 0.4.1 - resolution: "glob-to-regexp@npm:0.4.1" - checksum: 10c0/0486925072d7a916f052842772b61c3e86247f0a80cc0deb9b5a3e8a1a9faad5b04fb6f58986a09f34d3e96cd2a22a24b7e9882fb1cf904c31e9a310de96c429 - languageName: node - linkType: hard - -"glob@npm:10.3.10": - version: 10.3.10 - resolution: "glob@npm:10.3.10" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^2.3.5" - minimatch: "npm:^9.0.1" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - path-scurry: "npm:^1.10.1" - bin: - glob: dist/esm/bin.mjs - checksum: 10c0/13d8a1feb7eac7945f8c8480e11cd4a44b24d26503d99a8d8ac8d5aefbf3e9802a2b6087318a829fad04cb4e829f25c5f4f1110c68966c498720dd261c7e344d - languageName: node - linkType: hard - -"glob@npm:^10.2.2, glob@npm:^10.3.10": - version: 10.3.12 - resolution: "glob@npm:10.3.12" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^2.3.6" - minimatch: "npm:^9.0.1" - minipass: "npm:^7.0.4" - path-scurry: "npm:^1.10.2" - bin: - glob: dist/esm/bin.mjs - checksum: 10c0/f60cefdc1cf3f958b2bb5823e1b233727f04916d489dc4641d76914f016e6704421e06a83cbb68b0cb1cb9382298b7a88075b844ad2127fc9727ea22b18b0711 - languageName: node - linkType: hard - -"glob@npm:^7.0.0": - version: 7.2.3 - resolution: "glob@npm:7.2.3" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.1.1" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10c0/65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe - languageName: node - linkType: hard - -"glob@npm:^9.2.0": - version: 9.3.5 - resolution: "glob@npm:9.3.5" - dependencies: - fs.realpath: "npm:^1.0.0" - minimatch: "npm:^8.0.2" - minipass: "npm:^4.2.4" - path-scurry: "npm:^1.6.1" - checksum: 10c0/2f6c2b9ee019ee21dc258ae97a88719614591e4c979cb4580b1b9df6f0f778a3cb38b4bdaf18dfa584637ea10f89a3c5f2533a5e449cf8741514ad18b0951f2e - languageName: node - linkType: hard - -"globals@npm:^14.0.0": - version: 14.0.0 - resolution: "globals@npm:14.0.0" - checksum: 10c0/b96ff42620c9231ad468d4c58ff42afee7777ee1c963013ff8aabe095a451d0ceeb8dcd8ef4cbd64d2538cef45f787a78ba3a9574f4a634438963e334471302d - languageName: node - linkType: hard - -"globals@npm:^15.0.0": - version: 15.0.0 - resolution: "globals@npm:15.0.0" - checksum: 10c0/b93e356a7bd4562d73a9defa95a0ff5e8a0b7726a4e2af16bd8ad019e14cd21d85e0a27b46e7e270d34e25df0bc0f9473ca21b47266c406c0e40973956085777 - languageName: node - linkType: hard - -"globby@npm:^11.1.0": - version: 11.1.0 - resolution: "globby@npm:11.1.0" - dependencies: - array-union: "npm:^2.1.0" - dir-glob: "npm:^3.0.1" - fast-glob: "npm:^3.2.9" - ignore: "npm:^5.2.0" - merge2: "npm:^1.4.1" - slash: "npm:^3.0.0" - checksum: 10c0/b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189 - languageName: node - linkType: hard - -"gopd@npm:^1.0.1": - version: 1.0.1 - resolution: "gopd@npm:1.0.1" - dependencies: - get-intrinsic: "npm:^1.1.3" - checksum: 10c0/505c05487f7944c552cee72087bf1567debb470d4355b1335f2c262d218ebbff805cd3715448fe29b4b380bae6912561d0467233e4165830efd28da241418c63 - languageName: node - linkType: hard - -"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 - languageName: node - linkType: hard - -"graphemer@npm:^1.4.0": - version: 1.4.0 - resolution: "graphemer@npm:1.4.0" - checksum: 10c0/e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31 - languageName: node - linkType: hard - -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 - languageName: node - linkType: hard - -"has-flag@npm:^4.0.0": - version: 4.0.0 - resolution: "has-flag@npm:4.0.0" - checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 - languageName: node - linkType: hard - -"has-own-prop@npm:^2.0.0": - version: 2.0.0 - resolution: "has-own-prop@npm:2.0.0" - checksum: 10c0/2745497283d80228b5c5fbb8c63ab1029e604bce7db8d4b36255e427b3695b2153dc978b176674d0dd2a23f132809e04d7ef41fefc0ab85870a5caa918c5c0d9 - languageName: node - linkType: hard - -"has-property-descriptors@npm:^1.0.2": - version: 1.0.2 - resolution: "has-property-descriptors@npm:1.0.2" - dependencies: - es-define-property: "npm:^1.0.0" - checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236 - languageName: node - linkType: hard - -"has-proto@npm:^1.0.1": - version: 1.0.3 - resolution: "has-proto@npm:1.0.3" - checksum: 10c0/35a6989f81e9f8022c2f4027f8b48a552de714938765d019dbea6bb547bd49ce5010a3c7c32ec6ddac6e48fc546166a3583b128f5a7add8b058a6d8b4afec205 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.3": - version: 1.0.3 - resolution: "has-symbols@npm:1.0.3" - checksum: 10c0/e6922b4345a3f37069cdfe8600febbca791c94988c01af3394d86ca3360b4b93928bbf395859158f88099cb10b19d98e3bbab7c9ff2c1bd09cf665ee90afa2c3 - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.0": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" - dependencies: - has-symbols: "npm:^1.0.3" - checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c - languageName: node - linkType: hard - -"hasown@npm:^2.0.0": - version: 2.0.2 - resolution: "hasown@npm:2.0.2" - dependencies: - function-bind: "npm:^1.1.2" - checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 - languageName: node - linkType: hard - -"http-assert@npm:^1.3.0": - version: 1.5.0 - resolution: "http-assert@npm:1.5.0" - dependencies: - deep-equal: "npm:~1.0.1" - http-errors: "npm:~1.8.0" - checksum: 10c0/7b4e631114a1a77654f9ba3feb96da305ddbdeb42112fe384b7b3249c7141e460d7177970155bea6e54e655a04850415b744b452c1fe5052eba6f4186d16b095 - languageName: node - linkType: hard - -"http-cache-semantics@npm:^4.1.1": - version: 4.1.1 - resolution: "http-cache-semantics@npm:4.1.1" - checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc - languageName: node - linkType: hard - -"http-errors@npm:2.0.0, http-errors@npm:^2.0.0": - version: 2.0.0 - resolution: "http-errors@npm:2.0.0" - dependencies: - depd: "npm:2.0.0" - inherits: "npm:2.0.4" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - toidentifier: "npm:1.0.1" - checksum: 10c0/fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19 - languageName: node - linkType: hard - -"http-errors@npm:^1.6.3, http-errors@npm:~1.8.0": - version: 1.8.1 - resolution: "http-errors@npm:1.8.1" - dependencies: - depd: "npm:~1.1.2" - inherits: "npm:2.0.4" - setprototypeof: "npm:1.2.0" - statuses: "npm:>= 1.5.0 < 2" - toidentifier: "npm:1.0.1" - checksum: 10c0/f01aeecd76260a6fe7f08e192fcbe9b2f39ed20fc717b852669a69930167053b01790998275c6297d44f435cf0e30edd50c05223d1bec9bc484e6cf35b2d6f43 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^7.0.0": - version: 7.0.2 - resolution: "http-proxy-agent@npm:7.0.2" - dependencies: - agent-base: "npm:^7.1.0" - debug: "npm:^4.3.4" - checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1": - version: 7.0.4 - resolution: "https-proxy-agent@npm:7.0.4" - dependencies: - agent-base: "npm:^7.0.2" - debug: "npm:4" - checksum: 10c0/bc4f7c38da32a5fc622450b6cb49a24ff596f9bd48dcedb52d2da3fa1c1a80e100fb506bd59b326c012f21c863c69b275c23de1a01d0b84db396822fdf25e52b - languageName: node - linkType: hard - -"iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 - languageName: node - linkType: hard - -"iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 - languageName: node - linkType: hard - -"ieee754@npm:^1.1.13": - version: 1.2.1 - resolution: "ieee754@npm:1.2.1" - checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb - languageName: node - linkType: hard - -"ignore-by-default@npm:^1.0.1": - version: 1.0.1 - resolution: "ignore-by-default@npm:1.0.1" - checksum: 10c0/9ab6e70e80f7cc12735def7ecb5527cfa56ab4e1152cd64d294522827f2dcf1f6d85531241537dc3713544e88dd888f65cb3c49c7b2cddb9009087c75274e533 - languageName: node - linkType: hard - -"ignore@npm:^5.2.0, ignore@npm:^5.3.1": - version: 5.3.1 - resolution: "ignore@npm:5.3.1" - checksum: 10c0/703f7f45ffb2a27fb2c5a8db0c32e7dee66b33a225d28e8db4e1be6474795f606686a6e3bcc50e1aa12f2042db4c9d4a7d60af3250511de74620fbed052ea4cd - languageName: node - linkType: hard - -"import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": - version: 3.3.0 - resolution: "import-fresh@npm:3.3.0" - dependencies: - parent-module: "npm:^1.0.0" - resolve-from: "npm:^4.0.0" - checksum: 10c0/7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3 - languageName: node - linkType: hard - -"import-in-the-middle@npm:1.4.2": - version: 1.4.2 - resolution: "import-in-the-middle@npm:1.4.2" - dependencies: - acorn: "npm:^8.8.2" - acorn-import-assertions: "npm:^1.9.0" - cjs-module-lexer: "npm:^1.2.2" - module-details-from-path: "npm:^1.0.3" - checksum: 10c0/499c8abc90fa5197b9f5823c221fadbb2f6a467650761151519d855c160c2a55fae5e55334634ca9fc0c42fe97b94754fb17ccd61132e8507760de6e9bf33795 - languageName: node - linkType: hard - -"import-in-the-middle@npm:1.7.1": - version: 1.7.1 - resolution: "import-in-the-middle@npm:1.7.1" - dependencies: - acorn: "npm:^8.8.2" - acorn-import-assertions: "npm:^1.9.0" - cjs-module-lexer: "npm:^1.2.2" - module-details-from-path: "npm:^1.0.3" - checksum: 10c0/992619fba916a758a1ed06cd47b6ab47f25cbab61987a887e0971cdbadff8c619a2f27b06d630f6d12ac644b9171d15538299e36355c001c58ca1b85c87a8a5a - languageName: node - linkType: hard - -"import-in-the-middle@npm:^1.7.2": - version: 1.7.3 - resolution: "import-in-the-middle@npm:1.7.3" - dependencies: - acorn: "npm:^8.8.2" - acorn-import-assertions: "npm:^1.9.0" - cjs-module-lexer: "npm:^1.2.2" - module-details-from-path: "npm:^1.0.3" - checksum: 10c0/68a904ba5893670a212a9e6b651fb535feab274cdd86b38a095a2a9ff3d344306fa6a1b4aa2dc21bfa3206f81912ad1b633b5da5e81ddfbbce4a5d62900bf65f - languageName: node - linkType: hard - -"imurmurhash@npm:^0.1.4": - version: 0.1.4 - resolution: "imurmurhash@npm:0.1.4" - checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 - languageName: node - linkType: hard - -"indent-string@npm:^4.0.0": - version: 4.0.0 - resolution: "indent-string@npm:4.0.0" - checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f - languageName: node - linkType: hard - -"inflight@npm:^1.0.4": - version: 1.0.6 - resolution: "inflight@npm:1.0.6" - dependencies: - once: "npm:^1.3.0" - wrappy: "npm:1" - checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 - languageName: node - linkType: hard - -"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": - version: 2.0.4 - resolution: "inherits@npm:2.0.4" - checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 - languageName: node - linkType: hard - -"inquirer@npm:8.2.6": - version: 8.2.6 - resolution: "inquirer@npm:8.2.6" - dependencies: - ansi-escapes: "npm:^4.2.1" - chalk: "npm:^4.1.1" - cli-cursor: "npm:^3.1.0" - cli-width: "npm:^3.0.0" - external-editor: "npm:^3.0.3" - figures: "npm:^3.0.0" - lodash: "npm:^4.17.21" - mute-stream: "npm:0.0.8" - ora: "npm:^5.4.1" - run-async: "npm:^2.4.0" - rxjs: "npm:^7.5.5" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - through: "npm:^2.3.6" - wrap-ansi: "npm:^6.0.1" - checksum: 10c0/eb5724de1778265323f3a68c80acfa899378cb43c24cdcb58661386500e5696b6b0b6c700e046b7aa767fe7b4823c6f04e6ddc268173e3f84116112529016296 - languageName: node - linkType: hard - -"inquirer@npm:9.2.12": - version: 9.2.12 - resolution: "inquirer@npm:9.2.12" - dependencies: - "@ljharb/through": "npm:^2.3.11" - ansi-escapes: "npm:^4.3.2" - chalk: "npm:^5.3.0" - cli-cursor: "npm:^3.1.0" - cli-width: "npm:^4.1.0" - external-editor: "npm:^3.1.0" - figures: "npm:^5.0.0" - lodash: "npm:^4.17.21" - mute-stream: "npm:1.0.0" - ora: "npm:^5.4.1" - run-async: "npm:^3.0.0" - rxjs: "npm:^7.8.1" - string-width: "npm:^4.2.3" - strip-ansi: "npm:^6.0.1" - wrap-ansi: "npm:^6.2.0" - checksum: 10c0/efc19864bea5f4b22a47e686aa88684ee42352db4e96dd6307da7140496c16e5ef0e74be664fba490b068714dc24d72f66dc1907a1ccbaf9d58d6156cbdc5908 - languageName: node - linkType: hard - -"interpret@npm:^1.0.0": - version: 1.4.0 - resolution: "interpret@npm:1.4.0" - checksum: 10c0/08c5ad30032edeec638485bc3f6db7d0094d9b3e85e0f950866600af3c52e9fd69715416d29564731c479d9f4d43ff3e4d302a178196bdc0e6837ec147640450 - languageName: node - linkType: hard - -"ip-address@npm:^9.0.5": - version: 9.0.5 - resolution: "ip-address@npm:9.0.5" - dependencies: - jsbn: "npm:1.1.0" - sprintf-js: "npm:^1.1.3" - checksum: 10c0/331cd07fafcb3b24100613e4b53e1a2b4feab11e671e655d46dc09ee233da5011284d09ca40c4ecbdfe1d0004f462958675c224a804259f2f78d2465a87824bc - languageName: node - linkType: hard - -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a - languageName: node - linkType: hard - -"is-arrayish@npm:^0.2.1": - version: 0.2.1 - resolution: "is-arrayish@npm:0.2.1" - checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729 - languageName: node - linkType: hard - -"is-arrayish@npm:^0.3.1": - version: 0.3.2 - resolution: "is-arrayish@npm:0.3.2" - checksum: 10c0/f59b43dc1d129edb6f0e282595e56477f98c40278a2acdc8b0a5c57097c9eff8fe55470493df5775478cf32a4dc8eaf6d3a749f07ceee5bc263a78b2434f6a54 - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" - dependencies: - binary-extensions: "npm:^2.0.0" - checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 - languageName: node - linkType: hard - -"is-core-module@npm:^2.13.0": - version: 2.13.1 - resolution: "is-core-module@npm:2.13.1" - dependencies: - hasown: "npm:^2.0.0" - checksum: 10c0/2cba9903aaa52718f11c4896dabc189bab980870aae86a62dc0d5cedb546896770ee946fb14c84b7adf0735f5eaea4277243f1b95f5cefa90054f92fbcac2518 - languageName: node - linkType: hard - -"is-extglob@npm:^2.1.1": - version: 2.1.1 - resolution: "is-extglob@npm:2.1.1" - checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^3.0.0": - version: 3.0.0 - resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc - languageName: node - linkType: hard - -"is-generator-function@npm:^1.0.7": - version: 1.0.10 - resolution: "is-generator-function@npm:1.0.10" - dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10c0/df03514df01a6098945b5a0cfa1abff715807c8e72f57c49a0686ad54b3b74d394e2d8714e6f709a71eb00c9630d48e73ca1796c1ccc84ac95092c1fecc0d98b - languageName: node - linkType: hard - -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": - version: 4.0.3 - resolution: "is-glob@npm:4.0.3" - dependencies: - is-extglob: "npm:^2.1.1" - checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a - languageName: node - linkType: hard - -"is-interactive@npm:^1.0.0": - version: 1.0.0 - resolution: "is-interactive@npm:1.0.0" - checksum: 10c0/dd47904dbf286cd20aa58c5192161be1a67138485b9836d5a70433b21a45442e9611b8498b8ab1f839fc962c7620667a50535fdfb4a6bc7989b8858645c06b4d - languageName: node - linkType: hard - -"is-lambda@npm:^1.0.1": - version: 1.0.1 - resolution: "is-lambda@npm:1.0.1" - checksum: 10c0/85fee098ae62ba6f1e24cf22678805473c7afd0fb3978a3aa260e354cb7bcb3a5806cf0a98403188465efedec41ab4348e8e4e79305d409601323855b3839d4d - languageName: node - linkType: hard - -"is-number@npm:^7.0.0": - version: 7.0.0 - resolution: "is-number@npm:7.0.0" - checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 - languageName: node - linkType: hard - -"is-path-inside@npm:^3.0.3": - version: 3.0.3 - resolution: "is-path-inside@npm:3.0.3" - checksum: 10c0/cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05 - languageName: node - linkType: hard - -"is-stream@npm:^2.0.0": - version: 2.0.1 - resolution: "is-stream@npm:2.0.1" - checksum: 10c0/7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5 - languageName: node - linkType: hard - -"is-unicode-supported@npm:^0.1.0": - version: 0.1.0 - resolution: "is-unicode-supported@npm:0.1.0" - checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453 - languageName: node - linkType: hard - -"is-unicode-supported@npm:^1.2.0": - version: 1.3.0 - resolution: "is-unicode-supported@npm:1.3.0" - checksum: 10c0/b8674ea95d869f6faabddc6a484767207058b91aea0250803cbf1221345cb0c56f466d4ecea375dc77f6633d248d33c47bd296fb8f4cdba0b4edba8917e83d8a - languageName: node - linkType: hard - -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 - languageName: node - linkType: hard - -"iterare@npm:1.2.1": - version: 1.2.1 - resolution: "iterare@npm:1.2.1" - checksum: 10c0/02667d486e3e83ead028ba8484d927498c2ceab7e8c6a69dd881fd02abc4114f00b13abb36b592252fbb578b6e6f99ca1dfc2835408b9158c9a112a9964f453f - languageName: node - linkType: hard - -"jackspeak@npm:^2.3.5, jackspeak@npm:^2.3.6": - version: 2.3.6 - resolution: "jackspeak@npm:2.3.6" - dependencies: - "@isaacs/cliui": "npm:^8.0.2" - "@pkgjs/parseargs": "npm:^0.11.0" - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 10c0/f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 - languageName: node - linkType: hard - -"jest-worker@npm:^27.4.5": - version: 27.5.1 - resolution: "jest-worker@npm:27.5.1" - dependencies: - "@types/node": "npm:*" - merge-stream: "npm:^2.0.0" - supports-color: "npm:^8.0.0" - checksum: 10c0/8c4737ffd03887b3c6768e4cc3ca0269c0336c1e4b1b120943958ddb035ed2a0fc6acab6dc99631720a3720af4e708ff84fb45382ad1e83c27946adf3623969b - languageName: node - linkType: hard - -"joi@npm:^17.3.0": - version: 17.12.3 - resolution: "joi@npm:17.12.3" - dependencies: - "@hapi/hoek": "npm:^9.3.0" - "@hapi/topo": "npm:^5.1.0" - "@sideway/address": "npm:^4.1.5" - "@sideway/formula": "npm:^3.0.1" - "@sideway/pinpoint": "npm:^2.0.0" - checksum: 10c0/818e51bd2d219339cff91f9d6fef8bab2da396e80a051cf73fb8ce7362c191af395bfa2d0e54eaa9c9cb8d5afafddb54eb768bc3068ab33908cbd5a1697e7d3e - languageName: node - linkType: hard - -"js-tokens@npm:^4.0.0": - version: 4.0.0 - resolution: "js-tokens@npm:4.0.0" - checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed - languageName: node - linkType: hard - -"js-yaml@npm:^4.1.0": - version: 4.1.0 - resolution: "js-yaml@npm:4.1.0" - dependencies: - argparse: "npm:^2.0.1" - bin: - js-yaml: bin/js-yaml.js - checksum: 10c0/184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f - languageName: node - linkType: hard - -"jsbn@npm:1.1.0": - version: 1.1.0 - resolution: "jsbn@npm:1.1.0" - checksum: 10c0/4f907fb78d7b712e11dea8c165fe0921f81a657d3443dde75359ed52eb2b5d33ce6773d97985a089f09a65edd80b11cb75c767b57ba47391fee4c969f7215c96 - languageName: node - linkType: hard - -"json-buffer@npm:3.0.1": - version: 3.0.1 - resolution: "json-buffer@npm:3.0.1" - checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 - languageName: node - linkType: hard - -"json-parse-even-better-errors@npm:^2.3.0, json-parse-even-better-errors@npm:^2.3.1": - version: 2.3.1 - resolution: "json-parse-even-better-errors@npm:2.3.1" - checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3 - languageName: node - linkType: hard - -"json-schema-traverse@npm:^0.4.1": - version: 0.4.1 - resolution: "json-schema-traverse@npm:0.4.1" - checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce - languageName: node - linkType: hard - -"json-schema-traverse@npm:^1.0.0": - version: 1.0.0 - resolution: "json-schema-traverse@npm:1.0.0" - checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 - languageName: node - linkType: hard - -"json-stable-stringify-without-jsonify@npm:^1.0.1": - version: 1.0.1 - resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" - checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 - languageName: node - linkType: hard - -"json5@npm:^2.2.2": - version: 2.2.3 - resolution: "json5@npm:2.2.3" - bin: - json5: lib/cli.js - checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c - languageName: node - linkType: hard - -"jsonc-parser@npm:3.2.0": - version: 3.2.0 - resolution: "jsonc-parser@npm:3.2.0" - checksum: 10c0/5a12d4d04dad381852476872a29dcee03a57439574e4181d91dca71904fcdcc5e8e4706c0a68a2c61ad9810e1e1c5806b5100d52d3e727b78f5cdc595401045b - languageName: node - linkType: hard - -"jsonc-parser@npm:3.2.1": - version: 3.2.1 - resolution: "jsonc-parser@npm:3.2.1" - checksum: 10c0/ada66dec143d7f9cb0e2d0d29c69e9ce40d20f3a4cb96b0c6efb745025ac7f9ba647d7ac0990d0adfc37a2d2ae084a12009a9c833dbdbeadf648879a99b9df89 - languageName: node - linkType: hard - -"jsonfile@npm:^6.0.1": - version: 6.1.0 - resolution: "jsonfile@npm:6.1.0" - dependencies: - graceful-fs: "npm:^4.1.6" - universalify: "npm:^2.0.0" - dependenciesMeta: - graceful-fs: - optional: true - checksum: 10c0/4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865 - languageName: node - linkType: hard - -"keygrip@npm:~1.1.0": - version: 1.1.0 - resolution: "keygrip@npm:1.1.0" - dependencies: - tsscmp: "npm:1.0.6" - checksum: 10c0/2aceec1a1e642a0caf938044056ed67b1909cfe67a93a59b32aae2863e0f35a1a53782ecc8f9cd0e3bdb60863fa0f401ccbd257cd7dfae61915f78445139edea - languageName: node - linkType: hard - -"keyv@npm:^4.5.4": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" - dependencies: - json-buffer: "npm:3.0.1" - checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e - languageName: node - linkType: hard - -"koa-compose@npm:^4.1.0": - version: 4.1.0 - resolution: "koa-compose@npm:4.1.0" - checksum: 10c0/f1f786f994a691931148e7f38f443865bf2702af4a61610d1eea04dab79c04b1232285b59d82a0cf61c830516dd92f10ab0d009b024fcecd4098e7d296ab771a - languageName: node - linkType: hard - -"koa-convert@npm:^2.0.0": - version: 2.0.0 - resolution: "koa-convert@npm:2.0.0" - dependencies: - co: "npm:^4.6.0" - koa-compose: "npm:^4.1.0" - checksum: 10c0/d3e243ceccd11524d5f4942f6ccd828a9b18a1a967c4375192aa9eedf844f790563632839f006732ce8ca720275737c65a3bab344e13b25f41fb2be451ea102c - languageName: node - linkType: hard - -"koa-test-application@workspace:apps/koa": - version: 0.0.0-use.local - resolution: "koa-test-application@workspace:apps/koa" - dependencies: - "@koa/router": "npm:12.0.1" - "@sentry/node": "npm:8.0.0-alpha.9" - "@types/koa": "npm:2.15.0" - "@types/koa__router": "npm:12.0.4" - koa: "npm:2.15.3" - languageName: unknown - linkType: soft - -"koa@npm:2.15.3": - version: 2.15.3 - resolution: "koa@npm:2.15.3" - dependencies: - accepts: "npm:^1.3.5" - cache-content-type: "npm:^1.0.0" - content-disposition: "npm:~0.5.2" - content-type: "npm:^1.0.4" - cookies: "npm:~0.9.0" - debug: "npm:^4.3.2" - delegates: "npm:^1.0.0" - depd: "npm:^2.0.0" - destroy: "npm:^1.0.4" - encodeurl: "npm:^1.0.2" - escape-html: "npm:^1.0.3" - fresh: "npm:~0.5.2" - http-assert: "npm:^1.3.0" - http-errors: "npm:^1.6.3" - is-generator-function: "npm:^1.0.7" - koa-compose: "npm:^4.1.0" - koa-convert: "npm:^2.0.0" - on-finished: "npm:^2.3.0" - only: "npm:~0.0.2" - parseurl: "npm:^1.3.2" - statuses: "npm:^1.5.0" - type-is: "npm:^1.6.16" - vary: "npm:^1.1.2" - checksum: 10c0/1dca5027e06855dfc4144093fc678c445b5718c3a61b3b7840e3def999f3efcd0359665fb30d3f427890dfee12ebb1e7d01e210d2122a17240d2f3ceae12b2f2 - languageName: node - linkType: hard - -"kuler@npm:^2.0.0": - version: 2.0.0 - resolution: "kuler@npm:2.0.0" - checksum: 10c0/0a4e99d92ca373f8f74d1dc37931909c4d0d82aebc94cf2ba265771160fc12c8df34eaaac80805efbda367e2795cb1f1dd4c3d404b6b1cf38aec94035b503d2d - languageName: node - linkType: hard - -"levn@npm:^0.4.1": - version: 0.4.1 - resolution: "levn@npm:0.4.1" - dependencies: - prelude-ls: "npm:^1.2.1" - type-check: "npm:~0.4.0" - checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e - languageName: node - linkType: hard - -"lines-and-columns@npm:^1.1.6": - version: 1.2.4 - resolution: "lines-and-columns@npm:1.2.4" - checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d - languageName: node - linkType: hard - -"loader-runner@npm:^4.2.0": - version: 4.3.0 - resolution: "loader-runner@npm:4.3.0" - checksum: 10c0/a44d78aae0907a72f73966fe8b82d1439c8c485238bd5a864b1b9a2a3257832effa858790241e6b37876b5446a78889adf2fcc8dd897ce54c089ecc0a0ce0bf0 - languageName: node - linkType: hard - -"locate-path@npm:^6.0.0": - version: 6.0.0 - resolution: "locate-path@npm:6.0.0" - dependencies: - p-locate: "npm:^5.0.0" - checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 - languageName: node - linkType: hard - -"lodash.merge@npm:^4.6.2": - version: 4.6.2 - resolution: "lodash.merge@npm:4.6.2" - checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 - languageName: node - linkType: hard - -"lodash@npm:^4.17.21": - version: 4.17.21 - resolution: "lodash@npm:4.17.21" - checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c - languageName: node - linkType: hard - -"log-symbols@npm:^4.1.0": - version: 4.1.0 - resolution: "log-symbols@npm:4.1.0" - dependencies: - chalk: "npm:^4.1.0" - is-unicode-supported: "npm:^0.1.0" - checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6 - languageName: node - linkType: hard - -"logform@npm:^2.3.2, logform@npm:^2.4.0": - version: 2.6.0 - resolution: "logform@npm:2.6.0" - dependencies: - "@colors/colors": "npm:1.6.0" - "@types/triple-beam": "npm:^1.3.2" - fecha: "npm:^4.2.0" - ms: "npm:^2.1.1" - safe-stable-stringify: "npm:^2.3.1" - triple-beam: "npm:^1.3.0" - checksum: 10c0/6e02f8617a03155b2fce451bacf777a2c01da16d32c4c745b3ec85be6c3f2602f2a4953a8bd096441cb4c42c447b52318541d6b6bc335dce903cb9ad77a1749f - languageName: node - linkType: hard - -"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0": - version: 10.2.0 - resolution: "lru-cache@npm:10.2.0" - checksum: 10c0/c9847612aa2daaef102d30542a8d6d9b2c2bb36581c1bf0dc3ebf5e5f3352c772a749e604afae2e46873b930a9e9523743faac4e5b937c576ab29196774712ee - languageName: node - linkType: hard - -"lru-cache@npm:^6.0.0": - version: 6.0.0 - resolution: "lru-cache@npm:6.0.0" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10c0/cb53e582785c48187d7a188d3379c181b5ca2a9c78d2bce3e7dee36f32761d1c42983da3fe12b55cb74e1779fa94cdc2e5367c028a9b35317184ede0c07a30a9 - languageName: node - linkType: hard - -"magic-string@npm:0.30.5": - version: 0.30.5 - resolution: "magic-string@npm:0.30.5" - dependencies: - "@jridgewell/sourcemap-codec": "npm:^1.4.15" - checksum: 10c0/38ac220ca7539e96da7ea2f38d85796bdf5c69b6bcae728c4bc2565084e6dc326b9174ee9770bea345cf6c9b3a24041b767167874fab5beca874d2356a9d1520 - languageName: node - linkType: hard - -"make-error@npm:^1.1.1": - version: 1.3.6 - resolution: "make-error@npm:1.3.6" - checksum: 10c0/171e458d86854c6b3fc46610cfacf0b45149ba043782558c6875d9f42f222124384ad0b468c92e996d815a8a2003817a710c0a160e49c1c394626f76fa45396f - languageName: node - linkType: hard - -"make-fetch-happen@npm:^13.0.0": - version: 13.0.0 - resolution: "make-fetch-happen@npm:13.0.0" - dependencies: - "@npmcli/agent": "npm:^2.0.0" - cacache: "npm:^18.0.0" - http-cache-semantics: "npm:^4.1.1" - is-lambda: "npm:^1.0.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^3.0.0" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - negotiator: "npm:^0.6.3" - promise-retry: "npm:^2.0.1" - ssri: "npm:^10.0.0" - checksum: 10c0/43b9f6dcbc6fe8b8604cb6396957c3698857a15ba4dbc38284f7f0e61f248300585ef1eb8cc62df54e9c724af977e45b5cdfd88320ef7f53e45070ed3488da55 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 - languageName: node - linkType: hard - -"memfs@npm:^3.4.1": - version: 3.5.3 - resolution: "memfs@npm:3.5.3" - dependencies: - fs-monkey: "npm:^1.0.4" - checksum: 10c0/038fc81bce17ea92dde15aaa68fa0fdaf4960c721ce3ffc7c2cb87a259333f5159784ea48b3b72bf9e054254d9d0d0d5209d0fdc3d07d08653a09933b168fbd7 - languageName: node - linkType: hard - -"merge-descriptors@npm:1.0.1": - version: 1.0.1 - resolution: "merge-descriptors@npm:1.0.1" - checksum: 10c0/b67d07bd44cfc45cebdec349bb6e1f7b077ee2fd5beb15d1f7af073849208cb6f144fe403e29a36571baf3f4e86469ac39acf13c318381e958e186b2766f54ec - languageName: node - linkType: hard - -"merge-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "merge-stream@npm:2.0.0" - checksum: 10c0/867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5 - languageName: node - linkType: hard - -"merge2@npm:^1.3.0, merge2@npm:^1.4.1": - version: 1.4.1 - resolution: "merge2@npm:1.4.1" - checksum: 10c0/254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb - languageName: node - linkType: hard - -"methods@npm:^1.1.2, methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 - languageName: node - linkType: hard - -"micromatch@npm:^4.0.4": - version: 4.0.5 - resolution: "micromatch@npm:4.0.5" - dependencies: - braces: "npm:^3.0.2" - picomatch: "npm:^2.3.1" - checksum: 10c0/3d6505b20f9fa804af5d8c596cb1c5e475b9b0cd05f652c5b56141cf941bd72adaeb7a436fda344235cef93a7f29b7472efc779fcdb83b478eab0867b95cdeff - languageName: node - linkType: hard - -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa - languageName: node - linkType: hard - -"mime-types@npm:^2.1.18, mime-types@npm:^2.1.27, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: "npm:1.52.0" - checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 - languageName: node - linkType: hard - -"mimic-fn@npm:^2.1.0": - version: 2.1.0 - resolution: "mimic-fn@npm:2.1.0" - checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 - languageName: node - linkType: hard - -"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": - version: 3.1.2 - resolution: "minimatch@npm:3.1.2" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 - languageName: node - linkType: hard - -"minimatch@npm:^8.0.2": - version: 8.0.4 - resolution: "minimatch@npm:8.0.4" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/a0a394c356dd5b4cb7f821720841a82fa6f07c9c562c5b716909d1b6ec5e56a7e4c4b5029da26dd256b7d2b3a3f38cbf9ddd8680e887b9b5282b09c05501c1ca - languageName: node - linkType: hard - -"minimatch@npm:^9.0.1, minimatch@npm:^9.0.4": - version: 9.0.4 - resolution: "minimatch@npm:9.0.4" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/2c16f21f50e64922864e560ff97c587d15fd491f65d92a677a344e970fe62aafdbeafe648965fa96d33c061b4d0eabfe0213466203dd793367e7f28658cf6414 - languageName: node - linkType: hard - -"minimist@npm:^1.2.6": - version: 1.2.8 - resolution: "minimist@npm:1.2.8" - checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e - languageName: node - linkType: hard - -"minipass-fetch@npm:^3.0.0": - version: 3.0.4 - resolution: "minipass-fetch@npm:3.0.4" - dependencies: - encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" - minipass-sized: "npm:^1.0.3" - minizlib: "npm:^2.1.2" - dependenciesMeta: - encoding: - optional: true - checksum: 10c0/1b63c1f3313e88eeac4689f1b71c9f086598db9a189400e3ee960c32ed89e06737fa23976c9305c2d57464fb3fcdc12749d3378805c9d6176f5569b0d0ee8a75 - languageName: node - linkType: hard - -"minipass-flush@npm:^1.0.5": - version: 1.0.5 - resolution: "minipass-flush@npm:1.0.5" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd - languageName: node - linkType: hard - -"minipass-pipeline@npm:^1.2.4": - version: 1.2.4 - resolution: "minipass-pipeline@npm:1.2.4" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 - languageName: node - linkType: hard - -"minipass-sized@npm:^1.0.3": - version: 1.0.3 - resolution: "minipass-sized@npm:1.0.3" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb - languageName: node - linkType: hard - -"minipass@npm:^3.0.0": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c - languageName: node - linkType: hard - -"minipass@npm:^4.2.4": - version: 4.2.8 - resolution: "minipass@npm:4.2.8" - checksum: 10c0/4ea76b030d97079f4429d6e8a8affd90baf1b6a1898977c8ccce4701c5a2ba2792e033abc6709373f25c2c4d4d95440d9d5e9464b46b7b76ca44d2ce26d939ce - languageName: node - linkType: hard - -"minipass@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass@npm:5.0.0" - checksum: 10c0/a91d8043f691796a8ac88df039da19933ef0f633e3d7f0d35dcd5373af49131cf2399bfc355f41515dc495e3990369c3858cd319e5c2722b4753c90bf3152462 - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4": - version: 7.0.4 - resolution: "minipass@npm:7.0.4" - checksum: 10c0/6c7370a6dfd257bf18222da581ba89a5eaedca10e158781232a8b5542a90547540b4b9b7e7f490e4cda43acfbd12e086f0453728ecf8c19e0ef6921bc5958ac5 - languageName: node - linkType: hard - -"minizlib@npm:^2.1.1, minizlib@npm:^2.1.2": - version: 2.1.2 - resolution: "minizlib@npm:2.1.2" - dependencies: - minipass: "npm:^3.0.0" - yallist: "npm:^4.0.0" - checksum: 10c0/64fae024e1a7d0346a1102bb670085b17b7f95bf6cfdf5b128772ec8faf9ea211464ea4add406a3a6384a7d87a0cd1a96263692134323477b4fb43659a6cab78 - languageName: node - linkType: hard - -"mkdirp@npm:^0.5.4": - version: 0.5.6 - resolution: "mkdirp@npm:0.5.6" - dependencies: - minimist: "npm:^1.2.6" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 - languageName: node - linkType: hard - -"mkdirp@npm:^1.0.3": - version: 1.0.4 - resolution: "mkdirp@npm:1.0.4" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf - languageName: node - linkType: hard - -"module-details-from-path@npm:^1.0.3": - version: 1.0.3 - resolution: "module-details-from-path@npm:1.0.3" - checksum: 10c0/3d881f3410c142e4c2b1307835a2862ba04e5b3ec6e90655614a0ee2c4b299b4c1d117fb525d2435bf436990026f18d338a197b54ad6bd36252f465c336ff423 - languageName: node - linkType: hard - -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d - languageName: node - linkType: hard - -"ms@npm:2.1.2": - version: 2.1.2 - resolution: "ms@npm:2.1.2" - checksum: 10c0/a437714e2f90dbf881b5191d35a6db792efbca5badf112f87b9e1c712aace4b4b9b742dd6537f3edf90fd6f684de897cec230abde57e87883766712ddda297cc - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.1": - version: 2.1.3 - resolution: "ms@npm:2.1.3" - checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 - languageName: node - linkType: hard - -"multer@npm:1.4.4-lts.1": - version: 1.4.4-lts.1 - resolution: "multer@npm:1.4.4-lts.1" - dependencies: - append-field: "npm:^1.0.0" - busboy: "npm:^1.0.0" - concat-stream: "npm:^1.5.2" - mkdirp: "npm:^0.5.4" - object-assign: "npm:^4.1.1" - type-is: "npm:^1.6.4" - xtend: "npm:^4.0.0" - checksum: 10c0/63277d3483869f424274ef8ce6ab7ff4ce9d2c1cc69e707fc8b5d9b2b348ae6f742809e0b357a591dea885d147594bcd06528d3d6bbe32046115d4a7e126b954 - languageName: node - linkType: hard - -"mute-stream@npm:0.0.8": - version: 0.0.8 - resolution: "mute-stream@npm:0.0.8" - checksum: 10c0/18d06d92e5d6d45e2b63c0e1b8f25376af71748ac36f53c059baa8b76ffac31c5ab225480494e7d35d30215ecdb18fed26ec23cafcd2f7733f2f14406bcd19e2 - languageName: node - linkType: hard - -"mute-stream@npm:1.0.0": - version: 1.0.0 - resolution: "mute-stream@npm:1.0.0" - checksum: 10c0/dce2a9ccda171ec979a3b4f869a102b1343dee35e920146776780de182f16eae459644d187e38d59a3d37adf85685e1c17c38cf7bfda7e39a9880f7a1d10a74c - languageName: node - linkType: hard - -"natural-compare@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare@npm:1.4.0" - checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 - languageName: node - linkType: hard - -"negotiator@npm:0.6.3, negotiator@npm:^0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 - languageName: node - linkType: hard - -"neo-async@npm:^2.6.2": - version: 2.6.2 - resolution: "neo-async@npm:2.6.2" - checksum: 10c0/c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d - languageName: node - linkType: hard - -"nestjs-test-application@workspace:apps/nestjs": - version: 0.0.0-use.local - resolution: "nestjs-test-application@workspace:apps/nestjs" - dependencies: - "@nestjs/cli": "npm:10.3.2" - "@nestjs/common": "npm:10.3.7" - "@nestjs/core": "npm:10.3.7" - "@nestjs/platform-express": "npm:10.3.7" - "@nestjs/schematics": "npm:10.1.1" - "@sentry/node": "npm:8.0.0-alpha.9" - "@sentry/types": "npm:8.0.0-alpha.9" - "@types/express": "npm:^4.17.17" - reflect-metadata: "npm:0.2.2" - rxjs: "npm:7.8.1" - languageName: unknown - linkType: soft - -"node-abort-controller@npm:^3.0.1": - version: 3.1.1 - resolution: "node-abort-controller@npm:3.1.1" - checksum: 10c0/f7ad0e7a8e33809d4f3a0d1d65036a711c39e9d23e0319d80ebe076b9a3b4432b4d6b86a7fab65521de3f6872ffed36fc35d1327487c48eb88c517803403eda3 - languageName: node - linkType: hard - -"node-emoji@npm:1.11.0": - version: 1.11.0 - resolution: "node-emoji@npm:1.11.0" - dependencies: - lodash: "npm:^4.17.21" - checksum: 10c0/5dac6502dbef087092d041fcc2686d8be61168593b3a9baf964d62652f55a3a9c2277f171b81cccb851ccef33f2d070f45e633fab1fda3264f8e1ae9041c673f - languageName: node - linkType: hard - -"node-fetch@npm:^2.6.1": - version: 2.7.0 - resolution: "node-fetch@npm:2.7.0" - dependencies: - whatwg-url: "npm:^5.0.0" - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8 - languageName: node - linkType: hard - -"node-gyp@npm:latest": - version: 10.1.0 - resolution: "node-gyp@npm:10.1.0" - dependencies: - env-paths: "npm:^2.2.0" - exponential-backoff: "npm:^3.1.1" - glob: "npm:^10.3.10" - graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^13.0.0" - nopt: "npm:^7.0.0" - proc-log: "npm:^3.0.0" - semver: "npm:^7.3.5" - tar: "npm:^6.1.2" - which: "npm:^4.0.0" - bin: - node-gyp: bin/node-gyp.js - checksum: 10c0/9cc821111ca244a01fb7f054db7523ab0a0cd837f665267eb962eb87695d71fb1e681f9e21464cc2fd7c05530dc4c81b810bca1a88f7d7186909b74477491a3c - languageName: node - linkType: hard - -"node-releases@npm:^2.0.14": - version: 2.0.14 - resolution: "node-releases@npm:2.0.14" - checksum: 10c0/199fc93773ae70ec9969bc6d5ac5b2bbd6eb986ed1907d751f411fef3ede0e4bfdb45ceb43711f8078bea237b6036db8b1bf208f6ff2b70c7d615afd157f3ab9 - languageName: node - linkType: hard - -"nodemon@npm:^3.1.0": - version: 3.1.0 - resolution: "nodemon@npm:3.1.0" - dependencies: - chokidar: "npm:^3.5.2" - debug: "npm:^4" - ignore-by-default: "npm:^1.0.1" - minimatch: "npm:^3.1.2" - pstree.remy: "npm:^1.1.8" - semver: "npm:^7.5.3" - simple-update-notifier: "npm:^2.0.0" - supports-color: "npm:^5.5.0" - touch: "npm:^3.1.0" - undefsafe: "npm:^2.0.5" - bin: - nodemon: bin/nodemon.js - checksum: 10c0/3aeb50105ecae31ce4d0a5cd464011d4aa0dc15419e39ac0fd203d784e38940e1436f4ed96adbaa0f9614ee0644f91e3cf38f2afae8d3918ae7afc51c7e2116b - languageName: node - linkType: hard - -"nopt@npm:^7.0.0": - version: 7.2.0 - resolution: "nopt@npm:7.2.0" - dependencies: - abbrev: "npm:^2.0.0" - bin: - nopt: bin/nopt.js - checksum: 10c0/9bd7198df6f16eb29ff16892c77bcf7f0cc41f9fb5c26280ac0def2cf8cf319f3b821b3af83eba0e74c85807cc430a16efe0db58fe6ae1f41e69519f585b6aff - languageName: node - linkType: hard - -"nopt@npm:~1.0.10": - version: 1.0.10 - resolution: "nopt@npm:1.0.10" - dependencies: - abbrev: "npm:1" - bin: - nopt: ./bin/nopt.js - checksum: 10c0/ddfbd892116a125fd68849ef564dd5b1f0a5ba0dbbf18782e9499e2efad8f4d3790635b47c6b5d3f7e014069e7b3ce5b8112687e9ae093fcd2678188c866fe28 - languageName: node - linkType: hard - -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 - languageName: node - linkType: hard - -"object-assign@npm:^4, object-assign@npm:^4.1.1": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.1": - version: 1.13.1 - resolution: "object-inspect@npm:1.13.1" - checksum: 10c0/fad603f408e345c82e946abdf4bfd774260a5ed3e5997a0b057c44153ac32c7271ff19e3a5ae39c858da683ba045ccac2f65245c12763ce4e8594f818f4a648d - languageName: node - linkType: hard - -"obuf@npm:~1.1.2": - version: 1.1.2 - resolution: "obuf@npm:1.1.2" - checksum: 10c0/520aaac7ea701618eacf000fc96ae458e20e13b0569845800fc582f81b386731ab22d55354b4915d58171db00e79cfcd09c1638c02f89577ef092b38c65b7d81 - languageName: node - linkType: hard - -"on-finished@npm:2.4.1, on-finished@npm:^2.3.0": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 - languageName: node - linkType: hard - -"once@npm:^1.3.0": - version: 1.4.0 - resolution: "once@npm:1.4.0" - dependencies: - wrappy: "npm:1" - checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 - languageName: node - linkType: hard - -"one-time@npm:^1.0.0": - version: 1.0.0 - resolution: "one-time@npm:1.0.0" - dependencies: - fn.name: "npm:1.x.x" - checksum: 10c0/6e4887b331edbb954f4e915831cbec0a7b9956c36f4feb5f6de98c448ac02ff881fd8d9b55a6b1b55030af184c6b648f340a76eb211812f4ad8c9b4b8692fdaa - languageName: node - linkType: hard - -"onetime@npm:^5.1.0": - version: 5.1.2 - resolution: "onetime@npm:5.1.2" - dependencies: - mimic-fn: "npm:^2.1.0" - checksum: 10c0/ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f - languageName: node - linkType: hard - -"only@npm:~0.0.2": - version: 0.0.2 - resolution: "only@npm:0.0.2" - checksum: 10c0/d26b1347835a5a9b17afbd889ed60de3d3ae14cdeca5ba008d86e6bf055466a431adc731b82e1e8ab24a3b8be5b5c2cdbc16e652d231d18cc1a5752320aaf0a0 - languageName: node - linkType: hard - -"opentelemetry-instrumentation-fetch-node@npm:1.1.2": - version: 1.1.2 - resolution: "opentelemetry-instrumentation-fetch-node@npm:1.1.2" - dependencies: - "@opentelemetry/api": "npm:^1.6.0" - "@opentelemetry/instrumentation": "npm:^0.43.0" - "@opentelemetry/semantic-conventions": "npm:^1.17.0" - checksum: 10c0/d3ef3cfd1695ac6fbcd7bd182f925eb850e3da10a683e7fad65327a698495bce0ecc4e2d046ef7ab1036c968ccd066b3eb7dca38a343b8ad9f5648c32dc76749 - languageName: node - linkType: hard - -"optionator@npm:^0.9.3": - version: 0.9.3 - resolution: "optionator@npm:0.9.3" - dependencies: - "@aashutoshrathi/word-wrap": "npm:^1.2.3" - deep-is: "npm:^0.1.3" - fast-levenshtein: "npm:^2.0.6" - levn: "npm:^0.4.1" - prelude-ls: "npm:^1.2.1" - type-check: "npm:^0.4.0" - checksum: 10c0/66fba794d425b5be51353035cf3167ce6cfa049059cbb93229b819167687e0f48d2bc4603fcb21b091c99acb516aae1083624675b15c4765b2e4693a085e959c - languageName: node - linkType: hard - -"ora@npm:5.4.1, ora@npm:^5.4.1": - version: 5.4.1 - resolution: "ora@npm:5.4.1" - dependencies: - bl: "npm:^4.1.0" - chalk: "npm:^4.1.0" - cli-cursor: "npm:^3.1.0" - cli-spinners: "npm:^2.5.0" - is-interactive: "npm:^1.0.0" - is-unicode-supported: "npm:^0.1.0" - log-symbols: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - wcwidth: "npm:^1.0.1" - checksum: 10c0/10ff14aace236d0e2f044193362b22edce4784add08b779eccc8f8ef97195cae1248db8ec1ec5f5ff076f91acbe573f5f42a98c19b78dba8c54eefff983cae85 - languageName: node - linkType: hard - -"os-tmpdir@npm:~1.0.2": - version: 1.0.2 - resolution: "os-tmpdir@npm:1.0.2" - checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990 - languageName: node - linkType: hard - -"p-limit@npm:^3.0.2": - version: 3.1.0 - resolution: "p-limit@npm:3.1.0" - dependencies: - yocto-queue: "npm:^0.1.0" - checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a - languageName: node - linkType: hard - -"p-locate@npm:^5.0.0": - version: 5.0.0 - resolution: "p-locate@npm:5.0.0" - dependencies: - p-limit: "npm:^3.0.2" - checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a - languageName: node - linkType: hard - -"p-map@npm:^4.0.0": - version: 4.0.0 - resolution: "p-map@npm:4.0.0" - dependencies: - aggregate-error: "npm:^3.0.0" - checksum: 10c0/592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75 - languageName: node - linkType: hard - -"parent-module@npm:^1.0.0": - version: 1.0.1 - resolution: "parent-module@npm:1.0.1" - dependencies: - callsites: "npm:^3.0.0" - checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 - languageName: node - linkType: hard - -"parse-json@npm:^5.2.0": - version: 5.2.0 - resolution: "parse-json@npm:5.2.0" - dependencies: - "@babel/code-frame": "npm:^7.0.0" - error-ex: "npm:^1.3.1" - json-parse-even-better-errors: "npm:^2.3.0" - lines-and-columns: "npm:^1.1.6" - checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585 - languageName: node - linkType: hard - -"parseurl@npm:^1.3.2, parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 - languageName: node - linkType: hard - -"path-exists@npm:^4.0.0": - version: 4.0.0 - resolution: "path-exists@npm:4.0.0" - checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b - languageName: node - linkType: hard - -"path-is-absolute@npm:^1.0.0": - version: 1.0.1 - resolution: "path-is-absolute@npm:1.0.1" - checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 - languageName: node - linkType: hard - -"path-key@npm:^3.1.0": - version: 3.1.1 - resolution: "path-key@npm:3.1.1" - checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c - languageName: node - linkType: hard - -"path-parse@npm:^1.0.7": - version: 1.0.7 - resolution: "path-parse@npm:1.0.7" - checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 - languageName: node - linkType: hard - -"path-scurry@npm:^1.10.1, path-scurry@npm:^1.10.2, path-scurry@npm:^1.6.1": - version: 1.10.2 - resolution: "path-scurry@npm:1.10.2" - dependencies: - lru-cache: "npm:^10.2.0" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: 10c0/d723777fbf9627f201e64656680f66ebd940957eebacf780e6cce1c2919c29c116678b2d7dbf8821b3a2caa758d125f4444005ccec886a25c8f324504e48e601 - languageName: node - linkType: hard - -"path-to-regexp@npm:0.1.7": - version: 0.1.7 - resolution: "path-to-regexp@npm:0.1.7" - checksum: 10c0/50a1ddb1af41a9e68bd67ca8e331a705899d16fb720a1ea3a41e310480948387daf603abb14d7b0826c58f10146d49050a1291ba6a82b78a382d1c02c0b8f905 - languageName: node - linkType: hard - -"path-to-regexp@npm:3.2.0": - version: 3.2.0 - resolution: "path-to-regexp@npm:3.2.0" - checksum: 10c0/2eeb1c698293acf6f89fe5af33b4c20822b3cee3e4e910c43bbee098c8dde34232fc194d5c2bc02df72affada446a181784e24f7a46932af323706be029ed1ba - languageName: node - linkType: hard - -"path-to-regexp@npm:^6.2.1": - version: 6.2.2 - resolution: "path-to-regexp@npm:6.2.2" - checksum: 10c0/4b60852d3501fd05ca9dd08c70033d73844e5eca14e41f499f069afa8364f780f15c5098002f93bd42af8b3514de62ac6e82a53b5662de881d2b08c9ef21ea6b - languageName: node - linkType: hard - -"path-type@npm:^4.0.0": - version: 4.0.0 - resolution: "path-type@npm:4.0.0" - checksum: 10c0/666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c - languageName: node - linkType: hard - -"pg-int8@npm:1.0.1": - version: 1.0.1 - resolution: "pg-int8@npm:1.0.1" - checksum: 10c0/be6a02d851fc2a4ae3e9de81710d861de3ba35ac927268973eb3cb618873a05b9424656df464dd43bd7dc3fc5295c3f5b3c8349494f87c7af50ec59ef14e0b98 - languageName: node - linkType: hard - -"pg-numeric@npm:1.0.2": - version: 1.0.2 - resolution: "pg-numeric@npm:1.0.2" - checksum: 10c0/43dd9884e7b52c79ddc28d2d282d7475fce8bba13452d33c04ceb2e0a65f561edf6699694e8e1c832ff9093770496363183c950dd29608e1bdd98f344b25bca9 - languageName: node - linkType: hard - -"pg-protocol@npm:*": - version: 1.6.1 - resolution: "pg-protocol@npm:1.6.1" - checksum: 10c0/7eadef4010ac0a3925c460be7332ca4098a5c6d5181725a62193fcfa800000ae6632d98d814f3989b42cf5fdc3b45e34c714a1959d29174e81e30730e140ae5f - languageName: node - linkType: hard - -"pg-types@npm:^2.2.0": - version: 2.2.0 - resolution: "pg-types@npm:2.2.0" - dependencies: - pg-int8: "npm:1.0.1" - postgres-array: "npm:~2.0.0" - postgres-bytea: "npm:~1.0.0" - postgres-date: "npm:~1.0.4" - postgres-interval: "npm:^1.1.0" - checksum: 10c0/ab3f8069a323f601cd2d2279ca8c425447dab3f9b61d933b0601d7ffc00d6200df25e26a4290b2b0783b59278198f7dd2ed03e94c4875797919605116a577c65 - languageName: node - linkType: hard - -"pg-types@npm:^4.0.1": - version: 4.0.2 - resolution: "pg-types@npm:4.0.2" - dependencies: - pg-int8: "npm:1.0.1" - pg-numeric: "npm:1.0.2" - postgres-array: "npm:~3.0.1" - postgres-bytea: "npm:~3.0.0" - postgres-date: "npm:~2.1.0" - postgres-interval: "npm:^3.0.0" - postgres-range: "npm:^1.1.1" - checksum: 10c0/780fccda2f3fa2a34e85a72e8e7dadb7d88fbe71ce88f126cb3313f333ad836d02488ec4ff3d94d0c1e5846f735d6e6c6281f8059e6b8919d2180429acaec3e2 - languageName: node - linkType: hard - -"picocolors@npm:^1.0.0": - version: 1.0.0 - resolution: "picocolors@npm:1.0.0" - checksum: 10c0/20a5b249e331c14479d94ec6817a182fd7a5680debae82705747b2db7ec50009a5f6648d0621c561b0572703f84dbef0858abcbd5856d3c5511426afcb1961f7 - languageName: node - linkType: hard - -"picomatch@npm:3.0.1": - version: 3.0.1 - resolution: "picomatch@npm:3.0.1" - checksum: 10c0/70ec738569f1864658378b7abdab8939d15dae0718c1df994eae3346fd33daf6a3c1ff4e0c1a0cd1e2c0319130985b63a2cff34d192f2f2acbb78aca76111736 - languageName: node - linkType: hard - -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.3.1": - version: 2.3.1 - resolution: "picomatch@npm:2.3.1" - checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be - languageName: node - linkType: hard - -"pluralize@npm:8.0.0": - version: 8.0.0 - resolution: "pluralize@npm:8.0.0" - checksum: 10c0/2044cfc34b2e8c88b73379ea4a36fc577db04f651c2909041b054c981cd863dd5373ebd030123ab058d194ae615d3a97cfdac653991e499d10caf592e8b3dc33 - languageName: node - linkType: hard - -"postgres-array@npm:~2.0.0": - version: 2.0.0 - resolution: "postgres-array@npm:2.0.0" - checksum: 10c0/cbd56207e4141d7fbf08c86f2aebf21fa7064943d3f808ec85f442ff94b48d891e7a144cc02665fb2de5dbcb9b8e3183a2ac749959e794b4a4cfd379d7a21d08 - languageName: node - linkType: hard - -"postgres-array@npm:~3.0.1": - version: 3.0.2 - resolution: "postgres-array@npm:3.0.2" - checksum: 10c0/644aa071f67a66a59f641f8e623887d2b915bc102a32643e2aa8b54c11acd343c5ad97831ea444dd37bd4b921ba35add4aa2cb0c6b76700a8252c2324aeba5b4 - languageName: node - linkType: hard - -"postgres-bytea@npm:~1.0.0": - version: 1.0.0 - resolution: "postgres-bytea@npm:1.0.0" - checksum: 10c0/febf2364b8a8953695cac159eeb94542ead5886792a9627b97e33f6b5bb6e263bc0706ab47ec221516e79fbd6b2452d668841830fb3b49ec6c0fc29be61892ce - languageName: node - linkType: hard - -"postgres-bytea@npm:~3.0.0": - version: 3.0.0 - resolution: "postgres-bytea@npm:3.0.0" - dependencies: - obuf: "npm:~1.1.2" - checksum: 10c0/41c79cc48aa730c5ba3eda6ab989a940034f07a1f57b8f2777dce56f1b8cca16c5870582932b5b10cc605048aef9b6157e06253c871b4717cafc6d00f55376aa - languageName: node - linkType: hard - -"postgres-date@npm:~1.0.4": - version: 1.0.7 - resolution: "postgres-date@npm:1.0.7" - checksum: 10c0/0ff91fccc64003e10b767fcfeefb5eaffbc522c93aa65d5051c49b3c4ce6cb93ab091a7d22877a90ad60b8874202c6f1d0f935f38a7235ed3b258efd54b97ca9 - languageName: node - linkType: hard - -"postgres-date@npm:~2.1.0": - version: 2.1.0 - resolution: "postgres-date@npm:2.1.0" - checksum: 10c0/00a7472c10788f6b0d08d24108bf1eb80858de1bd6317740198a564918ea4a69b80c98148167b92ae688abd606483020d0de0dd3a36f3ea9a3e26bbeef3464f4 - languageName: node - linkType: hard - -"postgres-interval@npm:^1.1.0": - version: 1.2.0 - resolution: "postgres-interval@npm:1.2.0" - dependencies: - xtend: "npm:^4.0.0" - checksum: 10c0/c1734c3cb79e7f22579af0b268a463b1fa1d084e742a02a7a290c4f041e349456f3bee3b4ee0bb3f226828597f7b76deb615c1b857db9a742c45520100456272 - languageName: node - linkType: hard - -"postgres-interval@npm:^3.0.0": - version: 3.0.0 - resolution: "postgres-interval@npm:3.0.0" - checksum: 10c0/8b570b30ea37c685e26d136d34460f246f98935a1533defc4b53bb05ee23ae3dc7475b718ec7ea607a57894d8c6b4f1adf67ca9cc83a75bdacffd427d5c68de8 - languageName: node - linkType: hard - -"postgres-range@npm:^1.1.1": - version: 1.1.4 - resolution: "postgres-range@npm:1.1.4" - checksum: 10c0/254494ef81df208e0adeae6b66ce394aba37914ea14c7ece55a45fb6691b7db04bee74c825380a47c887a9f87158fd3d86f758f9cc60b76d3a38ce5aca7912e8 - languageName: node - linkType: hard - -"prelude-ls@npm:^1.2.1": - version: 1.2.1 - resolution: "prelude-ls@npm:1.2.1" - checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd - languageName: node - linkType: hard - -"prettier@npm:^3.2.5": - version: 3.2.5 - resolution: "prettier@npm:3.2.5" - bin: - prettier: bin/prettier.cjs - checksum: 10c0/ea327f37a7d46f2324a34ad35292af2ad4c4c3c3355da07313339d7e554320f66f65f91e856add8530157a733c6c4a897dc41b577056be5c24c40f739f5ee8c6 - languageName: node - linkType: hard - -"proc-log@npm:^3.0.0": - version: 3.0.0 - resolution: "proc-log@npm:3.0.0" - checksum: 10c0/f66430e4ff947dbb996058f6fd22de2c66612ae1a89b097744e17fb18a4e8e7a86db99eda52ccf15e53f00b63f4ec0b0911581ff2aac0355b625c8eac509b0dc - languageName: node - linkType: hard - -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 - languageName: node - linkType: hard - -"promise-retry@npm:^2.0.1": - version: 2.0.1 - resolution: "promise-retry@npm:2.0.1" - dependencies: - err-code: "npm:^2.0.2" - retry: "npm:^0.12.0" - checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 - languageName: node - linkType: hard - -"pstree.remy@npm:^1.1.8": - version: 1.1.8 - resolution: "pstree.remy@npm:1.1.8" - checksum: 10c0/30f78c88ce6393cb3f7834216cb6e282eb83c92ccb227430d4590298ab2811bc4a4745f850a27c5178e79a8f3e316591de0fec87abc19da648c2b3c6eb766d14 - languageName: node - linkType: hard - -"punycode@npm:^2.1.0": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 - languageName: node - linkType: hard - -"qs@npm:6.11.0": - version: 6.11.0 - resolution: "qs@npm:6.11.0" - dependencies: - side-channel: "npm:^1.0.4" - checksum: 10c0/4e4875e4d7c7c31c233d07a448e7e4650f456178b9dd3766b7cfa13158fdb24ecb8c4f059fa91e820dc6ab9f2d243721d071c9c0378892dcdad86e9e9a27c68f - languageName: node - linkType: hard - -"queue-microtask@npm:^1.2.2": - version: 1.2.3 - resolution: "queue-microtask@npm:1.2.3" - checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 - languageName: node - linkType: hard - -"randombytes@npm:^2.1.0": - version: 2.1.0 - resolution: "randombytes@npm:2.1.0" - dependencies: - safe-buffer: "npm:^5.1.0" - checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 - languageName: node - linkType: hard - -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 - languageName: node - linkType: hard - -"raw-body@npm:2.5.2": - version: 2.5.2 - resolution: "raw-body@npm:2.5.2" - dependencies: - bytes: "npm:3.1.2" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - unpipe: "npm:1.0.0" - checksum: 10c0/b201c4b66049369a60e766318caff5cb3cc5a900efd89bdac431463822d976ad0670912c931fdbdcf5543207daf6f6833bca57aa116e1661d2ea91e12ca692c4 - languageName: node - linkType: hard - -"readable-stream@npm:^2.2.2": - version: 2.3.8 - resolution: "readable-stream@npm:2.3.8" - dependencies: - core-util-is: "npm:~1.0.0" - inherits: "npm:~2.0.3" - isarray: "npm:~1.0.0" - process-nextick-args: "npm:~2.0.0" - safe-buffer: "npm:~5.1.1" - string_decoder: "npm:~1.1.1" - util-deprecate: "npm:~1.0.1" - checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa - languageName: node - linkType: hard - -"readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": - version: 3.6.2 - resolution: "readable-stream@npm:3.6.2" - dependencies: - inherits: "npm:^2.0.3" - string_decoder: "npm:^1.1.1" - util-deprecate: "npm:^1.0.1" - checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 - languageName: node - linkType: hard - -"readdirp@npm:~3.6.0": - version: 3.6.0 - resolution: "readdirp@npm:3.6.0" - dependencies: - picomatch: "npm:^2.2.1" - checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b - languageName: node - linkType: hard - -"rechoir@npm:^0.6.2": - version: 0.6.2 - resolution: "rechoir@npm:0.6.2" - dependencies: - resolve: "npm:^1.1.6" - checksum: 10c0/22c4bb32f4934a9468468b608417194f7e3ceba9a508512125b16082c64f161915a28467562368eeb15dc16058eb5b7c13a20b9eb29ff9927d1ebb3b5aa83e84 - languageName: node - linkType: hard - -"reflect-metadata@npm:0.2.2": - version: 0.2.2 - resolution: "reflect-metadata@npm:0.2.2" - checksum: 10c0/1cd93a15ea291e420204955544637c264c216e7aac527470e393d54b4bb075f10a17e60d8168ec96600c7e0b9fcc0cb0bb6e91c3fbf5b0d8c9056f04e6ac1ec2 - languageName: node - linkType: hard - -"repeat-string@npm:^1.6.1": - version: 1.6.1 - resolution: "repeat-string@npm:1.6.1" - checksum: 10c0/87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d - languageName: node - linkType: hard - -"require-from-string@npm:^2.0.2": - version: 2.0.2 - resolution: "require-from-string@npm:2.0.2" - checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 - languageName: node - linkType: hard - -"require-in-the-middle@npm:^7.1.1": - version: 7.3.0 - resolution: "require-in-the-middle@npm:7.3.0" - dependencies: - debug: "npm:^4.1.1" - module-details-from-path: "npm:^1.0.3" - resolve: "npm:^1.22.1" - checksum: 10c0/a8e29393b647f7109f8c07e9276123482ba19d7be4b749d247036573ef4539eaf527bdb66c2e2730b99a74e7badc36f7b6d4a75c6e5b5f798a5f304e78ade797 - languageName: node - linkType: hard - -"resolve-from@npm:^4.0.0": - version: 4.0.0 - resolution: "resolve-from@npm:4.0.0" - checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 - languageName: node - linkType: hard - -"resolve@npm:^1.1.6, resolve@npm:^1.22.1": - version: 1.22.8 - resolution: "resolve@npm:1.22.8" - dependencies: - is-core-module: "npm:^2.13.0" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10c0/07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a - languageName: node - linkType: hard - -"resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin": - version: 1.22.8 - resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" - dependencies: - is-core-module: "npm:^2.13.0" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10c0/0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729 - languageName: node - linkType: hard - -"restore-cursor@npm:^3.1.0": - version: 3.1.0 - resolution: "restore-cursor@npm:3.1.0" - dependencies: - onetime: "npm:^5.1.0" - signal-exit: "npm:^3.0.2" - checksum: 10c0/8051a371d6aa67ff21625fa94e2357bd81ffdc96267f3fb0fc4aaf4534028343836548ef34c240ffa8c25b280ca35eb36be00b3cb2133fa4f51896d7e73c6b4f - languageName: node - linkType: hard - -"retry@npm:^0.12.0": - version: 0.12.0 - resolution: "retry@npm:0.12.0" - checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe - languageName: node - linkType: hard - -"reusify@npm:^1.0.4": - version: 1.0.4 - resolution: "reusify@npm:1.0.4" - checksum: 10c0/c19ef26e4e188f408922c46f7ff480d38e8dfc55d448310dfb518736b23ed2c4f547fb64a6ed5bdba92cd7e7ddc889d36ff78f794816d5e71498d645ef476107 - languageName: node - linkType: hard - -"rimraf@npm:4.4.1": - version: 4.4.1 - resolution: "rimraf@npm:4.4.1" - dependencies: - glob: "npm:^9.2.0" - bin: - rimraf: dist/cjs/src/bin.js - checksum: 10c0/8c5e142d26d8b222be9dc9a1a41ba48e95d8f374e813e66a8533e87c6180174fcb3f573b9b592eca12740ebf8b78526d136acd971d4a790763d6f2232c34fa24 - languageName: node - linkType: hard - -"run-async@npm:^2.4.0": - version: 2.4.1 - resolution: "run-async@npm:2.4.1" - checksum: 10c0/35a68c8f1d9664f6c7c2e153877ca1d6e4f886e5ca067c25cdd895a6891ff3a1466ee07c63d6a9be306e9619ff7d509494e6d9c129516a36b9fd82263d579ee1 - languageName: node - linkType: hard - -"run-async@npm:^3.0.0": - version: 3.0.0 - resolution: "run-async@npm:3.0.0" - checksum: 10c0/b18b562ae37c3020083dcaae29642e4cc360c824fbfb6b7d50d809a9d5227bb986152d09310255842c8dce40526e82ca768f02f00806c91ba92a8dfa6159cb85 - languageName: node - linkType: hard - -"run-parallel@npm:^1.1.9": - version: 1.2.0 - resolution: "run-parallel@npm:1.2.0" - dependencies: - queue-microtask: "npm:^1.2.2" - checksum: 10c0/200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39 - languageName: node - linkType: hard - -"rxjs@npm:7.8.1, rxjs@npm:^7.5.5, rxjs@npm:^7.8.1": - version: 7.8.1 - resolution: "rxjs@npm:7.8.1" - dependencies: - tslib: "npm:^2.1.0" - checksum: 10c0/3c49c1ecd66170b175c9cacf5cef67f8914dcbc7cd0162855538d365c83fea631167cacb644b3ce533b2ea0e9a4d0b12175186985f89d75abe73dbd8f7f06f68 - languageName: node - linkType: hard - -"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:~5.2.0": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 - languageName: node - linkType: hard - -"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 - languageName: node - linkType: hard - -"safe-stable-stringify@npm:^2.3.1": - version: 2.4.3 - resolution: "safe-stable-stringify@npm:2.4.3" - checksum: 10c0/81dede06b8f2ae794efd868b1e281e3c9000e57b39801c6c162267eb9efda17bd7a9eafa7379e1f1cacd528d4ced7c80d7460ad26f62ada7c9e01dec61b2e768 - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": - version: 2.1.2 - resolution: "safer-buffer@npm:2.1.2" - checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 - languageName: node - linkType: hard - -"schema-utils@npm:^3.1.1, schema-utils@npm:^3.2.0": - version: 3.3.0 - resolution: "schema-utils@npm:3.3.0" - dependencies: - "@types/json-schema": "npm:^7.0.8" - ajv: "npm:^6.12.5" - ajv-keywords: "npm:^3.5.2" - checksum: 10c0/fafdbde91ad8aa1316bc543d4b61e65ea86970aebbfb750bfb6d8a6c287a23e415e0e926c2498696b242f63af1aab8e585252637fabe811fd37b604351da6500 - languageName: node - linkType: hard - -"semver@npm:^7.3.5, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.6.0": - version: 7.6.0 - resolution: "semver@npm:7.6.0" - dependencies: - lru-cache: "npm:^6.0.0" - bin: - semver: bin/semver.js - checksum: 10c0/fbfe717094ace0aa8d6332d7ef5ce727259815bd8d8815700853f4faf23aacbd7192522f0dc5af6df52ef4fa85a355ebd2f5d39f554bd028200d6cf481ab9b53 - languageName: node - linkType: hard - -"send@npm:0.18.0": - version: 0.18.0 - resolution: "send@npm:0.18.0" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:2.0.1" - checksum: 10c0/0eb134d6a51fc13bbcb976a1f4214ea1e33f242fae046efc311e80aff66c7a43603e26a79d9d06670283a13000e51be6e0a2cb80ff0942eaf9f1cd30b7ae736a - languageName: node - linkType: hard - -"sentry-javascript-examples@workspace:.": - version: 0.0.0-use.local - resolution: "sentry-javascript-examples@workspace:." - dependencies: - "@eslint/js": "npm:^9.0.0" - "@types/node": "npm:^20.12.5" - "@typescript-eslint/eslint-plugin": "npm:^7.6.0" - "@typescript-eslint/parser": "npm:^7.6.0" - es-check: "npm:7.1.1" - eslint: "npm:^9.0.0" - globals: "npm:^15.0.0" - nodemon: "npm:^3.1.0" - prettier: "npm:^3.2.5" - ts-node: "npm:10.9.2" - typescript: "npm:5.4.4" - typescript-eslint: "npm:^7.6.0" - languageName: unknown - linkType: soft - -"serialize-javascript@npm:^6.0.1": - version: 6.0.2 - resolution: "serialize-javascript@npm:6.0.2" - dependencies: - randombytes: "npm:^2.1.0" - checksum: 10c0/2dd09ef4b65a1289ba24a788b1423a035581bef60817bea1f01eda8e3bda623f86357665fe7ac1b50f6d4f583f97db9615b3f07b2a2e8cbcb75033965f771dd2 - languageName: node - linkType: hard - -"serve-static@npm:1.15.0": - version: 1.15.0 - resolution: "serve-static@npm:1.15.0" - dependencies: - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:0.18.0" - checksum: 10c0/fa9f0e21a540a28f301258dfe1e57bb4f81cd460d28f0e973860477dd4acef946a1f41748b5bd41c73b621bea2029569c935faa38578fd34cd42a9b4947088ba - languageName: node - linkType: hard - -"set-function-length@npm:^1.2.1": - version: 1.2.2 - resolution: "set-function-length@npm:1.2.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c - languageName: node - linkType: hard - -"setprototypeof@npm:1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc - languageName: node - linkType: hard - -"shebang-command@npm:^2.0.0": - version: 2.0.0 - resolution: "shebang-command@npm:2.0.0" - dependencies: - shebang-regex: "npm:^3.0.0" - checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e - languageName: node - linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 - languageName: node - linkType: hard - -"shelljs@npm:0.8.5": - version: 0.8.5 - resolution: "shelljs@npm:0.8.5" - dependencies: - glob: "npm:^7.0.0" - interpret: "npm:^1.0.0" - rechoir: "npm:^0.6.2" - bin: - shjs: bin/shjs - checksum: 10c0/feb25289a12e4bcd04c40ddfab51aff98a3729f5c2602d5b1a1b95f6819ec7804ac8147ebd8d9a85dfab69d501bcf92d7acef03247320f51c1552cec8d8e2382 - languageName: node - linkType: hard - -"shimmer@npm:^1.2.1": - version: 1.2.1 - resolution: "shimmer@npm:1.2.1" - checksum: 10c0/ae8b27c389db2a00acfc8da90240f11577685a8f3e40008f826a3bea8b4f3b3ecd305c26be024b4a0fd3b123d132c1569d6e238097960a9a543b6c60760fb46a - languageName: node - linkType: hard - -"side-channel@npm:^1.0.4": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" - dependencies: - call-bind: "npm:^1.0.7" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - object-inspect: "npm:^1.13.1" - checksum: 10c0/d2afd163dc733cc0a39aa6f7e39bf0c436293510dbccbff446733daeaf295857dbccf94297092ec8c53e2503acac30f0b78830876f0485991d62a90e9cad305f - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.2": - version: 3.0.7 - resolution: "signal-exit@npm:3.0.7" - checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 - languageName: node - linkType: hard - -"signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 - languageName: node - linkType: hard - -"simple-swizzle@npm:^0.2.2": - version: 0.2.2 - resolution: "simple-swizzle@npm:0.2.2" - dependencies: - is-arrayish: "npm:^0.3.1" - checksum: 10c0/df5e4662a8c750bdba69af4e8263c5d96fe4cd0f9fe4bdfa3cbdeb45d2e869dff640beaaeb1ef0e99db4d8d2ec92f85508c269f50c972174851bc1ae5bd64308 - languageName: node - linkType: hard - -"simple-update-notifier@npm:^2.0.0": - version: 2.0.0 - resolution: "simple-update-notifier@npm:2.0.0" - dependencies: - semver: "npm:^7.5.3" - checksum: 10c0/2a00bd03bfbcbf8a737c47ab230d7920f8bfb92d1159d421bdd194479f6d01ebc995d13fbe13d45dace23066a78a3dc6642999b4e3b38b847e6664191575b20c - languageName: node - linkType: hard - -"slash@npm:^3.0.0": - version: 3.0.0 - resolution: "slash@npm:3.0.0" - checksum: 10c0/e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b - languageName: node - linkType: hard - -"smart-buffer@npm:^4.2.0": - version: 4.2.0 - resolution: "smart-buffer@npm:4.2.0" - checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 - languageName: node - linkType: hard - -"socks-proxy-agent@npm:^8.0.3": - version: 8.0.3 - resolution: "socks-proxy-agent@npm:8.0.3" - dependencies: - agent-base: "npm:^7.1.1" - debug: "npm:^4.3.4" - socks: "npm:^2.7.1" - checksum: 10c0/4950529affd8ccd6951575e21c1b7be8531b24d924aa4df3ee32df506af34b618c4e50d261f4cc603f1bfd8d426915b7d629966c8ce45b05fb5ad8c8b9a6459d - languageName: node - linkType: hard - -"socks@npm:^2.7.1": - version: 2.8.1 - resolution: "socks@npm:2.8.1" - dependencies: - ip-address: "npm:^9.0.5" - smart-buffer: "npm:^4.2.0" - checksum: 10c0/ac77b515c260473cc7c4452f09b20939e22510ce3ae48385c516d1d5784374d5cc75be3cb18ff66cc985a7f4f2ef8fef84e984c5ec70aad58355ed59241f40a8 - languageName: node - linkType: hard - -"source-map-support@npm:0.5.21, source-map-support@npm:~0.5.20": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d - languageName: node - linkType: hard - -"source-map@npm:0.7.4": - version: 0.7.4 - resolution: "source-map@npm:0.7.4" - checksum: 10c0/dc0cf3768fe23c345ea8760487f8c97ef6fca8a73c83cd7c9bf2fde8bc2c34adb9c0824d6feb14bc4f9e37fb522e18af621543f1289038a66ac7586da29aa7dc - languageName: node - linkType: hard - -"source-map@npm:^0.6.0": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 - languageName: node - linkType: hard - -"sprintf-js@npm:^1.1.3": - version: 1.1.3 - resolution: "sprintf-js@npm:1.1.3" - checksum: 10c0/09270dc4f30d479e666aee820eacd9e464215cdff53848b443964202bf4051490538e5dd1b42e1a65cf7296916ca17640aebf63dae9812749c7542ee5f288dec - languageName: node - linkType: hard - -"ssri@npm:^10.0.0": - version: 10.0.5 - resolution: "ssri@npm:10.0.5" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/b091f2ae92474183c7ac5ed3f9811457e1df23df7a7e70c9476eaa9a0c4a0c8fc190fb45acefbf023ca9ee864dd6754237a697dc52a0fb182afe65d8e77443d8 - languageName: node - linkType: hard - -"stack-trace@npm:0.0.x": - version: 0.0.10 - resolution: "stack-trace@npm:0.0.10" - checksum: 10c0/9ff3dabfad4049b635a85456f927a075c9d0c210e3ea336412d18220b2a86cbb9b13ec46d6c37b70a302a4ea4d49e30e5d4944dd60ae784073f1cde778ac8f4b - languageName: node - linkType: hard - -"statuses@npm:2.0.1": - version: 2.0.1 - resolution: "statuses@npm:2.0.1" - checksum: 10c0/34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0 - languageName: node - linkType: hard - -"statuses@npm:>= 1.5.0 < 2, statuses@npm:^1.5.0": - version: 1.5.0 - resolution: "statuses@npm:1.5.0" - checksum: 10c0/e433900956357b3efd79b1c547da4d291799ac836960c016d10a98f6a810b1b5c0dcc13b5a7aa609a58239b5190e1ea176ad9221c2157d2fd1c747393e6b2940 - languageName: node - linkType: hard - -"streamsearch@npm:^1.1.0": - version: 1.1.0 - resolution: "streamsearch@npm:1.1.0" - checksum: 10c0/fbd9aecc2621364384d157f7e59426f4bfd385e8b424b5aaa79c83a6f5a1c8fd2e4e3289e95de1eb3511cb96bb333d6281a9919fafce760e4edb35b2cd2facab - languageName: node - linkType: hard - -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": - version: 4.2.3 - resolution: "string-width@npm:4.2.3" - dependencies: - emoji-regex: "npm:^8.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b - languageName: node - linkType: hard - -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: "npm:^0.2.0" - emoji-regex: "npm:^9.2.2" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca - languageName: node - linkType: hard - -"string_decoder@npm:^1.1.1": - version: 1.3.0 - resolution: "string_decoder@npm:1.3.0" - dependencies: - safe-buffer: "npm:~5.2.0" - checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d - languageName: node - linkType: hard - -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: "npm:~5.1.0" - checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e - languageName: node - linkType: hard - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": - version: 6.0.1 - resolution: "strip-ansi@npm:6.0.1" - dependencies: - ansi-regex: "npm:^5.0.1" - checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 - languageName: node - linkType: hard - -"strip-ansi@npm:^7.0.1": - version: 7.1.0 - resolution: "strip-ansi@npm:7.1.0" - dependencies: - ansi-regex: "npm:^6.0.1" - checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 - languageName: node - linkType: hard - -"strip-bom@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-bom@npm:3.0.0" - checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1 - languageName: node - linkType: hard - -"strip-json-comments@npm:^3.1.1": - version: 3.1.1 - resolution: "strip-json-comments@npm:3.1.1" - checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd - languageName: node - linkType: hard - -"supports-color@npm:^5.3.0, supports-color@npm:^5.5.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 - languageName: node - linkType: hard - -"supports-color@npm:^7.1.0": - version: 7.2.0 - resolution: "supports-color@npm:7.2.0" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 - languageName: node - linkType: hard - -"supports-color@npm:^8.0.0, supports-color@npm:^8.1.1": - version: 8.1.1 - resolution: "supports-color@npm:8.1.1" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 - languageName: node - linkType: hard - -"supports-preserve-symlinks-flag@npm:^1.0.0": - version: 1.0.0 - resolution: "supports-preserve-symlinks-flag@npm:1.0.0" - checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39 - languageName: node - linkType: hard - -"symbol-observable@npm:4.0.0": - version: 4.0.0 - resolution: "symbol-observable@npm:4.0.0" - checksum: 10c0/5e9a3ab08263a6be8cbee76587ad5880dcc62a47002787ed5ebea56b1eb30dc87da6f0183d67e88286806799fbe21c69077fbd677be4be2188e92318d6c6f31d - languageName: node - linkType: hard - -"tapable@npm:^2.1.1, tapable@npm:^2.2.0, tapable@npm:^2.2.1": - version: 2.2.1 - resolution: "tapable@npm:2.2.1" - checksum: 10c0/bc40e6efe1e554d075469cedaba69a30eeb373552aaf41caeaaa45bf56ffacc2674261b106245bd566b35d8f3329b52d838e851ee0a852120acae26e622925c9 - languageName: node - linkType: hard - -"tar@npm:^6.1.11, tar@npm:^6.1.2": - version: 6.2.1 - resolution: "tar@npm:6.2.1" - dependencies: - chownr: "npm:^2.0.0" - fs-minipass: "npm:^2.0.0" - minipass: "npm:^5.0.0" - minizlib: "npm:^2.1.1" - mkdirp: "npm:^1.0.3" - yallist: "npm:^4.0.0" - checksum: 10c0/a5eca3eb50bc11552d453488344e6507156b9193efd7635e98e867fab275d527af53d8866e2370cd09dfe74378a18111622ace35af6a608e5223a7d27fe99537 - languageName: node - linkType: hard - -"terser-webpack-plugin@npm:^5.3.10": - version: 5.3.10 - resolution: "terser-webpack-plugin@npm:5.3.10" - dependencies: - "@jridgewell/trace-mapping": "npm:^0.3.20" - jest-worker: "npm:^27.4.5" - schema-utils: "npm:^3.1.1" - serialize-javascript: "npm:^6.0.1" - terser: "npm:^5.26.0" - peerDependencies: - webpack: ^5.1.0 - peerDependenciesMeta: - "@swc/core": - optional: true - esbuild: - optional: true - uglify-js: - optional: true - checksum: 10c0/66d1ed3174542560911cf96f4716aeea8d60e7caab212291705d50072b6ba844c7391442541b13c848684044042bea9ec87512b8506528c12854943da05faf91 - languageName: node - linkType: hard - -"terser@npm:^5.26.0": - version: 5.30.3 - resolution: "terser@npm:5.30.3" - dependencies: - "@jridgewell/source-map": "npm:^0.3.3" - acorn: "npm:^8.8.2" - commander: "npm:^2.20.0" - source-map-support: "npm:~0.5.20" - bin: - terser: bin/terser - checksum: 10c0/ab5a8afef2e7a3b12a0fd17f9ff984fe02aefa945985eb139ab9984280d523a1104021eda889a7f993b69a67574ceb8fd0db8b76e5efc6a7607246db51bcc0b6 - languageName: node - linkType: hard - -"text-hex@npm:1.0.x": - version: 1.0.0 - resolution: "text-hex@npm:1.0.0" - checksum: 10c0/57d8d320d92c79d7c03ffb8339b825bb9637c2cbccf14304309f51d8950015c44464b6fd1b6820a3d4821241c68825634f09f5a2d9d501e84f7c6fd14376860d - languageName: node - linkType: hard - -"text-table@npm:^0.2.0": - version: 0.2.0 - resolution: "text-table@npm:0.2.0" - checksum: 10c0/02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c - languageName: node - linkType: hard - -"through@npm:^2.3.6": - version: 2.3.8 - resolution: "through@npm:2.3.8" - checksum: 10c0/4b09f3774099de0d4df26d95c5821a62faee32c7e96fb1f4ebd54a2d7c11c57fe88b0a0d49cf375de5fee5ae6bf4eb56dbbf29d07366864e2ee805349970d3cc - languageName: node - linkType: hard - -"tmp@npm:^0.0.33": - version: 0.0.33 - resolution: "tmp@npm:0.0.33" - dependencies: - os-tmpdir: "npm:~1.0.2" - checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408 - languageName: node - linkType: hard - -"to-regex-range@npm:^5.0.1": - version: 5.0.1 - resolution: "to-regex-range@npm:5.0.1" - dependencies: - is-number: "npm:^7.0.0" - checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 - languageName: node - linkType: hard - -"toidentifier@npm:1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 - languageName: node - linkType: hard - -"touch@npm:^3.1.0": - version: 3.1.0 - resolution: "touch@npm:3.1.0" - dependencies: - nopt: "npm:~1.0.10" - bin: - nodetouch: ./bin/nodetouch.js - checksum: 10c0/dacb4a639401b83b0a40b56c0565e01096e5ecf38b22a4840d9eeb642a5bea136c6a119e4543f9b172349a5ee343b10cda0880eb47f7d7ddfd6eac59dcf53244 - languageName: node - linkType: hard - -"tr46@npm:~0.0.3": - version: 0.0.3 - resolution: "tr46@npm:0.0.3" - checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 - languageName: node - linkType: hard - -"tree-kill@npm:1.2.2": - version: 1.2.2 - resolution: "tree-kill@npm:1.2.2" - bin: - tree-kill: cli.js - checksum: 10c0/7b1b7c7f17608a8f8d20a162e7957ac1ef6cd1636db1aba92f4e072dc31818c2ff0efac1e3d91064ede67ed5dc57c565420531a8134090a12ac10cf792ab14d2 - languageName: node - linkType: hard - -"triple-beam@npm:^1.3.0": - version: 1.4.1 - resolution: "triple-beam@npm:1.4.1" - checksum: 10c0/4bf1db71e14fe3ff1c3adbe3c302f1fdb553b74d7591a37323a7badb32dc8e9c290738996cbb64f8b10dc5a3833645b5d8c26221aaaaa12e50d1251c9aba2fea - languageName: node - linkType: hard - -"ts-api-utils@npm:^1.3.0": - version: 1.3.0 - resolution: "ts-api-utils@npm:1.3.0" - peerDependencies: - typescript: ">=4.2.0" - checksum: 10c0/f54a0ba9ed56ce66baea90a3fa087a484002e807f28a8ccb2d070c75e76bde64bd0f6dce98b3802834156306050871b67eec325cb4e918015a360a3f0868c77c - languageName: node - linkType: hard - -"ts-node@npm:10.9.2": - version: 10.9.2 - resolution: "ts-node@npm:10.9.2" - dependencies: - "@cspotcode/source-map-support": "npm:^0.8.0" - "@tsconfig/node10": "npm:^1.0.7" - "@tsconfig/node12": "npm:^1.0.7" - "@tsconfig/node14": "npm:^1.0.0" - "@tsconfig/node16": "npm:^1.0.2" - acorn: "npm:^8.4.1" - acorn-walk: "npm:^8.1.1" - arg: "npm:^4.1.0" - create-require: "npm:^1.1.0" - diff: "npm:^4.0.1" - make-error: "npm:^1.1.1" - v8-compile-cache-lib: "npm:^3.0.1" - yn: "npm:3.1.1" - peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" - peerDependenciesMeta: - "@swc/core": - optional: true - "@swc/wasm": - optional: true - bin: - ts-node: dist/bin.js - ts-node-cwd: dist/bin-cwd.js - ts-node-esm: dist/bin-esm.js - ts-node-script: dist/bin-script.js - ts-node-transpile-only: dist/bin-transpile.js - ts-script: dist/bin-script-deprecated.js - checksum: 10c0/5f29938489f96982a25ba650b64218e83a3357d76f7bede80195c65ab44ad279c8357264639b7abdd5d7e75fc269a83daa0e9c62fd8637a3def67254ecc9ddc2 - languageName: node - linkType: hard - -"tsconfig-paths-webpack-plugin@npm:4.1.0": - version: 4.1.0 - resolution: "tsconfig-paths-webpack-plugin@npm:4.1.0" - dependencies: - chalk: "npm:^4.1.0" - enhanced-resolve: "npm:^5.7.0" - tsconfig-paths: "npm:^4.1.2" - checksum: 10c0/c030e867e70a3f6d1799fdffa209c3a35e1435ad99aac01946b9ebb0fa8208b7b508c1dfe8c8e13d6a2ef70c75b4db062fbfd3c1f3362c69b6c65ffd4a50e226 - languageName: node - linkType: hard - -"tsconfig-paths@npm:4.2.0, tsconfig-paths@npm:^4.1.2": - version: 4.2.0 - resolution: "tsconfig-paths@npm:4.2.0" - dependencies: - json5: "npm:^2.2.2" - minimist: "npm:^1.2.6" - strip-bom: "npm:^3.0.0" - checksum: 10c0/09a5877402d082bb1134930c10249edeebc0211f36150c35e1c542e5b91f1047b1ccf7da1e59babca1ef1f014c525510f4f870de7c9bda470c73bb4e2721b3ea - languageName: node - linkType: hard - -"tslib@npm:2.6.2, tslib@npm:^2.1.0": - version: 2.6.2 - resolution: "tslib@npm:2.6.2" - checksum: 10c0/e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb - languageName: node - linkType: hard - -"tsscmp@npm:1.0.6": - version: 1.0.6 - resolution: "tsscmp@npm:1.0.6" - checksum: 10c0/2f79a9455e7e3e8071995f98cdf3487ccfc91b760bec21a9abb4d90519557eafaa37246e87c92fa8bf3fef8fd30cfd0cc3c4212bb929baa9fb62494bfa4d24b2 - languageName: node - linkType: hard - -"type-check@npm:^0.4.0, type-check@npm:~0.4.0": - version: 0.4.0 - resolution: "type-check@npm:0.4.0" - dependencies: - prelude-ls: "npm:^1.2.1" - checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 - languageName: node - linkType: hard - -"type-fest@npm:^0.21.3": - version: 0.21.3 - resolution: "type-fest@npm:0.21.3" - checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 - languageName: node - linkType: hard - -"type-is@npm:^1.6.16, type-is@npm:^1.6.4, type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d - languageName: node - linkType: hard - -"typedarray@npm:^0.0.6": - version: 0.0.6 - resolution: "typedarray@npm:0.0.6" - checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412 - languageName: node - linkType: hard - -"typescript-eslint@npm:^7.6.0": - version: 7.6.0 - resolution: "typescript-eslint@npm:7.6.0" - dependencies: - "@typescript-eslint/eslint-plugin": "npm:7.6.0" - "@typescript-eslint/parser": "npm:7.6.0" - "@typescript-eslint/utils": "npm:7.6.0" - peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/1950ae59069860cc802de9c1c4f15013099b677b47cabc8dc24200dbe9a4a5a3db5ff9b88e6813658b089e16294d75835b6c17d13a445cf29c954a71eb27ff6f - languageName: node - linkType: hard - -"typescript@npm:5.3.3": - version: 5.3.3 - resolution: "typescript@npm:5.3.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/e33cef99d82573624fc0f854a2980322714986bc35b9cb4d1ce736ed182aeab78e2cb32b385efa493b2a976ef52c53e20d6c6918312353a91850e2b76f1ea44f - languageName: node - linkType: hard - -"typescript@npm:5.4.4": - version: 5.4.4 - resolution: "typescript@npm:5.4.4" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/4d8de0291204ed61ca97ad0cba2ce064e09c4988ca1c451c787e4653ba76296ba35177a52694e8a00cf4ef899d0ee83338663b926d8b7d55167ff0ba81549999 - languageName: node - linkType: hard - -"typescript@patch:typescript@npm%3A5.3.3#optional!builtin": - version: 5.3.3 - resolution: "typescript@patch:typescript@npm%3A5.3.3#optional!builtin::version=5.3.3&hash=e012d7" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/1d0a5f4ce496c42caa9a30e659c467c5686eae15d54b027ee7866744952547f1be1262f2d40de911618c242b510029d51d43ff605dba8fb740ec85ca2d3f9500 - languageName: node - linkType: hard - -"typescript@patch:typescript@npm%3A5.4.4#optional!builtin": - version: 5.4.4 - resolution: "typescript@patch:typescript@npm%3A5.4.4#optional!builtin::version=5.4.4&hash=5adc0c" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/1fa41b9964a9ff0ed913b339c90b46031b2d2da3cb1a192af516610733f7f1d5f7f9754a8e22b9ac7076d3d8aedd2c4f84db3f113bad060eac3a95962443a1bf - languageName: node - linkType: hard - -"uid@npm:2.0.2": - version: 2.0.2 - resolution: "uid@npm:2.0.2" - dependencies: - "@lukeed/csprng": "npm:^1.0.0" - checksum: 10c0/e9d02d0562c74e74b5a2519e586db9d7f8204978e476cddd191ee1a9efb85efafdbab2dbf3fc3dde0f5da01fd9da161f37d604dabf513447fd2c03d008f1324c - languageName: node - linkType: hard - -"undefsafe@npm:^2.0.5": - version: 2.0.5 - resolution: "undefsafe@npm:2.0.5" - checksum: 10c0/96c0466a5fbf395917974a921d5d4eee67bca4b30d3a31ce7e621e0228c479cf893e783a109af6e14329b52fe2f0cb4108665fad2b87b0018c0df6ac771261d5 - languageName: node - linkType: hard - -"undici-types@npm:~5.26.4": - version: 5.26.5 - resolution: "undici-types@npm:5.26.5" - checksum: 10c0/bb673d7876c2d411b6eb6c560e0c571eef4a01c1c19925175d16e3a30c4c428181fb8d7ae802a261f283e4166a0ac435e2f505743aa9e45d893f9a3df017b501 - languageName: node - linkType: hard - -"unique-filename@npm:^3.0.0": - version: 3.0.0 - resolution: "unique-filename@npm:3.0.0" - dependencies: - unique-slug: "npm:^4.0.0" - checksum: 10c0/6363e40b2fa758eb5ec5e21b3c7fb83e5da8dcfbd866cc0c199d5534c42f03b9ea9ab069769cc388e1d7ab93b4eeef28ef506ab5f18d910ef29617715101884f - languageName: node - linkType: hard - -"unique-slug@npm:^4.0.0": - version: 4.0.0 - resolution: "unique-slug@npm:4.0.0" - dependencies: - imurmurhash: "npm:^0.1.4" - checksum: 10c0/cb811d9d54eb5821b81b18205750be84cb015c20a4a44280794e915f5a0a70223ce39066781a354e872df3572e8155c228f43ff0cce94c7cbf4da2cc7cbdd635 - languageName: node - linkType: hard - -"universalify@npm:^2.0.0": - version: 2.0.1 - resolution: "universalify@npm:2.0.1" - checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a - languageName: node - linkType: hard - -"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c - languageName: node - linkType: hard - -"update-browserslist-db@npm:^1.0.13": - version: 1.0.13 - resolution: "update-browserslist-db@npm:1.0.13" - dependencies: - escalade: "npm:^3.1.1" - picocolors: "npm:^1.0.0" - peerDependencies: - browserslist: ">= 4.21.0" - bin: - update-browserslist-db: cli.js - checksum: 10c0/e52b8b521c78ce1e0c775f356cd16a9c22c70d25f3e01180839c407a5dc787fb05a13f67560cbaf316770d26fa99f78f1acd711b1b54a4f35d4820d4ea7136e6 - languageName: node - linkType: hard - -"uri-js@npm:^4.2.2": - version: 4.4.1 - resolution: "uri-js@npm:4.4.1" - dependencies: - punycode: "npm:^2.1.0" - checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c - languageName: node - linkType: hard - -"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 - languageName: node - linkType: hard - -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 - languageName: node - linkType: hard - -"v8-compile-cache-lib@npm:^3.0.1": - version: 3.0.1 - resolution: "v8-compile-cache-lib@npm:3.0.1" - checksum: 10c0/bdc36fb8095d3b41df197f5fb6f11e3a26adf4059df3213e3baa93810d8f0cc76f9a74aaefc18b73e91fe7e19154ed6f134eda6fded2e0f1c8d2272ed2d2d391 - languageName: node - linkType: hard - -"vary@npm:^1, vary@npm:^1.1.2, vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f - languageName: node - linkType: hard - -"watchpack@npm:^2.4.0": - version: 2.4.1 - resolution: "watchpack@npm:2.4.1" - dependencies: - glob-to-regexp: "npm:^0.4.1" - graceful-fs: "npm:^4.1.2" - checksum: 10c0/c694de0a61004e587a8a0fdc9cfec20ee692c52032d9ab2c2e99969a37fdab9e6e1bd3164ed506f9a13f7c83e65563d563e0d6b87358470cdb7309b83db78683 - languageName: node - linkType: hard - -"wcwidth@npm:^1.0.1": - version: 1.0.1 - resolution: "wcwidth@npm:1.0.1" - dependencies: - defaults: "npm:^1.0.3" - checksum: 10c0/5b61ca583a95e2dd85d7078400190efd452e05751a64accb8c06ce4db65d7e0b0cde9917d705e826a2e05cc2548f61efde115ffa374c3e436d04be45c889e5b4 - languageName: node - linkType: hard - -"webidl-conversions@npm:^3.0.0": - version: 3.0.1 - resolution: "webidl-conversions@npm:3.0.1" - checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db - languageName: node - linkType: hard - -"webpack-node-externals@npm:3.0.0": - version: 3.0.0 - resolution: "webpack-node-externals@npm:3.0.0" - checksum: 10c0/9f645a4dc8e122dac43cdc8c1367d4b44af20c79632438b633acc1b4fe64ea7ba1ad6ab61bd0fc46e1b873158c48d8c7a25a489cdab1f31299f00eb3b81cfc61 - languageName: node - linkType: hard - -"webpack-sources@npm:^3.2.3": - version: 3.2.3 - resolution: "webpack-sources@npm:3.2.3" - checksum: 10c0/2ef63d77c4fad39de4a6db17323d75eb92897b32674e97d76f0a1e87c003882fc038571266ad0ef581ac734cbe20952912aaa26155f1905e96ce251adbb1eb4e - languageName: node - linkType: hard - -"webpack@npm:5.90.1": - version: 5.90.1 - resolution: "webpack@npm:5.90.1" - dependencies: - "@types/eslint-scope": "npm:^3.7.3" - "@types/estree": "npm:^1.0.5" - "@webassemblyjs/ast": "npm:^1.11.5" - "@webassemblyjs/wasm-edit": "npm:^1.11.5" - "@webassemblyjs/wasm-parser": "npm:^1.11.5" - acorn: "npm:^8.7.1" - acorn-import-assertions: "npm:^1.9.0" - browserslist: "npm:^4.21.10" - chrome-trace-event: "npm:^1.0.2" - enhanced-resolve: "npm:^5.15.0" - es-module-lexer: "npm:^1.2.1" - eslint-scope: "npm:5.1.1" - events: "npm:^3.2.0" - glob-to-regexp: "npm:^0.4.1" - graceful-fs: "npm:^4.2.9" - json-parse-even-better-errors: "npm:^2.3.1" - loader-runner: "npm:^4.2.0" - mime-types: "npm:^2.1.27" - neo-async: "npm:^2.6.2" - schema-utils: "npm:^3.2.0" - tapable: "npm:^2.1.1" - terser-webpack-plugin: "npm:^5.3.10" - watchpack: "npm:^2.4.0" - webpack-sources: "npm:^3.2.3" - peerDependenciesMeta: - webpack-cli: - optional: true - bin: - webpack: bin/webpack.js - checksum: 10c0/c36b86e5aa42f07c865cc5221d88b84bc62267ca2e60edaf69e8fccebe284c8199d352701697546a0fa6599d648a05ea427607e854c61ccc269b9c230fb25efa - languageName: node - linkType: hard - -"whatwg-url@npm:^5.0.0": - version: 5.0.0 - resolution: "whatwg-url@npm:5.0.0" - dependencies: - tr46: "npm:~0.0.3" - webidl-conversions: "npm:^3.0.0" - checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 - languageName: node - linkType: hard - -"which@npm:^2.0.1": - version: 2.0.2 - resolution: "which@npm:2.0.2" - dependencies: - isexe: "npm:^2.0.0" - bin: - node-which: ./bin/node-which - checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f - languageName: node - linkType: hard - -"which@npm:^4.0.0": - version: 4.0.0 - resolution: "which@npm:4.0.0" - dependencies: - isexe: "npm:^3.1.1" - bin: - node-which: bin/which.js - checksum: 10c0/449fa5c44ed120ccecfe18c433296a4978a7583bf2391c50abce13f76878d2476defde04d0f79db8165bdf432853c1f8389d0485ca6e8ebce3bbcded513d5e6a - languageName: node - linkType: hard - -"winston-transport@npm:^4.7.0": - version: 4.7.0 - resolution: "winston-transport@npm:4.7.0" - dependencies: - logform: "npm:^2.3.2" - readable-stream: "npm:^3.6.0" - triple-beam: "npm:^1.3.0" - checksum: 10c0/cd16f3d0ab56697f93c4899e0eb5f89690f291bb6cf309194819789326a7c7ed943ef00f0b2fab513b114d371314368bde1a7ae6252ad1516181a79f90199cd2 - languageName: node - linkType: hard - -"winston@npm:^3.8.2": - version: 3.13.0 - resolution: "winston@npm:3.13.0" - dependencies: - "@colors/colors": "npm:^1.6.0" - "@dabh/diagnostics": "npm:^2.0.2" - async: "npm:^3.2.3" - is-stream: "npm:^2.0.0" - logform: "npm:^2.4.0" - one-time: "npm:^1.0.0" - readable-stream: "npm:^3.4.0" - safe-stable-stringify: "npm:^2.3.1" - stack-trace: "npm:0.0.x" - triple-beam: "npm:^1.3.0" - winston-transport: "npm:^4.7.0" - checksum: 10c0/2c3cc7389a691e1638edcb0d4bfea72caa82d87d5681ec6131ac9bae780d94d06fb7b112edcd4ec37c8b947a1b64943941b761e34d67c6b0dac6e9c31ae4b25b - languageName: node - linkType: hard - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version: 7.0.0 - resolution: "wrap-ansi@npm:7.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da - languageName: node - linkType: hard - -"wrap-ansi@npm:^6.0.1, wrap-ansi@npm:^6.2.0": - version: 6.2.0 - resolution: "wrap-ansi@npm:6.2.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10c0/baad244e6e33335ea24e86e51868fe6823626e3a3c88d9a6674642afff1d34d9a154c917e74af8d845fd25d170c4ea9cf69a47133c3f3656e1252b3d462d9f6c - languageName: node - linkType: hard - -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: "npm:^6.1.0" - string-width: "npm:^5.0.1" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 - languageName: node - linkType: hard - -"wrappy@npm:1": - version: 1.0.2 - resolution: "wrappy@npm:1.0.2" - checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 - languageName: node - linkType: hard - -"xtend@npm:^4.0.0": - version: 4.0.2 - resolution: "xtend@npm:4.0.2" - checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e - languageName: node - linkType: hard - -"yallist@npm:^4.0.0": - version: 4.0.0 - resolution: "yallist@npm:4.0.0" - checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a - languageName: node - linkType: hard - -"yargs-parser@npm:21.1.1": - version: 21.1.1 - resolution: "yargs-parser@npm:21.1.1" - checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2 - languageName: node - linkType: hard - -"ylru@npm:^1.2.0": - version: 1.4.0 - resolution: "ylru@npm:1.4.0" - checksum: 10c0/eaadc38ed6d78d4fda49abed45cfdaf149bd334df761dbeadd3cff62936d25ffa94571f84c25b64a9a4b5efd8f489ee6fee3eaaf8e7b2886418a3bcb9ec84b84 - languageName: node - linkType: hard - -"yn@npm:3.1.1": - version: 3.1.1 - resolution: "yn@npm:3.1.1" - checksum: 10c0/0732468dd7622ed8a274f640f191f3eaf1f39d5349a1b72836df484998d7d9807fbea094e2f5486d6b0cd2414aad5775972df0e68f8604db89a239f0f4bf7443 - languageName: node - linkType: hard - -"yocto-queue@npm:^0.1.0": - version: 0.1.0 - resolution: "yocto-queue@npm:0.1.0" - checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f - languageName: node - linkType: hard From b0e138f9dc2edbd428594955d73a08fdbe537fb6 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Tue, 16 Apr 2024 09:26:28 +0200 Subject: [PATCH 7/9] delete koa from fastify --- apps/fastify/package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/fastify/package.json b/apps/fastify/package.json index e9cba25..c90bd72 100644 --- a/apps/fastify/package.json +++ b/apps/fastify/package.json @@ -15,7 +15,6 @@ }, "dependencies": { "@sentry/node": "8.0.0-beta.1", - "fastify": "4.26.2", - "koa": "2.15.3" + "fastify": "4.26.2" } } From d8e555abbad4a12a74562e20e53684301801a0e0 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Tue, 16 Apr 2024 16:38:37 +0200 Subject: [PATCH 8/9] add nextjs 14.2.1 v8 --- apps/nextjs-14_2_1/.gitignore | 36 + .../app/api/test-error-manual/route.ts | 13 + .../nextjs-14_2_1/app/api/test-error/route.ts | 8 + .../api/test-local-variables-caught/route.ts | 14 + .../test-local-variables-uncaught/route.ts | 4 + .../app/api/test-param-error/[param]/route.ts | 15 + .../api/test-param-success/[param]/route.ts | 10 + .../app/api/test-success-manual/route.ts | 11 + .../app/api/test-success/route.ts | 3 + apps/nextjs-14_2_1/app/favicon.ico | Bin 0 -> 25931 bytes apps/nextjs-14_2_1/app/globals.css | 17 + apps/nextjs-14_2_1/app/layout.tsx | 14 + apps/nextjs-14_2_1/app/page.tsx | 58 ++ apps/nextjs-14_2_1/instrumentation.ts | 13 + apps/nextjs-14_2_1/next.config.mjs | 8 + apps/nextjs-14_2_1/package.json | 27 + apps/nextjs-14_2_1/sentry.client.config.ts | 9 + apps/nextjs-14_2_1/tsconfig.json | 21 + apps/nextjs-14_2_1/utils/fetchData.ts | 26 + package.json | 4 +- .../_api_test-error--event.json | 937 ++++++++++++++++++ .../_api_test-error-manual--event.json | 656 ++++++++++++ ..._test-error-manual_route--transaction.json | 261 +++++ .../_api_test-error_route--transaction.json | 209 ++++ ...l-variables-caught_route--transaction.json | 251 +++++ ...variables-uncaught_route--transaction.json | 241 +++++ .../_api_test-param-error_[param]--event.json | 937 ++++++++++++++++++ ...aram-error_[param]_route--transaction.json | 227 +++++ ...am-success_[param]_route--transaction.json | 215 ++++ ...est-success-manual_route--transaction.json | 249 +++++ .../_api_test-success_route--transaction.json | 209 ++++ .../payload-files/readme.md | 10 + 32 files changed, 4712 insertions(+), 1 deletion(-) create mode 100644 apps/nextjs-14_2_1/.gitignore create mode 100644 apps/nextjs-14_2_1/app/api/test-error-manual/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-error/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-local-variables-caught/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-local-variables-uncaught/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-param-error/[param]/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-param-success/[param]/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-success-manual/route.ts create mode 100644 apps/nextjs-14_2_1/app/api/test-success/route.ts create mode 100644 apps/nextjs-14_2_1/app/favicon.ico create mode 100644 apps/nextjs-14_2_1/app/globals.css create mode 100644 apps/nextjs-14_2_1/app/layout.tsx create mode 100644 apps/nextjs-14_2_1/app/page.tsx create mode 100644 apps/nextjs-14_2_1/instrumentation.ts create mode 100644 apps/nextjs-14_2_1/next.config.mjs create mode 100644 apps/nextjs-14_2_1/package.json create mode 100644 apps/nextjs-14_2_1/sentry.client.config.ts create mode 100644 apps/nextjs-14_2_1/tsconfig.json create mode 100644 apps/nextjs-14_2_1/utils/fetchData.ts create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual_route--transaction.json create mode 100644 utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success_route--transaction.json diff --git a/apps/nextjs-14_2_1/.gitignore b/apps/nextjs-14_2_1/.gitignore new file mode 100644 index 0000000..fd3dbb5 --- /dev/null +++ b/apps/nextjs-14_2_1/.gitignore @@ -0,0 +1,36 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/apps/nextjs-14_2_1/app/api/test-error-manual/route.ts b/apps/nextjs-14_2_1/app/api/test-error-manual/route.ts new file mode 100644 index 0000000..fd7fa0d --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-error-manual/route.ts @@ -0,0 +1,13 @@ +import * as Sentry from '@sentry/nextjs'; + +export async function GET() { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.startSpan({ name: 'child-span' }, () => { + Sentry.captureException(new Error('This is an error')); + }); + }); + + await Sentry.flush(); + + return Response.json({ data: 'test-error-body' }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-error/route.ts b/apps/nextjs-14_2_1/app/api/test-error/route.ts new file mode 100644 index 0000000..29c5216 --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-error/route.ts @@ -0,0 +1,8 @@ +import * as Sentry from '@sentry/nextjs'; + +export async function GET() { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + return Response.json({ exceptionId }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-local-variables-caught/route.ts b/apps/nextjs-14_2_1/app/api/test-local-variables-caught/route.ts new file mode 100644 index 0000000..7b26d27 --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-local-variables-caught/route.ts @@ -0,0 +1,14 @@ +import * as Sentry from '@sentry/nextjs'; + +export async function GET() { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + + let exceptionId: string; + try { + throw new Error('Local Variable Error'); + } catch (e) { + exceptionId = Sentry.captureException(e); + } + + return Response.json({ exceptionId, randomVariableToRecord }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-local-variables-uncaught/route.ts b/apps/nextjs-14_2_1/app/api/test-local-variables-uncaught/route.ts new file mode 100644 index 0000000..3b1a1ca --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-local-variables-uncaught/route.ts @@ -0,0 +1,4 @@ +export async function GET() { + const randomVariableToRecord = 'LOCAL_VARIABLE'; + throw new Error(`Uncaught Local Variable Error - ${JSON.stringify({ randomVariableToRecord })}`); +} diff --git a/apps/nextjs-14_2_1/app/api/test-param-error/[param]/route.ts b/apps/nextjs-14_2_1/app/api/test-param-error/[param]/route.ts new file mode 100644 index 0000000..76584f6 --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-param-error/[param]/route.ts @@ -0,0 +1,15 @@ +import { NextRequest } from 'next/server'; +import * as Sentry from '@sentry/nextjs'; + +export async function GET(request: NextRequest) { + const exceptionId = Sentry.captureException(new Error('This is an error')); + + await Sentry.flush(2000); + + const { pathname } = new URL(request.url); + + const params = pathname.split('/').filter(Boolean); + const param = params[params.length - 1]; + + return Response.json({ exceptionId, paramWas: param }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-param-success/[param]/route.ts b/apps/nextjs-14_2_1/app/api/test-param-success/[param]/route.ts new file mode 100644 index 0000000..46daabb --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-param-success/[param]/route.ts @@ -0,0 +1,10 @@ +import { NextRequest } from 'next/server'; + +export async function GET(request: NextRequest) { + const { pathname } = new URL(request.url); + + const params = pathname.split('/').filter(Boolean); + const param = params[params.length - 1]; + + return Response.json({ paramWas: param }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-success-manual/route.ts b/apps/nextjs-14_2_1/app/api/test-success-manual/route.ts new file mode 100644 index 0000000..ceedc9c --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-success-manual/route.ts @@ -0,0 +1,11 @@ +import * as Sentry from '@sentry/nextjs'; + +export async function GET() { + Sentry.startSpan({ name: 'test-span' }, () => { + Sentry.startSpan({ name: 'child-span' }, () => {}); + }); + + await Sentry.flush(); + + return Response.json({ data: 'test-success-body' }); +} diff --git a/apps/nextjs-14_2_1/app/api/test-success/route.ts b/apps/nextjs-14_2_1/app/api/test-success/route.ts new file mode 100644 index 0000000..35d264b --- /dev/null +++ b/apps/nextjs-14_2_1/app/api/test-success/route.ts @@ -0,0 +1,3 @@ +export async function GET() { + return Response.json({ version: 'v1' }); +} diff --git a/apps/nextjs-14_2_1/app/favicon.ico b/apps/nextjs-14_2_1/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 zcmeHv30#a{`}aL_*G&7qml|y<+KVaDM2m#dVr!KsA!#An?kSQM(q<_dDNCpjEux83 zLb9Z^XxbDl(w>%i@8hT6>)&Gu{h#Oeyszu?xtw#Zb1mO{pgX9699l+Qppw7jXaYf~-84xW z)w4x8?=youko|}Vr~(D$UXIbiXABHh`p1?nn8Po~fxRJv}|0e(BPs|G`(TT%kKVJAdg5*Z|x0leQq0 zkdUBvb#>9F()jo|T~kx@OM8$9wzs~t2l;K=woNssA3l6|sx2r3+kdfVW@e^8e*E}v zA1y5{bRi+3Z`uD3{F7LgFJDdvm;nJilkzDku>BwXH(8ItVCXk*-lSJnR?-2UN%hJ){&rlvg`CDTj z)Bzo!3v7Ou#83zEDEFcKt(f1E0~=rqeEbTnMvWR#{+9pg%7G8y>u1OVRUSoox-ovF z2Ydma(;=YuBY(eI|04{hXzZD6_f(v~H;C~y5=DhAC{MMS>2fm~1H_t2$56pc$NH8( z5bH|<)71dV-_oCHIrzrT`2s-5w_+2CM0$95I6X8p^r!gHp+j_gd;9O<1~CEQQGS8) zS9Qh3#p&JM-G8rHekNmKVewU;pJRcTAog68KYo^dRo}(M>36U4Us zfgYWSiHZL3;lpWT=zNAW>Dh#mB!_@Lg%$ms8N-;aPqMn+C2HqZgz&9~Eu z4|Kp<`$q)Uw1R?y(~S>ePdonHxpV1#eSP1B;Ogo+-Pk}6#0GsZZ5!||ev2MGdh}_m z{DeR7?0-1^zVs&`AV6Vt;r3`I`OI_wgs*w=eO%_#7Kepl{B@xiyCANc(l zzIyd4y|c6PXWq9-|KM8(zIk8LPk(>a)zyFWjhT!$HJ$qX1vo@d25W<fvZQ2zUz5WRc(UnFMKHwe1| zWmlB1qdbiA(C0jmnV<}GfbKtmcu^2*P^O?MBLZKt|As~ge8&AAO~2K@zbXelK|4T<{|y4`raF{=72kC2Kn(L4YyenWgrPiv z@^mr$t{#X5VuIMeL!7Ab6_kG$&#&5p*Z{+?5U|TZ`B!7llpVmp@skYz&n^8QfPJzL z0G6K_OJM9x+Wu2gfN45phANGt{7=C>i34CV{Xqlx(fWpeAoj^N0Biu`w+MVcCUyU* zDZuzO0>4Z6fbu^T_arWW5n!E45vX8N=bxTVeFoep_G#VmNlQzAI_KTIc{6>c+04vr zx@W}zE5JNSU>!THJ{J=cqjz+4{L4A{Ob9$ZJ*S1?Ggg3klFp!+Y1@K+pK1DqI|_gq z5ZDXVpge8-cs!o|;K73#YXZ3AShj50wBvuq3NTOZ`M&qtjj#GOFfgExjg8Gn8>Vq5 z`85n+9|!iLCZF5$HJ$Iu($dm?8~-ofu}tEc+-pyke=3!im#6pk_Wo8IA|fJwD&~~F zc16osQ)EBo58U7XDuMexaPRjU@h8tXe%S{fA0NH3vGJFhuyyO!Uyl2^&EOpX{9As0 zWj+P>{@}jxH)8|r;2HdupP!vie{sJ28b&bo!8`D^x}TE$%zXNb^X1p@0PJ86`dZyj z%ce7*{^oo+6%&~I!8hQy-vQ7E)0t0ybH4l%KltWOo~8cO`T=157JqL(oq_rC%ea&4 z2NcTJe-HgFjNg-gZ$6!Y`SMHrlj}Etf7?r!zQTPPSv}{so2e>Fjs1{gzk~LGeesX%r(Lh6rbhSo_n)@@G-FTQy93;l#E)hgP@d_SGvyCp0~o(Y;Ee8{ zdVUDbHm5`2taPUOY^MAGOw*>=s7=Gst=D+p+2yON!0%Hk` zz5mAhyT4lS*T3LS^WSxUy86q&GnoHxzQ6vm8)VS}_zuqG?+3td68_x;etQAdu@sc6 zQJ&5|4(I?~3d-QOAODHpZ=hlSg(lBZ!JZWCtHHSj`0Wh93-Uk)_S%zsJ~aD>{`A0~ z9{AG(e|q3g5B%wYKRxiL2Y$8(4w6bzchKuloQW#e&S3n+P- z8!ds-%f;TJ1>)v)##>gd{PdS2Oc3VaR`fr=`O8QIO(6(N!A?pr5C#6fc~Ge@N%Vvu zaoAX2&(a6eWy_q&UwOhU)|P3J0Qc%OdhzW=F4D|pt0E4osw;%<%Dn58hAWD^XnZD= z>9~H(3bmLtxpF?a7su6J7M*x1By7YSUbxGi)Ot0P77`}P3{)&5Un{KD?`-e?r21!4vTTnN(4Y6Lin?UkSM z`MXCTC1@4A4~mvz%Rh2&EwY))LeoT=*`tMoqcEXI>TZU9WTP#l?uFv+@Dn~b(>xh2 z;>B?;Tz2SR&KVb>vGiBSB`@U7VIWFSo=LDSb9F{GF^DbmWAfpms8Sx9OX4CnBJca3 zlj9(x!dIjN?OG1X4l*imJNvRCk}F%!?SOfiOq5y^mZW)jFL@a|r-@d#f7 z2gmU8L3IZq0ynIws=}~m^#@&C%J6QFo~Mo4V`>v7MI-_!EBMMtb%_M&kvAaN)@ZVw z+`toz&WG#HkWDjnZE!6nk{e-oFdL^$YnbOCN}JC&{$#$O27@|Tn-skXr)2ml2~O!5 zX+gYoxhoc7qoU?C^3~&!U?kRFtnSEecWuH0B0OvLodgUAi}8p1 zrO6RSXHH}DMc$&|?D004DiOVMHV8kXCP@7NKB zgaZq^^O<7PoKEp72kby@W0Z!Y*Ay{&vfg#C&gG@YVR9g?FEocMUi1gSN$+V+ayF45{a zuDZDTN}mS|;BO%gEf}pjBfN2-gIrU#G5~cucA;dokXW89%>AyXJJI z9X4UlIWA|ZYHgbI z5?oFk@A=Ik7lrEQPDH!H+b`7_Y~aDb_qa=B2^Y&Ow41cU=4WDd40dp5(QS-WMN-=Y z9g;6_-JdNU;|6cPwf$ak*aJIcwL@1n$#l~zi{c{EW?T;DaW*E8DYq?Umtz{nJ&w-M zEMyTDrC&9K$d|kZe2#ws6)L=7K+{ zQw{XnV6UC$6-rW0emqm8wJoeZK)wJIcV?dST}Z;G0Arq{dVDu0&4kd%N!3F1*;*pW zR&qUiFzK=@44#QGw7k1`3t_d8&*kBV->O##t|tonFc2YWrL7_eqg+=+k;!F-`^b8> z#KWCE8%u4k@EprxqiV$VmmtiWxDLgnGu$Vs<8rppV5EajBXL4nyyZM$SWVm!wnCj-B!Wjqj5-5dNXukI2$$|Bu3Lrw}z65Lc=1G z^-#WuQOj$hwNGG?*CM_TO8Bg-1+qc>J7k5c51U8g?ZU5n?HYor;~JIjoWH-G>AoUP ztrWWLbRNqIjW#RT*WqZgPJXU7C)VaW5}MiijYbABmzoru6EmQ*N8cVK7a3|aOB#O& zBl8JY2WKfmj;h#Q!pN%9o@VNLv{OUL?rixHwOZuvX7{IJ{(EdPpuVFoQqIOa7giLVkBOKL@^smUA!tZ1CKRK}#SSM)iQHk)*R~?M!qkCruaS!#oIL1c z?J;U~&FfH#*98^G?i}pA{ z9Jg36t4=%6mhY(quYq*vSxptes9qy|7xSlH?G=S@>u>Ebe;|LVhs~@+06N<4CViBk zUiY$thvX;>Tby6z9Y1edAMQaiH zm^r3v#$Q#2T=X>bsY#D%s!bhs^M9PMAcHbCc0FMHV{u-dwlL;a1eJ63v5U*?Q_8JO zT#50!RD619#j_Uf))0ooADz~*9&lN!bBDRUgE>Vud-i5ck%vT=r^yD*^?Mp@Q^v+V zG#-?gKlr}Eeqifb{|So?HM&g91P8|av8hQoCmQXkd?7wIJwb z_^v8bbg`SAn{I*4bH$u(RZ6*xUhuA~hc=8czK8SHEKTzSxgbwi~9(OqJB&gwb^l4+m`k*Q;_?>Y-APi1{k zAHQ)P)G)f|AyjSgcCFps)Fh6Bca*Xznq36!pV6Az&m{O8$wGFD? zY&O*3*J0;_EqM#jh6^gMQKpXV?#1?>$ml1xvh8nSN>-?H=V;nJIwB07YX$e6vLxH( zqYwQ>qxwR(i4f)DLd)-$P>T-no_c!LsN@)8`e;W@)-Hj0>nJ-}Kla4-ZdPJzI&Mce zv)V_j;(3ERN3_@I$N<^|4Lf`B;8n+bX@bHbcZTopEmDI*Jfl)-pFDvo6svPRoo@(x z);_{lY<;);XzT`dBFpRmGrr}z5u1=pC^S-{ce6iXQlLGcItwJ^mZx{m$&DA_oEZ)B{_bYPq-HA zcH8WGoBG(aBU_j)vEy+_71T34@4dmSg!|M8Vf92Zj6WH7Q7t#OHQqWgFE3ARt+%!T z?oLovLVlnf?2c7pTc)~cc^($_8nyKwsN`RA-23ed3sdj(ys%pjjM+9JrctL;dy8a( z@en&CQmnV(()bu|Y%G1-4a(6x{aLytn$T-;(&{QIJB9vMox11U-1HpD@d(QkaJdEb zG{)+6Dos_L+O3NpWo^=gR?evp|CqEG?L&Ut#D*KLaRFOgOEK(Kq1@!EGcTfo+%A&I z=dLbB+d$u{sh?u)xP{PF8L%;YPPW53+@{>5W=Jt#wQpN;0_HYdw1{ksf_XhO4#2F= zyPx6Lx2<92L-;L5PD`zn6zwIH`Jk($?Qw({erA$^bC;q33hv!d!>%wRhj# zal^hk+WGNg;rJtb-EB(?czvOM=H7dl=vblBwAv>}%1@{}mnpUznfq1cE^sgsL0*4I zJ##!*B?=vI_OEVis5o+_IwMIRrpQyT_Sq~ZU%oY7c5JMIADzpD!Upz9h@iWg_>>~j zOLS;wp^i$-E?4<_cp?RiS%Rd?i;f*mOz=~(&3lo<=@(nR!_Rqiprh@weZlL!t#NCc zO!QTcInq|%#>OVgobj{~ixEUec`E25zJ~*DofsQdzIa@5^nOXj2T;8O`l--(QyU^$t?TGY^7#&FQ+2SS3B#qK*k3`ye?8jUYSajE5iBbJls75CCc(m3dk{t?- zopcER9{Z?TC)mk~gpi^kbbu>b-+a{m#8-y2^p$ka4n60w;Sc2}HMf<8JUvhCL0B&Btk)T`ctE$*qNW8L$`7!r^9T+>=<=2qaq-;ll2{`{Rg zc5a0ZUI$oG&j-qVOuKa=*v4aY#IsoM+1|c4Z)<}lEDvy;5huB@1RJPquU2U*U-;gu z=En2m+qjBzR#DEJDO`WU)hdd{Vj%^0V*KoyZ|5lzV87&g_j~NCjwv0uQVqXOb*QrQ zy|Qn`hxx(58c70$E;L(X0uZZ72M1!6oeg)(cdKO ze0gDaTz+ohR-#d)NbAH4x{I(21yjwvBQfmpLu$)|m{XolbgF!pmsqJ#D}(ylp6uC> z{bqtcI#hT#HW=wl7>p!38sKsJ`r8}lt-q%Keqy%u(xk=yiIJiUw6|5IvkS+#?JTBl z8H5(Q?l#wzazujH!8o>1xtn8#_w+397*_cy8!pQGP%K(Ga3pAjsaTbbXJlQF_+m+-UpUUent@xM zg%jqLUExj~o^vQ3Gl*>wh=_gOr2*|U64_iXb+-111aH}$TjeajM+I20xw(((>fej-@CIz4S1pi$(#}P7`4({6QS2CaQS4NPENDp>sAqD z$bH4KGzXGffkJ7R>V>)>tC)uax{UsN*dbeNC*v}#8Y#OWYwL4t$ePR?VTyIs!wea+ z5Urmc)X|^`MG~*dS6pGSbU+gPJoq*^a=_>$n4|P^w$sMBBy@f*Z^Jg6?n5?oId6f{ z$LW4M|4m502z0t7g<#Bx%X;9<=)smFolV&(V^(7Cv2-sxbxopQ!)*#ZRhTBpx1)Fc zNm1T%bONzv6@#|dz(w02AH8OXe>kQ#1FMCzO}2J_mST)+ExmBr9cva-@?;wnmWMOk z{3_~EX_xadgJGv&H@zK_8{(x84`}+c?oSBX*Ge3VdfTt&F}yCpFP?CpW+BE^cWY0^ zb&uBN!Ja3UzYHK-CTyA5=L zEMW{l3Usky#ly=7px648W31UNV@K)&Ub&zP1c7%)`{);I4b0Q<)B}3;NMG2JH=X$U zfIW4)4n9ZM`-yRj67I)YSLDK)qfUJ_ij}a#aZN~9EXrh8eZY2&=uY%2N0UFF7<~%M zsB8=erOWZ>Ct_#^tHZ|*q`H;A)5;ycw*IcmVxi8_0Xk}aJA^ath+E;xg!x+As(M#0=)3!NJR6H&9+zd#iP(m0PIW8$ z1Y^VX`>jm`W!=WpF*{ioM?C9`yOR>@0q=u7o>BP-eSHqCgMDj!2anwH?s%i2p+Q7D zzszIf5XJpE)IG4;d_(La-xenmF(tgAxK`Y4sQ}BSJEPs6N_U2vI{8=0C_F?@7<(G; zo$~G=8p+076G;`}>{MQ>t>7cm=zGtfbdDXm6||jUU|?X?CaE?(<6bKDYKeHlz}DA8 zXT={X=yp_R;HfJ9h%?eWvQ!dRgz&Su*JfNt!Wu>|XfU&68iRikRrHRW|ZxzRR^`eIGt zIeiDgVS>IeExKVRWW8-=A=yA`}`)ZkWBrZD`hpWIxBGkh&f#ijr449~m`j6{4jiJ*C!oVA8ZC?$1RM#K(_b zL9TW)kN*Y4%^-qPpMP7d4)o?Nk#>aoYHT(*g)qmRUb?**F@pnNiy6Fv9rEiUqD(^O zzyS?nBrX63BTRYduaG(0VVG2yJRe%o&rVrLjbxTaAFTd8s;<<@Qs>u(<193R8>}2_ zuwp{7;H2a*X7_jryzriZXMg?bTuegABb^87@SsKkr2)0Gyiax8KQWstw^v#ix45EVrcEhr>!NMhprl$InQMzjSFH54x5k9qHc`@9uKQzvL4ihcq{^B zPrVR=o_ic%Y>6&rMN)hTZsI7I<3&`#(nl+3y3ys9A~&^=4?PL&nd8)`OfG#n zwAMN$1&>K++c{^|7<4P=2y(B{jJsQ0a#U;HTo4ZmWZYvI{+s;Td{Yzem%0*k#)vjpB zia;J&>}ICate44SFYY3vEelqStQWFihx%^vQ@Do(sOy7yR2@WNv7Y9I^yL=nZr3mb zXKV5t@=?-Sk|b{XMhA7ZGB@2hqsx}4xwCW!in#C zI@}scZlr3-NFJ@NFaJlhyfcw{k^vvtGl`N9xSo**rDW4S}i zM9{fMPWo%4wYDG~BZ18BD+}h|GQKc-g^{++3MY>}W_uq7jGHx{mwE9fZiPCoxN$+7 zrODGGJrOkcPQUB(FD5aoS4g~7#6NR^ma7-!>mHuJfY5kTe6PpNNKC9GGRiu^L31uG z$7v`*JknQHsYB!Tm_W{a32TM099djW%5e+j0Ve_ct}IM>XLF1Ap+YvcrLV=|CKo6S zb+9Nl3_YdKP6%Cxy@6TxZ>;4&nTneadr z_ES90ydCev)LV!dN=#(*f}|ZORFdvkYBni^aLbUk>BajeWIOcmHP#8S)*2U~QKI%S zyrLmtPqb&TphJ;>yAxri#;{uyk`JJqODDw%(Z=2`1uc}br^V%>j!gS)D*q*f_-qf8&D;W1dJgQMlaH5er zN2U<%Smb7==vE}dDI8K7cKz!vs^73o9f>2sgiTzWcwY|BMYHH5%Vn7#kiw&eItCqa zIkR2~Q}>X=Ar8W|^Ms41Fm8o6IB2_j60eOeBB1Br!boW7JnoeX6Gs)?7rW0^5psc- zjS16yb>dFn>KPOF;imD}e!enuIniFzv}n$m2#gCCv4jM#ArwlzZ$7@9&XkFxZ4n!V zj3dyiwW4Ki2QG{@i>yuZXQizw_OkZI^-3otXC{!(lUpJF33gI60ak;Uqitp74|B6I zgg{b=Iz}WkhCGj1M=hu4#Aw173YxIVbISaoc z-nLZC*6Tgivd5V`K%GxhBsp@SUU60-rfc$=wb>zdJzXS&-5(NRRodFk;Kxk!S(O(a0e7oY=E( zAyS;Ow?6Q&XA+cnkCb{28_1N8H#?J!*$MmIwLq^*T_9-z^&UE@A(z9oGYtFy6EZef LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/apps/nextjs-14_2_1/app/globals.css b/apps/nextjs-14_2_1/app/globals.css new file mode 100644 index 0000000..b1d52e3 --- /dev/null +++ b/apps/nextjs-14_2_1/app/globals.css @@ -0,0 +1,17 @@ +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; + font-family: sans-serif; +} + +a { + color: inherit; + text-decoration: none; +} diff --git a/apps/nextjs-14_2_1/app/layout.tsx b/apps/nextjs-14_2_1/app/layout.tsx new file mode 100644 index 0000000..d729d63 --- /dev/null +++ b/apps/nextjs-14_2_1/app/layout.tsx @@ -0,0 +1,14 @@ +import './globals.css'; +import { ReactNode } from 'react'; + +export default function RootLayout({ + children, +}: Readonly<{ + children: ReactNode; +}>) { + return ( + + {children} + + ); +} diff --git a/apps/nextjs-14_2_1/app/page.tsx b/apps/nextjs-14_2_1/app/page.tsx new file mode 100644 index 0000000..4af671e --- /dev/null +++ b/apps/nextjs-14_2_1/app/page.tsx @@ -0,0 +1,58 @@ +'use client'; + +import { useFetchData } from '@/utils/fetchData'; + +const displayData = (data: any) => (data ? JSON.stringify(data, null, 2) : 'No data'); + +export default function Home() { + const { data: dataSuccess, fetchData: testSuccess } = useFetchData('/api/test-success'); + const { error: testErrorError, fetchData: testError } = useFetchData('/api/test-error'); + const { data: dataParamSuccess, fetchData: testParamSuccess } = useFetchData( + '/api/test-param-success/1337', + ); + const { data: dataParamError, fetchData: testParamError } = useFetchData( + 'api/test-param-error/1337', + ); + const { data: dataSuccessManual, fetchData: testSuccessManual } = useFetchData( + '/api/test-success-manual', + ); + const { data: dataErrorManual, fetchData: testErrorManual } = + useFetchData('/api/test-error-manual'); + const { data: dataLocalVariablesUncaught, fetchData: testLocalVariablesUncaught } = useFetchData( + '/api/test-local-variables-uncaught', + ); + const { data: dataLocalVariablesCaught, fetchData: testLocalVariablesCaught } = useFetchData( + '/api/test-local-variables-caught', + ); + + return ( +
+
+

Layout (/)

+ +

{displayData(dataSuccess)}

+ + +

{displayData(testErrorError)}

+ + +

{displayData(dataParamSuccess)}

+ + +

{displayData(dataParamError)}

+ + +

{displayData(dataSuccessManual)}

+ + +

{displayData(dataErrorManual)}

+ + +

{displayData(dataLocalVariablesUncaught)}

+ + +

{displayData(dataLocalVariablesCaught)}

+
+
+ ); +} 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 new file mode 100644 index 0000000..2e1a77c --- /dev/null +++ b/apps/nextjs-14_2_1/next.config.mjs @@ -0,0 +1,8 @@ +import { withSentryConfig } from '@sentry/nextjs'; + +/** @type {import('next').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 new file mode 100644 index 0000000..9b191b4 --- /dev/null +++ b/apps/nextjs-14_2_1/package.json @@ -0,0 +1,27 @@ +{ + "name": "next-14_2_1-test-application", + "version": "0.1.0", + "private": true, + "license": "MIT", + "scripts": { + "dev": "next dev -p 3030", + "build": "next build", + "start": "next start -p 3030", + "lint": "next lint" + }, + "dependencies": { + "@sentry/nextjs": "8.0.0-beta.1", + "next": "14.2.1", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "typescript": "^5" + }, + "volta": { + "extends": "../../package.json" + } +} diff --git a/apps/nextjs-14_2_1/sentry.client.config.ts b/apps/nextjs-14_2_1/sentry.client.config.ts new file mode 100644 index 0000000..6660868 --- /dev/null +++ b/apps/nextjs-14_2_1/sentry.client.config.ts @@ -0,0 +1,9 @@ +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/apps/nextjs-14_2_1/tsconfig.json b/apps/nextjs-14_2_1/tsconfig.json new file mode 100644 index 0000000..73628d4 --- /dev/null +++ b/apps/nextjs-14_2_1/tsconfig.json @@ -0,0 +1,21 @@ +{ + "extends": "../../tsconfig.json", + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"], + "compilerOptions": { + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [{ "name": "next" }], + "paths": { "@/*": ["./*"] } + } +} diff --git a/apps/nextjs-14_2_1/utils/fetchData.ts b/apps/nextjs-14_2_1/utils/fetchData.ts new file mode 100644 index 0000000..5a6a57f --- /dev/null +++ b/apps/nextjs-14_2_1/utils/fetchData.ts @@ -0,0 +1,26 @@ +import { useState } from 'react'; + +export function useFetchData(url: string) { + const [data, setData] = useState(null); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + const fetchData = async () => { + setLoading(true); + try { + const response = await fetch(url); + if (response.ok) { + const data = await response.json(); + setData(data); + } else { + throw new Error('Error fetching data'); + } + } catch (error) { + setError(error as Error); + } finally { + setLoading(false); + } + }; + + return { data, loading, error, fetchData }; +} diff --git a/package.json b/package.json index 24adab5..01aa68f 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "start:fastify": "yarn workspace fastify-test-application run start", "start:nestjs": "yarn workspace nestjs-test-application run start", "start:koa": "yarn workspace koa-test-application run start", + "start:nextjs": "yarn workspace nextjs-14_2_1-test-application run dev", "fix:prettier": "prettier . --write", "fix:lint": "yarn run eslint --fix", "lint": "yarn run eslint" @@ -22,7 +23,8 @@ "apps/express", "apps/fastify", "apps/nestjs", - "apps/koa" + "apps/koa", + "apps/nextjs-14_2_1" ], "devDependencies": { "@eslint/js": "^9.0.0", diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json new file mode 100644 index 0000000..978c669 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error--event.json @@ -0,0 +1,937 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]" + }, + { + "type": "event" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 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": { + "parent_span_id": "[[ID2]]", + "span_id": "[[ID3]]", + "trace_id": "[[ID4]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "exception": { + "values": [ + { + "mechanism": { + "handled": true, + "type": "generic" + }, + "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": "[[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" + ], + "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": "[[FILENAME6]]", + "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": "[[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" + ], + "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": "[[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" + ], + "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": "[[FILENAME6]]", + "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": "[[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" + ], + "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": "[[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" + ], + "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": "[[FILENAME6]]", + "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": "[[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" + ], + "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": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", + "in_app": false, + "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": 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": 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": "?", + "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": "[[FILENAME10]]", + "function": "Tracer.startActiveSpan", + "in_app": false, + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" + }, + { + "colno": 54, + "filename": "[[FILENAME11]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME8]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "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": 346, + "module": "node:async_hooks" + }, + { + "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": "[[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" + ], + "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": "[[FILENAME12]]", + "function": "Object.apply", + "in_app": false, + "lineno": 64, + "module": "route.ts" + }, + { + "colno": 52, + "filename": "[[FILENAME13]]", + "function": "Object.apply", + "in_app": false, + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 17, + "filename": "[[FILENAME14]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", + "in_app": false, + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" + }, + { + "colno": 14, + "filename": "[[FILENAME15]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" + }, + { + "colno": 28, + "filename": "[[FILENAME8]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 54, + "filename": "[[FILENAME11]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME8]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "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": 346, + "module": "node:async_hooks" + }, + { + "colno": 14, + "filename": "[[FILENAME8]]", + "function": "eval", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 24, + "filename": "[[FILENAME13]]", + "function": "eval", + "in_app": false, + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 10, + "filename": "[[FILENAME13]]", + "function": "startOrUpdateSpan", + "in_app": false, + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 41, + "filename": "[[FILENAME13]]", + "function": "eval", + "in_app": false, + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 26, + "filename": "[[FILENAME16]]", + "function": "Object.handleCallbackErrors", + "in_app": false, + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" + }, + { + "colno": 38, + "filename": "[[FILENAME13]]", + "function": "eval", + "in_app": false, + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 86, + "filename": "[[FILENAME12]]", + "function": "GET$1", + "in_app": false, + "lineno": 22, + "module": "route.ts" + } + ] + }, + "type": "Error", + "value": "This is an 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=7cd7e0c3aefe457d9b521e2faee8e354", + "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": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", + "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", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-error" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json new file mode 100644 index 0000000..596c1da --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual--event.json @@ -0,0 +1,656 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]" + }, + { + "type": "event" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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 373ms (2131 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-error-manual in 304ms (2133 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": { + "parent_span_id": "[[ID2]]", + "span_id": "[[ID3]]", + "trace_id": "[[ID4]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "exception": { + "values": [ + { + "mechanism": { + "handled": true, + "type": "generic" + }, + "stacktrace": { + "frames": [ + { + "colno": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "filename": "[[FILENAME1]]", + "function": "ContextAPI.with", + "in_app": false, + "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": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME4]]", + "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": "[[FILENAME5]]", + "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": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" + }, + { + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" + }, + { + "colno": 36, + "context_line": " const result = fn(span);", + "filename": "[[FILENAME5]]", + "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": 52, + "filename": "[[FILENAME10]]", + "function": "Object.apply", + "in_app": false, + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 17, + "filename": "[[FILENAME11]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", + "in_app": false, + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" + }, + { + "colno": 14, + "filename": "[[FILENAME12]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" + }, + { + "colno": 28, + "filename": "[[FILENAME2]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" + }, + { + "colno": 14, + "filename": "[[FILENAME2]]", + "function": "eval", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 24, + "filename": "[[FILENAME10]]", + "function": "eval", + "in_app": false, + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 10, + "filename": "[[FILENAME10]]", + "function": "startOrUpdateSpan", + "in_app": false, + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 41, + "filename": "[[FILENAME10]]", + "function": "eval", + "in_app": false, + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 26, + "filename": "[[FILENAME13]]", + "function": "Object.handleCallbackErrors", + "in_app": false, + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" + }, + { + "colno": 38, + "filename": "[[FILENAME10]]", + "function": "eval", + "in_app": false, + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 49, + "filename": "[[FILENAME9]]", + "function": "GET$1", + "in_app": false, + "lineno": 22, + "module": "route.ts" + }, + { + "colno": 16, + "filename": "[[FILENAME14]]", + "function": "Object.startSpan", + "in_app": false, + "lineno": 35, + "module": "@sentry.core.cjs.tracing:trace" + }, + { + "colno": 17, + "filename": "[[FILENAME2]]", + "function": "Object.startSpan", + "in_app": false, + "lineno": 854, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 76, + "filename": "[[FILENAME6]]", + "function": "Tracer.startActiveSpan", + "in_app": false, + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" + }, + { + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" + }, + { + "colno": 17, + "filename": "[[FILENAME2]]", + "function": "eval", + "in_app": false, + "lineno": 857, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 26, + "filename": "[[FILENAME15]]", + "function": "Object.handleCallbackErrors", + "in_app": false, + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" + }, + { + "colno": 13, + "filename": "[[FILENAME2]]", + "function": "eval", + "in_app": false, + "lineno": 858, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 53, + "filename": "[[FILENAME9]]", + "function": "eval", + "in_app": false, + "lineno": 25, + "module": "route.ts" + }, + { + "colno": 16, + "filename": "[[FILENAME14]]", + "function": "Object.startSpan", + "in_app": false, + "lineno": 35, + "module": "@sentry.core.cjs.tracing:trace" + }, + { + "colno": 17, + "filename": "[[FILENAME2]]", + "function": "Object.startSpan", + "in_app": false, + "lineno": 854, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 76, + "filename": "[[FILENAME6]]", + "function": "Tracer.startActiveSpan", + "in_app": false, + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" + }, + { + "colno": 54, + "filename": "[[FILENAME7]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "colno": 24, + "filename": "[[FILENAME2]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 40, + "filename": "[[FILENAME3]]", + "function": "SentryContextManager.with", + "in_app": false, + "lineno": 33, + "module": "@opentelemetry.context-async-hooks.build.src:AsyncLocalStorageContextManager" + }, + { + "colno": 14, + "filename": "[[FILENAME4]]", + "function": "AsyncLocalStorage.run", + "in_app": false, + "lineno": 346, + "module": "node:async_hooks" + }, + { + "colno": 17, + "filename": "[[FILENAME2]]", + "function": "eval", + "in_app": false, + "lineno": 857, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 26, + "filename": "[[FILENAME15]]", + "function": "Object.handleCallbackErrors", + "in_app": false, + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" + }, + { + "colno": 13, + "filename": "[[FILENAME2]]", + "function": "eval", + "in_app": false, + "lineno": 858, + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 74, + "filename": "[[FILENAME9]]", + "function": "eval", + "in_app": false, + "lineno": 28, + "module": "route.ts" + } + ] + }, + "type": "Error", + "value": "This is an 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=7cd7e0c3aefe457d9b521e2faee8e354", + "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": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", + "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", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-error-manual" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual_route--transaction.json new file mode 100644 index 0000000..08db7b0 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error-manual_route--transaction.json @@ -0,0 +1,261 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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 373ms (2131 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.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": "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": "executing api route (app) /api/test-error-manual/route", + "origin": "manual", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-error-manual/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error_route--transaction.json new file mode 100644 index 0000000..751083e --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-error_route--transaction.json @@ -0,0 +1,209 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /api/test-success in 1849ms (2123 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "spans": [ + { + "data": { + "next.route": "/api/test-error", + "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-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": "executing api route (app) /api/test-error/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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-error/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught_route--transaction.json new file mode 100644 index 0000000..e871d32 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-caught_route--transaction.json @@ -0,0 +1,251 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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 373ms (2131 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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: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]]" + } + ], + "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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-local-variables-caught/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught_route--transaction.json new file mode 100644 index 0000000..cab9cdf --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-local-variables-uncaught_route--transaction.json @@ -0,0 +1,241 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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 373ms (2131 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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: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 316ms (2137 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "internal_error", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-local-variables-uncaught/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json new file mode 100644 index 0000000..71e3db1 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]--event.json @@ -0,0 +1,937 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]" + }, + { + "type": "event" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-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 373ms (2131 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": { + "parent_span_id": "[[ID2]]", + "span_id": "[[ID3]]", + "trace_id": "[[ID4]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "exception": { + "values": [ + { + "mechanism": { + "handled": true, + "type": "generic" + }, + "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": "[[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" + ], + "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": "[[FILENAME7]]", + "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": "[[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" + ], + "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": "[[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" + ], + "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": "[[FILENAME7]]", + "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": "[[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" + ], + "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": "[[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" + ], + "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": "[[FILENAME7]]", + "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": "[[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" + ], + "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": "[[FILENAME8]]", + "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": 46, + "context_line": " return this._getContextManager().with(context, fn, thisArg, ...args);", + "filename": "[[FILENAME9]]", + "function": "ContextAPI.with", + "in_app": false, + "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": "[[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": 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": "[[FILENAME8]]", + "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": "[[FILENAME12]]", + "function": "Tracer.startActiveSpan", + "in_app": false, + "lineno": 136, + "module": "@opentelemetry.sdk-trace-base.build.esm:Tracer" + }, + { + "colno": 54, + "filename": "[[FILENAME13]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "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": 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": "[[FILENAME8]]", + "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": "[[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" + ], + "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": "[[FILENAME14]]", + "function": "Object.apply", + "in_app": false, + "lineno": 68, + "module": "route.ts" + }, + { + "colno": 52, + "filename": "[[FILENAME15]]", + "function": "Object.apply", + "in_app": false, + "lineno": 65, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 17, + "filename": "[[FILENAME16]]", + "function": "Object.withIsolationScopeOrReuseFromRootSpan", + "in_app": false, + "lineno": 24, + "module": "@sentry.nextjs.cjs.common.utils:withIsolationScopeOrReuseFromRootSpan" + }, + { + "colno": 14, + "filename": "[[FILENAME17]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": 96, + "module": "@sentry.core.cjs:currentScopes" + }, + { + "colno": 28, + "filename": "[[FILENAME10]]", + "function": "Object.withIsolationScope", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 54, + "filename": "[[FILENAME13]]", + "function": "ContextAPI.with", + "in_app": false, + "lineno": 95, + "module": "@opentelemetry.api.build.esm.api:context" + }, + { + "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": 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": 14, + "filename": "[[FILENAME10]]", + "function": "eval", + "in_app": false, + "lineno": "[[highNumber]]", + "module": "@sentry.opentelemetry.cjs:index" + }, + { + "colno": 24, + "filename": "[[FILENAME15]]", + "function": "eval", + "in_app": false, + "lineno": 73, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 10, + "filename": "[[FILENAME15]]", + "function": "startOrUpdateSpan", + "in_app": false, + "lineno": 50, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 41, + "filename": "[[FILENAME15]]", + "function": "eval", + "in_app": false, + "lineno": 74, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 26, + "filename": "[[FILENAME18]]", + "function": "Object.handleCallbackErrors", + "in_app": false, + "lineno": 26, + "module": "@sentry.core.cjs.utils:handleCallbackErrors" + }, + { + "colno": 38, + "filename": "[[FILENAME15]]", + "function": "eval", + "in_app": false, + "lineno": 75, + "module": "@sentry.nextjs.cjs.common:wrapRouteHandlerWithSentry" + }, + { + "colno": 86, + "filename": "[[FILENAME14]]", + "function": "GET$1", + "in_app": false, + "lineno": 22, + "module": "route.ts" + } + ] + }, + "type": "Error", + "value": "This is an 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=7cd7e0c3aefe457d9b521e2faee8e354", + "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": "7cd7e0c3aefe457d9b521e2faee8e354-b0006bb220ed247c", + "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", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-param-error/[param]" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]_route--transaction.json new file mode 100644 index 0000000..1717b20 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-error_[param]_route--transaction.json @@ -0,0 +1,227 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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-success-manual in 251ms (2129 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "spans": [ + { + "data": { + "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": "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-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": "executing api route (app) /api/test-param-error/[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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-param-error/[param]/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]_route--transaction.json new file mode 100644 index 0000000..472356b --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-param-success_[param]_route--transaction.json @@ -0,0 +1,215 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-param-success/[param]/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual_route--transaction.json new file mode 100644 index 0000000..b9fcf48 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success-manual_route--transaction.json @@ -0,0 +1,249 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /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-error in 481ms (2125 modules)", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Compiled /api/test-param-success/[param] in 259ms (2127 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.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": "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": "executing api route (app) /api/test-success-manual/route", + "origin": "manual", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-success-manual/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success_route--transaction.json b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success_route--transaction.json new file mode 100644 index 0000000..467fa36 --- /dev/null +++ b/utils/event-proxy-server/payload-files/nextjs-14_2_1/route-handlers/_api_test-success_route--transaction.json @@ -0,0 +1,209 @@ +[ + { + "dsn": "[[dsn]]", + "event_id": "[[ID1]]", + "sdk": { + "name": "sentry.javascript.nextjs", + "version": "8.0.0-beta.1" + }, + "sent_at": "[[ISODateString]]", + "trace": { + "environment": "qa", + "public_key": "[[publicKey]]", + "trace_id": "[[ID2]]" + } + }, + { + "type": "transaction" + }, + { + "breadcrumbs": [ + { + "category": "console", + "level": "log", + "message": " \u001b[32m\u001b[1m✓\u001b[22m\u001b[39m Ready in 5.6s", + "timestamp": "[[timestamp]]" + }, + { + "category": "console", + "level": "log", + "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 /api/test-success in 1849ms (2123 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" + }, + "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, + "sentry.source": "route" + }, + "op": "http.server", + "origin": "auto.function.nextjs", + "parent_span_id": "[[ID3]]", + "span_id": "[[ID4]]", + "status": "ok", + "trace_id": "[[ID2]]" + } + }, + "environment": "qa", + "event_id": "[[ID1]]", + "modules": {}, + "platform": "node", + "sdk": { + "integrations": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", + "RequestData", + "Console", + "OnUncaughtException", + "OnUnhandledRejection", + "ContextLines", + "LocalVariables", + "Context", + "Modules", + "Express", + "Fastify", + "Graphql", + "Mongo", + "Mongoose", + "Mysql", + "Mysql2", + "Postgres", + "Nest", + "Hapi", + "Koa", + "RequestIsolationScope", + "DistDirRewriteFrames" + ], + "name": "sentry.javascript.nextjs", + "packages": [ + { + "name": "npm:@sentry/nextjs", + "version": "8.0.0-beta.1" + }, + { + "name": "npm:@sentry/node", + "version": "8.0.0-beta.1" + } + ], + "version": "8.0.0-beta.1" + }, + "server_name": "D9M3PY4LQ7.local", + "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]]", + "timestamp": "[[timestamp]]", + "transaction": "GET /api/test-success/route", + "transaction_info": { + "source": "route" + }, + "type": "transaction" + } +] \ No newline at end of file diff --git a/utils/event-proxy-server/payload-files/readme.md b/utils/event-proxy-server/payload-files/readme.md index bb5ed91..adff31f 100644 --- a/utils/event-proxy-server/payload-files/readme.md +++ b/utils/event-proxy-server/payload-files/readme.md @@ -1,2 +1,12 @@ When running the event-proxy-server, the request are saved in a json file. This folder is where all the generated files go. + +## Notes + +### Fastify + +- v8: test-error does not include url + +### Next.js + +- v7: "transaction" is " " in sent event (when error happens) From d623795dce16cd23f82201dd7997e0cf039d1593 Mon Sep 17 00:00:00 2001 From: s1gr1d Date: Tue, 16 Apr 2024 16:40:58 +0200 Subject: [PATCH 9/9] improve JSON handling; add yalc to gitignore --- .gitignore | 3 ++ .../src/event-proxy-server.ts | 48 +++++++++++++++---- 2 files changed, 42 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index eb58d44..8f611c2 100644 --- a/.gitignore +++ b/.gitignore @@ -134,3 +134,6 @@ dist # Mac .DS_Store + +# Yalc +.yalc diff --git a/utils/event-proxy-server/src/event-proxy-server.ts b/utils/event-proxy-server/src/event-proxy-server.ts index b70f635..de4b2d9 100644 --- a/utils/event-proxy-server/src/event-proxy-server.ts +++ b/utils/event-proxy-server/src/event-proxy-server.ts @@ -35,8 +35,15 @@ function isDateLikeString(str: string): boolean { } function extractPathFromUrl(url: string): string { - const localhost = 'http://localhost:3030/'; - return url.replace(localhost, ''); + return url.replace('http://localhost:3030/', ''); +} + +function extractTransactionRoute(transactionName: string): string { + return transactionName.replace('GET ', ''); +} + +function extractRelevantFileName(str: string): string { + return extractPathFromUrl(extractTransactionRoute(str)); } function addCommaAfterEachLine(data: string): string { @@ -113,9 +120,24 @@ function recursivelyReplaceData( } } -function replaceDynamicValues(data: string): string[] { - const jsonData = JSON.parse(data); +function sortObjectKeys(obj: unknown): unknown { + if (typeof obj !== 'object' || obj === null) { + return obj; + } + + if (Array.isArray(obj)) { + return obj.map(sortObjectKeys); + } + + return Object.keys(obj as Record) + .sort() + .reduce((result: Record, key: string) => { + result[key] = sortObjectKeys((obj as Record)[key]); + return result; + }, {}); +} +function replaceDynamicValues(jsonData: object[]): object[] { recursivelyReplaceData(jsonData, { value: 1 }, new Map(), { value: 1 }, new Map()); // change remaining dynamic values @@ -140,21 +162,29 @@ async function transformSavedJSON() { const data = await readFile(TEMPORARY_FILE_PATH, 'utf8'); const jsonData = addCommaAfterEachLine(data); - const transformedJSON = replaceDynamicValues(jsonData); + const sortedJSON = sortObjectKeys(JSON.parse(jsonData)); + const transformedJSON = replaceDynamicValues(sortedJSON as object[]); + + const type = (transformedJSON[1] as unknown as { type: string }).type; // transaction or event - const type = (transformedJSON[1] as unknown as { type: string }).type; const objData = transformedJSON[2] as unknown as { request?: { url?: string }; + transaction?: string; contexts?: { trace?: { data?: { url?: string } } }; }; if ('request' in objData || 'contexts' in objData) { + const transactionName = objData?.transaction; const url = objData?.request?.url || objData.contexts?.trace?.data?.url; - if (url) { + // Change to `url` or `transactionName` depending on what you want to use as filename + // Using transaction name as filename is useful when testing frameworks (such as Next.js) as the API routes are often called from the client and `url` would just be 'localhost:3030' + const filename = url; // transactionName; + + if (filename) { const replaceForwardSlashes = (str: string) => str.split('/').join('_'); - const filepath = `payload-files/${APP}/${replaceForwardSlashes(extractPathFromUrl(url))}--${type}.json`; + const filepath = `payload-files/${APP}/${replaceForwardSlashes(extractRelevantFileName(filename))}--${type}.json`; writeFile(filepath, JSON.stringify(transformedJSON, null, 2)).then(() => { console.log(`Successfully replaced data and saved file in ${filepath}`); @@ -164,7 +194,7 @@ async function transformSavedJSON() { ); }); } else { - console.warn('No url found in JSON'); + console.warn('No url or transaction found in JSON'); } } } catch (err) {