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
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.10.0
Important Changes
- feat(remix): Migrate to
opentelemetry-instrumentation-remix
. (#12110)
You can now simplify your remix instrumentation by opting-in like this:
const Sentry = require('@sentry/remix');
Sentry.init({
dsn: YOUR_DSN
// opt-in to new auto instrumentation
autoInstrumentRemix: true,
});
With this setup, you do not need to add e.g. wrapExpressCreateRequestHandler
anymore. Additionally, the quality of the
captured data improves. The old way to use @sentry/remix
continues to work, but it is encouraged to use the new setup.
Other Changes
- feat(browser): Export
thirdPartyErrorFilterIntegration
from @sentry/browser
(#12512) - feat(feedback): Allow passing
tags
field to any feedback config param (#12197) - feat(feedback): Improve screenshot quality for retina displays (#12487)
- feat(feedback): Screenshots don't resize after cropping (#12481)
- feat(node) add max lineno and colno limits (#12514)
- feat(profiling) add global profile context while profiler is running (#12394)
- feat(react): Add React version to events (#12390)
- feat(replay): Add url to replay hydration error breadcrumb type (#12521)
- fix(core): Ensure standalone spans respect sampled flag (#12533)
- fix(core): Use maxValueLength in extra error data integration (#12174)
- fix(feedback): Fix scrolling after feedback submission (#12499)
- fix(feedback): Send feedback rejects invalid responses (#12518)
- fix(nextjs): Update @rollup/plugin-commonjs (#12527)
- fix(node): Ensure status is correct for http server span errors (#12477)
- fix(node): Unify
getDynamicSamplingContextFromSpan
(#12522) - fix(profiling): continuous profile chunks should be in seconds (#12532)
- fix(remix): Add nativeFetch support for accessing request headers (#12479)
- fix(remix): Export no-op as
captureRemixServerException
from client SDK (#12497) - ref(node) refactor contextlines to use readline (#12221)
Work in this release was contributed by @AndreyKovanov and @kiliman. Thank you for your contributions!