Sentry

Sentry is an observability platform that helps you monitor your application's performance and errors. In this guide, you'll learn how to configure Sentry in your Next.js Supabase SaaS kit.

To use Sentry to capture exceptions and performance metrics of your app, please define the below variables:

NEXT_PUBLIC_MONITORING_PROVIDER=sentry NEXT_PUBLIC_SENTRY_DSN=your_dsn

Please install the package @sentry/nextjs in apps/web/package.json as a dependency.

pnpm i @sentry/nextjs --filter web

Finally, update the Next.js configuration in your next.config.js file:

next.config.mjs
import { withSentryConfig } from '@sentry/nextjs'; // wrap your Next.js configuration with the Sentry configuration withSentryConfig(nextConfig);

You can find your Sentry DSN in the Sentry dashboard.

To upload source maps to Sentry, use the following options:

next.config.mjs
import { withSentryConfig } from '@sentry/nextjs'; export default withSentryConfig( withBundleAnalyzer({ enabled: process.env.ANALYZE === 'true', })(config), { org: 'your-sentry-org-name', project: 'your-sentry-project-name', // An auth token is required for uploading source maps. authToken: process.env.SENTRY_AUTH_TOKEN, silent: !IS_PRODUCTION, // Used to suppress logs autoInstrumentServerFunctions: false, widenClientFileUpload: true, }, );

And make sure to add the SENTRY_AUTH_TOKEN to your CI environment variables.

SENTRY_AUTH_TOKEN=your_auth_token

Subscribe to our Newsletter
Get the latest updates about React, Remix, Next.js, Firebase, Supabase and Tailwind CSS