| 'use client' |
|
|
| import { useEffect } from 'react' |
| import * as Sentry from '@sentry/react' |
|
|
| const isDevelopment = process.env.NODE_ENV === 'development' |
|
|
| const SentryInit = ({ |
| children, |
| }: { children: React.ReactElement }) => { |
| useEffect(() => { |
| const SENTRY_DSN = document?.body?.getAttribute('data-public-sentry-dsn') |
| if (!isDevelopment && SENTRY_DSN) { |
| Sentry.init({ |
| dsn: SENTRY_DSN, |
| integrations: [ |
| new Sentry.BrowserTracing({ |
| }), |
| new Sentry.Replay(), |
| ], |
| tracesSampleRate: 0.1, |
| replaysSessionSampleRate: 0.1, |
| replaysOnErrorSampleRate: 1.0, |
| }) |
| } |
| }, []) |
| return children |
| } |
|
|
| export default SentryInit |
|
|