Sentry is a popular error monitoring and reporting tool. It is open source and enables you to monitor and track real-time errors and crashes in your app.
RudderStack supports Sentry as a destination to which you can send your event data directly.
In the web device mode integration, that is, using JavaScript SDK as a source, RudderStack loads the Sentry native SDK from the https://browser.sentry-cdn.com/ domain.
Based on your website’s content security policy, you might need to allowlist this domain to load the Sentry SDK successfully.
Get started
Once you have confirmed that the source platform supports sending events to Sentry, follow these steps:
From your RudderStack dashboard, add the source. Then, select Sentry from the list of destinations.
Assign a name to the destination and click Next. You will then see the following screen:
Configuration Settings for Sentry
Connection Settings
To successfully configure Sentry as a destination, configure the following settings:
Public DSN: Enter the public DSN of your Sentry project here. This is a mandatory field.
Refer to the FAQ section below for more information on getting your public DSN.
Environment: Enter the value you want RudderStack to set as the environment configuration in your Sentry dashboard. For more information on the use of environments in Sentry, refer to their documentation.
If you enter the value for the Environment field as a forward slash (/), new line character, space (), or the string None, Sentry will silently discard the environment configuration information without sending any error.
Set Release By Property: This field helps you dynamically track the application version in Sentry. The property set here will be searched in the global window object. If found, RudderStack will use that particular version. Otherwise, the value set in the Release field will be used by default.
Suppose you have set the Set Release By Property field to the value new_custom_version and RudderStack finds window.new_custom_version=2.4.5 in the window object. In this case, RudderStack will send the value 2.4.5 as the app version to Sentry. Otherwise, it will look for the value input in the Release field and send it as the app version.
Sentry needs the release value for every single session. If neither Set Release By Property or Release fields are specified in the dashboard while configuring the destination, the particular session will be discarded.
Release: This field is used for tracking your application’s version in Sentry.
Server Name: This option is used to track the host on which the client is running. You can enter the server name or even the Device ID in this field.
Logger: The name you want Sentry to use as logger. For more information on Sentry’s logging feature, refer to their docs.
Ignore Errors: This option refers to a list of error messages that you do not want Sentry to notify you. You can enter this list as a string or a regular expression.
Include Paths: This field should contain the regex patterns of URLs that are part of the app in the stack trace. The other frames will appear as collapsed in the Sentry dashboard.
Allow URLs: This is the list of the regex patterns or exact URL strings - from which the errors need to be exclusively sent to Sentry. The URLs of the actual JavaScript files should match this list.
Deny URLs: This field refers to the list of regex patterns or exact URL strings for which the errors need to be ignored.
Debug Mode: In debug mode, no events are sent to your Sentry instance. You can set this option to true or false to enable or disable this feature. By default, it is set to false.
A sample configuration looks like the following:
Identify
When an identify call is made, RudderStack calls Sentry.setUser by passing the user traits.
RudderStack discards the identify call if none of the userId, userName, email, or ip_address is present. Atleast one of these four fields is needed to capture the user information. For more information, refer to the Sentry documentation.
RudderStack maps userId to id while setting the user in Sentry.
This site uses cookies to improve your experience while you navigate through the website. Out of
these
cookies, the cookies that are categorized as necessary are stored on your browser as they are as
essential
for the working of basic functionalities of the website. We also use third-party cookies that
help
us
analyze and understand how you use this website. These cookies will be stored in your browser
only
with
your
consent. You also have the option to opt-out of these cookies. But opting out of some of these
cookies
may
have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This
category only includes cookies that ensures basic functionalities and security
features of the website. These cookies do not store any personal information.
This site uses cookies to improve your experience. If you want to
learn more about cookies and why we use them, visit our cookie
policy. We'll assume you're ok with this, but you can opt-out if you wish Cookie Settings.