Official Sentry SDK for Svelte
This SDK is considered experimental and in an alpha state. It may experience breaking changes. Please reach out on GitHub if you have any feedback or concerns. This SDK currently only supports Svelte and is not yet officially compatible with with SvelteKit.
General
This package is a wrapper around @sentry/browser
, providing error monitoring and basic performance monitoring
features for Svelte.
To use the SDK, initialize Sentry in your Svelte entry point main.js
before you bootstrap your Svelte app:
import App from "./App.svelte";
import * as Sentry from "@sentry/svelte";
import { BrowserTracing } from "@sentry/tracing";
Sentry.init({
dsn: "__DSN__",
release: "my-project-name@2.3.12",
integrations: [new BrowserTracing()],
tracesSampleRate: 1.0,
});
const app = new App({
target: document.getElementById("app"),
});
export default app;
The Sentry Svelte SDK supports all features from the @sentry/browser
SDK. Until it becomes more stable, please refer to the Sentry Browser SDK documentation for more information and usage instructions.
Sourcemaps and Releases
To create releases and upload source maps to Sentry, we recommend using sentry-cli
. You can create a bash script to take care of creating a release, uploading source maps and finalizing the release:
#!/bin/bash
VERSION=<your version>
ORG=<your org-slug>
PROJECT=<your project-slug>
SOURCEMAPS_PATH=./dist
sentry-cli releases new $VERSION --org $ORG --project $PROJECT
sentry-cli releases files $VERSION upload-sourcemaps $SOURCEMAPS_PATH --org $ORG --project $PROJECT
sentry-cli releases finalize $VERSION --org $ORG --project $PROJECT
Please note that the paths provided in this example work for a typical Svelte project that adheres to the project structure set by create-vite with the svelte(-ts)
template. If your project setup differs from this template, your configuration may need adjustments. Please refer to our documentation of Advanced sentry-cli
Sourcemaps Options and to our Sourcemaps Troubleshooting Guide.