sentry.client.config.jsimport * as Sentry from '@sentry/nextjs' const SENTRY_DSN = process.env.SENTRY_DSN || process.env.NEXT_PUBLIC_SENTRY_DSN; const SENTRY_ENVIRONMENT = process.env.VERCEL_ENV || process.env.NEXT_PUBLIC_VERCEL_ENV || 'development'; Sentry.init({ dsn: SENTRY_DSN, //デモ環境では100%検知し、本番では10%のみ検知する tracesSampleRate: process.env.NEXT_PUBLIC_APP_ENV === 'production' ? 0.1 : 1.0, //LINE内のブラウザはwebgl非対応なので、非開発由来由来なエラーが来るため除く //https://help2.line.me/linesearchbot/web/pc?lang=ja beforeSend(event) { if (window.navigator.userAgent.indexOf('Linespider') !== -1) return null; return event; }, //開発由来でないエラーをフィルタリングする ignoreErrors: [ 'Network Error', 'Failed to fetch', 'Load failed', 'No error message', 'NotSupportedError', 'Unexpected token', 'NotAllowedError', 'googlefc is not defined', 'safari-web-extension://', 'Request aborted', ], });
ログイン成功後Sentry.addBreadcrumb({ category: "auth", message: `Login successful. redirectUrl:${redirectUrl}`,//加えたい情報を追加する level: "info", //"fatal", "error", "warning", "log", "info", "debug". });
詳細は公式ドキュメント参照
fetchのエラーハンドリングSentry.captureException(error, { tags: { path: router.query.path, //現在アクセスしているURL hoge: hoge, }, })
詳細は公式ドキュメント参照