diff --git a/frontend/src/hooks.client.ts b/frontend/src/hooks.client.ts index c837a49f..3cfcd365 100644 --- a/frontend/src/hooks.client.ts +++ b/frontend/src/hooks.client.ts @@ -1,9 +1,11 @@ import * as Sentry from '@sentry/sveltekit'; +// VITE_SENTRY_DSN is a write-only ingest key — it can POST events to GlitchTip +// but cannot read them. Safe to include in the client bundle per Sentry security model. Sentry.init({ dsn: import.meta.env.VITE_SENTRY_DSN, environment: import.meta.env.MODE, - tracesSampleRate: 1.0, + tracesSampleRate: 0.1, sendDefaultPii: false, enabled: !!import.meta.env.VITE_SENTRY_DSN }); diff --git a/frontend/src/hooks.server.ts b/frontend/src/hooks.server.ts index 710e269a..2c155dce 100644 --- a/frontend/src/hooks.server.ts +++ b/frontend/src/hooks.server.ts @@ -6,10 +6,12 @@ import { env } from 'process'; import { cookieName, cookieMaxAge } from '$lib/paraglide/runtime'; import { detectLocale } from '$lib/shared/server/locale'; +// VITE_SENTRY_DSN is a write-only ingest key — it can POST events to GlitchTip +// but cannot read them. Safe to include in the client bundle per Sentry security model. Sentry.init({ dsn: import.meta.env.VITE_SENTRY_DSN, environment: import.meta.env.MODE, - tracesSampleRate: 1.0, + tracesSampleRate: 0.1, sendDefaultPii: false, enabled: !!import.meta.env.VITE_SENTRY_DSN }); diff --git a/frontend/src/routes/+error.svelte b/frontend/src/routes/+error.svelte index 56ce49c4..96f98e57 100644 --- a/frontend/src/routes/+error.svelte +++ b/frontend/src/routes/+error.svelte @@ -29,7 +29,7 @@ function copyId() {
{page.error?.message ?? m.error_internal_error()}
-{page.status}
+{page.status}
{#if page.error?.errorId}