-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsentry.edge.config.ts
27 lines (22 loc) · 1.31 KB
/
sentry.edge.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
// This file configures the initialization of Sentry for edge features (middleware, edge routes, and so on).
// The config you add here will be used whenever one of the edge features is loaded.
// Note that this config is unrelated to the Vercel Edge Runtime and is also required when running locally.
// https://docs.sentry.io/platforms/javascript/guides/nextjs/
import * as Sentry from "@sentry/nextjs";
const SENTRY_DSN = process.env.SENTRY_DSN || process.env.NEXT_PUBLIC_SENTRY_DSN;
Sentry.init({
dsn: SENTRY_DSN,
// Define how likely traces are sampled. Adjust this value in production, or use tracesSampler for greater control.
tracesSampleRate: 1,
// Setting this option to true will print useful information to the console while you're setting up Sentry.
debug: false,
beforeSendTransaction (e) {
const isKubeProbe = e.request?.headers && e.request?.headers['user-agent'] && e.request.headers['user-agent'].includes('kube-probe');
const isBlackboxExporter = e.request?.headers && e.request?.headers['user-agent'] && e.request.headers['user-agent'].includes('Blackbox Exporter');
const isErrorRoute = e.request?.url && e.request.url.includes('/api/error');
if (isKubeProbe || isErrorRoute || isBlackboxExporter) {
return null;
}
return e;
}
});