Miss any of our Open RFC calls?Watch the recordings here! »

@sentry/gatsby

5.27.1 • Public • Published


Official Sentry SDK for GatsbyJS

Register the package as a plugin in gastby-config.js:

{
  // ...
  plugins: [
    {
      resolve: "@sentry/gatsby",
      options: {
          dsn: process.env.SENTRY_DSN, // this is the default
      }
    },
    // ...
  ]
}

Options will be passed directly to Sentry.init. See all available options in our docs. The environment value defaults to NODE_ENV (or 'development' if NODE_ENV is not set).

GitHub Actions

The release value is inferred from GITHUB_SHA.

Netlify

The release value is inferred from COMMIT_REF.

Vercel

To automatically capture the release value on Vercel you will need to register appropriate system environment variable (e.g. VERCEL_GITHUB_COMMIT_SHA) in your project.

Sentry Performance

To enable tracing, supply either tracesSampleRate or tracesSampler to the options and make sure you have installed the @sentry/tracing package. This will also turn on the BrowserTracing integration for automatic instrumentation of pageloads and navigations.

{
  // ...
  plugins: [
    {
      resolve: "@sentry/gatsby",
      options: {
        dsn: process.env.SENTRY_DSN, // this is the default
 
        // A rate of 1 means all traces will be sent, so it's good for testing.
        // In production, you'll likely want to either choose a lower rate or use `tracesSampler` instead (see below).
        tracesSampleRate: 1,
 
        // Alternatively:
        tracesSampler: samplingContext => {
          // Examine provided context data (along with anything in the global namespace) to decide the sample rate
          // for this transaction.
          // Can return 0 to drop the transaction entirely.
 
          if ("...") {
            return 0.5 // These are important - take a big sample
          }
          else if ("...") {
            return 0.01 // These are less important or happen much more frequently - only take 1% of them
          }
          else if ("...") {
            return 0 // These aren't something worth tracking - drop all transactions like this
          }
          else {
            return 0.1 // Default sample rate
          }
        }
      }
    },
    // ...
  ]
}

If you want to supply options to the BrowserTracing integration, use the browserTracingOptions parameter.

{
  // ...
  plugins: [
    {
      resolve: "@sentry/gatsby",
      options: {
          dsn: process.env.SENTRY_DSN, // this is the default
          tracesSampleRate: 1, // or tracesSampler (see above)
          browserTracingOptions: {
            // disable creating spans for XHR requests
            traceXHR: false,
          }
      }
    },
    // ...
  ]
}

Links

Install

npm i @sentry/gatsby

DownloadsWeekly Downloads

4,967

Version

5.27.1

License

BSD-3-Clause

Unpacked Size

10.4 kB

Total Files

13

Last publish

Collaborators

  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar