From 8100aa3cbbd9ed4241247e6774c5ab55548be761 Mon Sep 17 00:00:00 2001 From: Vasco Santos Date: Thu, 21 Apr 2022 13:00:32 +0200 Subject: [PATCH] fix: sentry source maps for worker.mjs (#38) --- packages/edge-gateway/package.json | 2 +- packages/edge-gateway/scripts/cli.js | 3 ++- packages/edge-gateway/src/env.js | 11 +++++++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/edge-gateway/package.json b/packages/edge-gateway/package.json index 1cbe992..439b877 100644 --- a/packages/edge-gateway/package.json +++ b/packages/edge-gateway/package.json @@ -4,7 +4,7 @@ "description": "IPFS edge gateway for nft.storage", "private": true, "type": "module", - "module": "./dist/worker.mjs", + "main": "./dist/worker.mjs", "scripts": { "build": "node scripts/cli.js build", "dev": "miniflare --watch --debug", diff --git a/packages/edge-gateway/scripts/cli.js b/packages/edge-gateway/scripts/cli.js index 5f99dfa..802574f 100644 --- a/packages/edge-gateway/scripts/cli.js +++ b/packages/edge-gateway/scripts/cli.js @@ -56,6 +56,7 @@ async function buildCmd(opts) { outfile: path.join(__dirname, '..', 'dist', 'worker.mjs'), legalComments: 'external', define: { + SENTRY_RELEASE: JSON.stringify(sentryRelease), VERSION: JSON.stringify(pkg.version), COMMITHASH: JSON.stringify(git.long(__dirname)), BRANCH: JSON.stringify(git.branch(__dirname)), @@ -81,7 +82,7 @@ async function buildCmd(opts) { ignoreMissing: true, }) await cli.releases.uploadSourceMaps(sentryRelease, { - include: ['./dist'], + include: [path.join(__dirname, '..', 'dist')], ext: ['map', 'mjs'], }) await cli.releases.finalize(sentryRelease) diff --git a/packages/edge-gateway/src/env.js b/packages/edge-gateway/src/env.js index 1469424..13a0b6f 100644 --- a/packages/edge-gateway/src/env.js +++ b/packages/edge-gateway/src/env.js @@ -6,7 +6,8 @@ import { Logging } from './logs.js' * @typedef {Object} EnvInput * @property {string} IPFS_GATEWAYS * @property {string} GATEWAY_HOSTNAME - * @property {string} VERSION + * @property {string} SENTRY_RELEASE + * @property {string} VERSION SENTRY_RELEASE * @property {string} COMMITHASH * @property {string} BRANCH * @property {string} DEBUG @@ -43,7 +44,7 @@ import { Logging } from './logs.js' * @param {import('.').Ctx} ctx */ export function envAll(request, env, ctx) { - env.sentry = getSentry(request, env) + env.sentry = getSentry(request, env, ctx) env.ipfsGateways = JSON.parse(env.IPFS_GATEWAYS) env.gatewayMetricsDurable = env.GATEWAYMETRICS env.summaryMetricsDurable = env.SUMMARYMETRICS @@ -63,8 +64,9 @@ export function envAll(request, env, ctx) { * * @param {Request} request * @param {Env} env + * @param {import('.').Ctx} ctx */ -function getSentry(request, env) { +function getSentry(request, env, ctx) { if (!env.SENTRY_DSN) { return } @@ -72,6 +74,7 @@ function getSentry(request, env) { return new Toucan({ request, dsn: env.SENTRY_DSN, + context: ctx, allowedHeaders: ['user-agent'], allowedSearchParams: /(.*)/, debug: false, @@ -83,7 +86,7 @@ function getSentry(request, env) { filename: frame.filename.substring(1), }), }, - release: env.VERSION, + release: env.SENTRY_RELEASE, pkg, }) }