Source Maps
Upload Source Maps for a Svelte Project
This guide assumes you are using the @sentry/svelte
SDK on version 7.47.0
or higher.
If you are on an older version and you want to upload source maps we recommend upgrading your SDK to the newest version.
Using the Sentry Wizard
The easiest way to configure uploading source maps is by using the Sentry Wizard:
npx @sentry/wizard@latest -i sourcemaps
The wizard will guide you through the following steps:
- Logging into Sentry and selecting a projectRepresents your service in Sentry and allows you to scope events to a distinct application.
- Installing the necessary Sentry packages
- Configuring your build tool to generate and upload source maps
- Configuring your CI to upload source maps
If you want to configure source maps upload manually, follow the guide for your bundler or build tool below.
Manually Configuring Source Maps Upload
To generate source maps with your Svelte
svelte.config.js
import sveltePreprocess from "svelte-preprocess";
const config = {
compilerOptions: {
enableSourcemap: true,
},
preprocess: sveltePreprocess({
sourceMap: true,
}),
};
export default config;
If you're using Vite in you Svelte project, you can use Sentry's Vite plugin for convenience:
npm install @sentry/vite-plugin --save-dev
To upload source maps you have to configure an auth
authToken
option, with a SENTRY_AUTH_TOKEN
environment variable, or with a .env.sentry-build-plugin
file in the working directory when building your project.
You likely want to add the auth token as an environment variable to your CI/CD environment..env.sentry-build-plugin
SENTRY_AUTH_TOKEN=sntrys_YOUR_TOKEN_HERE
Configure Vite to emit source maps and use the Sentry Vite plugin:
vite.config.js
import { defineConfig } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import { sentryVitePlugin } from "@sentry/vite-plugin";
export default defineConfig({
build: {
sourcemap: true, // Source map generation must be turned on
},
plugins: [
svelte(),
// Put the Sentry vite plugin after all other plugins
sentryVitePlugin({
org: "example-org",
project: "example-project",
authToken: process.env.SENTRY_AUTH_TOKEN,
}),
],
});
The Sentry Vite plugin doesn't upload source maps in watch-mode/development-mode. We recommend running a production build to test your implementation.
Other Bundlers
If you're using a bundler other than Vite, check out our general guide on how to upload source maps, or refer to your bundler's documentation.
By default, if Sentry can't find the uploaded files it needs, it will attempt to download them from the URLs in the stack trace. To disable this, turn off "Enable JavaScript source fetching" in either your organization's "Security & Privacy" settings or your
Additional Resources
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) to suggesting an update ("yeah, this would be better").
- Package:
- npm:@sentry/svelte
- Version:
- 7.86.0
- Repository:
- https://github.com/getsentry/sentry-javascript