-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsentry.server.config.ts
35 lines (31 loc) · 1.2 KB
/
sentry.server.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// This file configures the initialization of Sentry on the server.
// The config you add here will be used whenever the server handles a request.
// https://docs.sentry.io/platforms/javascript/guides/nextjs/
import { ExtraErrorData } from '@sentry/integrations'
import * as Sentry from '@sentry/nextjs'
import { NEXT_PUBLIC_ENVIRONMENT } from '@/utils/shared/sharedEnv'
import { toBool } from '@/utils/shared/toBool'
const dsn = process.env.NEXT_PUBLIC_SENTRY_DSN
Sentry.init({
environment: NEXT_PUBLIC_ENVIRONMENT,
dsn,
enabled: !!dsn,
integrations: [new ExtraErrorData({ depth: 10 })],
tracesSampleRate: NEXT_PUBLIC_ENVIRONMENT === 'production' ? 0.1 : 1.0,
normalizeDepth: 10,
// Setting this option to true will print useful information to the console while you're setting up Sentry.
debug: false,
beforeSend: (event, hint) => {
if (NEXT_PUBLIC_ENVIRONMENT === 'local') {
const shouldSuppress = toBool(process.env.SUPPRESS_SENTRY_ERRORS_ON_LOCAL) || !dsn
console.error(
`${shouldSuppress ? 'Suppressed ' : ''}Sentry`,
hint?.originalException || hint?.syntheticException,
)
if (shouldSuppress) {
return null
}
}
return event
},
})