Socket
Socket
Sign inDemoInstall

@sentry/browser

Package Overview
Dependencies
11
Maintainers
11
Versions
475
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @sentry/browser

Official Sentry SDK for browsers


Version published
Weekly downloads
5.6M
decreased by-0.73%
Maintainers
11
Install size
10.6 MB
Created
Weekly downloads
 

Package description

What is @sentry/browser?

The @sentry/browser package is a JavaScript SDK for Sentry, which is an error tracking service that helps developers monitor and fix crashes in real time. The SDK hooks into the global error handling mechanisms of the browser and captures unhandled exceptions and other errors, providing rich context and insights into the underlying issues.

What are @sentry/browser's main functionalities?

Error Tracking

This feature automatically captures JavaScript exceptions and sends them to Sentry for analysis and tracking. The code initializes Sentry with a DSN (Data Source Name) and sets up a global error handler to capture exceptions.

Sentry.init({ dsn: 'YOUR_DSN' });

window.onerror = function (errorMsg, url, lineNumber, column, errorObj) {
  Sentry.captureException(errorObj);
  return false;
}

Manual Error Reporting

This allows developers to manually report exceptions or errors to Sentry. The code block demonstrates how to catch an error in a try-catch block and manually send it to Sentry using the captureException method.

Sentry.init({ dsn: 'YOUR_DSN' });

try {
  // Code that might fail
} catch (error) {
  Sentry.captureException(error);
}

Performance Monitoring

This feature enables performance monitoring by capturing transactions and spans. The code initializes Sentry with a sample rate for transactions and demonstrates how to start and finish a transaction, which can be used to measure the performance of operations.

Sentry.init({ dsn: 'YOUR_DSN', tracesSampleRate: 1.0 });

const transaction = Sentry.startTransaction({ name: 'test transaction' });
// ... some code ...
transaction.finish();

Breadcrumbs

Breadcrumbs are a trail of events that happened prior to an issue. This feature allows you to record breadcrumbs manually. The code shows how to add a breadcrumb for an authentication event.

Sentry.init({ dsn: 'YOUR_DSN' });

Sentry.addBreadcrumb({
  category: 'auth',
  message: 'User authenticated',
  level: Sentry.Severity.Info
});

User Feedback

This feature allows you to collect user feedback when an error occurs. The code initializes Sentry and then shows a dialog to the user to collect feedback for a specific event.

Sentry.init({ dsn: 'YOUR_DSN' });

Sentry.showReportDialog({ eventId: 'event_id' });

Other packages similar to @sentry/browser

Readme

Source

Sentry

Official Sentry SDK for Browsers

Sauce Test Status npm version npm dm npm dt

Usage

To use this SDK, call Sentry.init(options) as early as possible after loading the page. This will initialize the SDK and hook into the environment. Note that you can turn off almost all side effects using the respective options.

import * as Sentry from '@sentry/browser';

Sentry.init({
  dsn: '__DSN__',
  // ...
});

To set context information or send manual events, use the exported functions of @sentry/browser. Note that these functions will not perform any action before you have called Sentry.init():

import * as Sentry from '@sentry/browser';

// Set user information, as well as tags and further extras
Sentry.configureScope(scope => {
  scope.setExtra('battery', 0.7);
  scope.setTag('user_mode', 'admin');
  scope.setUser({ id: '4711' });
  // scope.clear();
});

// Add a breadcrumb for future events
Sentry.addBreadcrumb({
  message: 'My Breadcrumb',
  // ...
});

// Capture exceptions, messages or manual events
Sentry.captureMessage('Hello, world!');
Sentry.captureException(new Error('Good bye'));
Sentry.captureEvent({
  message: 'Manual',
  stacktrace: [
    // ...
  ],
});

FAQs

Last updated on 24 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc