chore(sentry): make sampling config environment-driven

This commit is contained in:
2026-07-02 13:04:13 +08:00
parent d8a28bb438
commit bf7d47050d
8 changed files with 173 additions and 38 deletions
+8 -14
View File
@@ -3,29 +3,23 @@
// https://docs.sentry.io/platforms/javascript/guides/nextjs/
import * as Sentry from "@sentry/nextjs";
import {
getSentryReplayOnErrorSampleRate,
getSentryReplaySessionSampleRate,
getSharedSentryOptions,
} from "@/utils/sentry-config";
Sentry.init({
dsn: "https://a9390ae6d4b06c851854d48b070bb4cf@o4511511166713856.ingest.us.sentry.io/4511612532228096",
...getSharedSentryOptions(),
// Add optional integrations for additional features
integrations: [Sentry.replayIntegration()],
// Define how likely traces are sampled. Adjust this value in production, or use tracesSampler for greater control.
tracesSampleRate: 1,
// Enable logs to be sent to Sentry
enableLogs: true,
// Define how likely Replay events are sampled.
// This sets the sample rate to be 10%. You may want this to be 100% while
// in development and sample at a lower rate in production
replaysSessionSampleRate: 0.1,
replaysSessionSampleRate: getSentryReplaySessionSampleRate(),
// Define how likely Replay events are sampled when an error occurs.
replaysOnErrorSampleRate: 1.0,
// Enable sending user PII (Personally Identifiable Information)
// https://docs.sentry.io/platforms/javascript/guides/nextjs/configuration/options/#sendDefaultPii
sendDefaultPii: true,
replaysOnErrorSampleRate: getSentryReplayOnErrorSampleRate(),
});
export const onRouterTransitionStart = Sentry.captureRouterTransitionStart;