What is @sentry/core?
The @sentry/core package is part of the Sentry SDK for JavaScript, which is designed for real-time monitoring and tracking of application health, errors, and performance issues. It provides the core functionalities needed for initializing and configuring Sentry in your application, handling exceptions, and capturing messages and events.
What are @sentry/core's main functionalities?
Initialization and Configuration
This feature allows you to initialize Sentry in your application with your project's DSN (Data Source Name). It is the first step in integrating Sentry into your project for error tracking and performance monitoring.
Sentry.init({ dsn: 'YOUR_DSN_HERE' });
Capturing Exceptions
This feature enables you to capture exceptions in your code and send them to Sentry for monitoring and analysis. It helps in identifying and debugging errors in your application.
try { myFunction(); } catch (e) { Sentry.captureException(e); }
Capturing Messages
This feature allows you to capture custom messages or log messages in Sentry. It can be used for tracking custom events or information that is not necessarily an error.
Sentry.captureMessage('Something went wrong');
Other packages similar to @sentry/core
logrocket
LogRocket is a frontend application monitoring and product analytics tool that provides session replay, performance monitoring, and error tracking. It offers a more visual approach to debugging by allowing you to replay problems as if you were in your user's shoes. Compared to @sentry/core, LogRocket focuses more on the user experience aspect alongside error tracking.
bugsnag
Bugsnag provides error monitoring and application stability management. It offers features for capturing and tracking errors, diagnosing issues, and improving app stability. Bugsnag is similar to @sentry/core in its core functionalities of error tracking and reporting but also emphasizes application stability metrics and trends.
Sentry JavaScript SDK Core
![npm dt](https://img.shields.io/npm/dt/@sentry/core.svg)
Links
General
This package contains interface definitions, base classes and utilities for building Sentry JavaScript SDKs, like
@sentry/node
or @sentry/browser
.
Please consider all classes and exported functions and interfaces internal
.
8.23.0
Important Changes
- feat(cloudflare): Add Cloudflare D1 instrumentation (#13142)
This release includes support for Cloudflare D1, Cloudflare's serverless SQL database. To instrument your Cloudflare D1
database, use the instrumentD1WithSentry
method as follows:
// env.DB is the D1 DB binding configured in your `wrangler.toml`
const db = instrumentD1WithSentry(env.DB);
// Now you can use the database as usual
await db.prepare('SELECT * FROM table WHERE id = ?').bind(1).run();
Other Changes
- feat(cloudflare): Allow users to pass handler to sentryPagesPlugin (#13192)
- feat(cloudflare): Instrument scheduled handler (#13114)
- feat(core): Add
getTraceData
function (#13134) - feat(nestjs): Automatic instrumentation of nestjs interceptors before route execution (#13153)
- feat(nestjs): Automatic instrumentation of nestjs pipes (#13137)
- feat(nuxt): Filter out Nuxt build assets (#13148)
- feat(profiling): Attach sdk info to chunks (#13145)
- feat(solidstart): Add sentry
onBeforeResponse
middleware to enable distributed tracing (#13221) - feat(solidstart): Filter out low quality transactions for build assets (#13222)
- fix(browser): Avoid showing browser extension error message in non-
window
global scopes (#13156) - fix(feedback): Call dialog.close() in dialog close callbacks in
\_loadAndRenderDialog
(#13203) - fix(nestjs): Inline Observable type to resolve missing 'rxjs' dependency (#13166)
- fix(nuxt): Detect pageload by adding flag in Vue router (#13171)
- fix(utils): Handle when requests get aborted in fetch instrumentation (#13202)
- ref(browser): Improve browserMetrics collection (#13062)
Work in this release was contributed by @horochx. Thank you for your contribution!