From 1b30c954eb3cfbac8968a2ee2d0ca5472ba6f202 Mon Sep 17 00:00:00 2001 From: Katie Byers Date: Tue, 26 Oct 2021 12:00:33 -0700 Subject: [PATCH] tag backend events when running on vercel --- packages/nextjs/src/index.server.ts | 3 +++ packages/nextjs/test/index.server.test.ts | 24 +++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/packages/nextjs/src/index.server.ts b/packages/nextjs/src/index.server.ts index 2ed6ce1ec0fc..0c7e19690877 100644 --- a/packages/nextjs/src/index.server.ts +++ b/packages/nextjs/src/index.server.ts @@ -53,6 +53,9 @@ export function init(options: NextjsOptions): void { configureScope(scope => { scope.setTag('runtime', 'node'); + if (process.env.VERCEL) { + scope.setTag('vercel', true); + } }); if (activeDomain) { diff --git a/packages/nextjs/test/index.server.test.ts b/packages/nextjs/test/index.server.test.ts index 43b597b4c435..337e70345c52 100644 --- a/packages/nextjs/test/index.server.test.ts +++ b/packages/nextjs/test/index.server.test.ts @@ -63,6 +63,30 @@ describe('Server init()', () => { expect(currentScope._tags).toEqual({ runtime: 'node' }); }); + it('applies `vercel` tag when running on vercel', () => { + const currentScope = getCurrentHub().getScope(); + + process.env.VERCEL = '1'; + + init({}); + + // @ts-ignore need access to protected _tags attribute + expect(currentScope._tags.vercel).toEqual(true); + + delete process.env.VERCEL; + }); + + it('does not apply `vercel` tag when not running on vercel', () => { + const currentScope = getCurrentHub().getScope(); + + expect(process.env.VERCEL).toBeUndefined(); + + init({}); + + // @ts-ignore need access to protected _tags attribute + expect(currentScope._tags.vercel).toBeUndefined(); + }); + it("initializes both global hub and domain hub when there's an active domain", () => { const globalHub = getCurrentHub(); const local = domain.create();