![Introducing Enhanced Alert Actions and Triage Functionality](https://cdn.sanity.io/images/cgdhsj6q/production/fe71306d515f85de6139b46745ea7180362324f0-2530x946.png?w=800&fit=max&auto=format)
Product
Introducing Enhanced Alert Actions and Triage Functionality
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
@sentry/node
Advanced tools
Package description
The @sentry/node package is a tool designed for real-time monitoring and fixing crashes in Node.js applications. It provides error tracking and performance monitoring, helping developers to quickly identify, diagnose, and fix problems in their applications. Sentry integrates seamlessly with your existing codebase, offering a range of features to enhance application reliability and user experience.
Error Tracking
Automatically capture exceptions and errors in your Node.js applications. The code initializes Sentry with your project's DSN and demonstrates how an uncaught exception is automatically reported to Sentry.
const Sentry = require('@sentry/node');
Sentry.init({ dsn: 'YOUR_DSN_HERE' });
app.get('/', function mainHandler(req, res) {
throw new Error('Broke!');
});
Performance Monitoring
Track the performance of your application, including request times and slow operations. This code sample starts a transaction, simulates an operation with a timeout, and then finishes the transaction, which is then reported to Sentry for performance analysis.
const Sentry = require('@sentry/node');
const transaction = Sentry.startTransaction({ op: 'test', name: 'My First Test Transaction' });
setTimeout(() => {
transaction.finish();
}, 99);
Custom Event Capturing
Send custom messages or events to Sentry. This is useful for capturing non-exception events that are significant for your application's health monitoring and diagnostics.
const Sentry = require('@sentry/node');
Sentry.captureMessage('Something went wrong', 'error');
Bugsnag provides error monitoring for web, mobile, and server applications. Similar to @sentry/node, it offers real-time error reporting and allows for detailed error diagnostics and performance monitoring. Bugsnag differentiates itself with features tailored to mobile app monitoring.
Rollbar offers real-time error tracking and debugging tools for developers. Like @sentry/node, it supports multiple programming languages and frameworks, including Node.js. Rollbar emphasizes its ability to help teams with workflow integrations and automated error grouping for efficient management.
Raygun provides crash reporting, real-user monitoring, and deployment tracking. It's similar to @sentry/node in its core functionalities of error tracking and performance monitoring but also offers unique features like user journey tracking and version comparisons to understand the impact of deployments.
Changelog
8.0.0-alpha.5
This is the fifth alpha release of Sentry JavaScript SDK v8, which includes a variety of breaking changes.
Read the in-depth migration guide to find out how to address any breaking changes in your code.
client.(server|client).config.ts
functionality in favor of instrumentation.ts
(#11059)
13.2.0
(#11097)With version 8 of the SDK we will no longer support the use of sentry.server.config.ts
and sentry.edge.config.ts
files. Instead, please initialize the Sentry Next.js SDK for the serverside in a
Next.js instrumentation hook.
sentry.client.config.ts|js
is still supported and encouraged for initializing the clientside SDK. Please see the
Migration Guide for more details.
In addition, the Next.js SDK now requires a minimum Next.js version of 13.2.0
.
The @sentry/angular-ivy
package has been removed. The @sentry/angular
package now supports Ivy by default and
requires at least Angular 14. See the Migration Guide for more
details.
rethrowAfterCapture
option (#11126)tunnel
option for ANR (#11163)@sentry/node
package (#11075)view_hierarchy
attachment type (#11197)initOpenTelemetry
(#11158)cron
(#11225)sampled
type on Transaction
(#11115)Readme
npm install @sentry/node
# Or yarn
yarn add @sentry/node
// CJS Syntax
const Sentry = require('@sentry/node');
// ESM Syntax
import * as Sentry from '@sentry/node';
Sentry.init({
dsn: '__DSN__',
// ...
});
Note that it is necessary to initialize Sentry before you import any package that may be instrumented by us.
More information on how to set up Sentry for Node in v8.
Due to the way OpenTelemetry handles instrumentation, this only works out of the box for CommonJS (require
)
applications.
There is experimental support for running OpenTelemetry with ESM ("type": "module"
):
node --experimental-loader=@opentelemetry/instrumentation/hook.mjs ./app.js
You'll need to install @opentelemetry/instrumentation
in your app to ensure this works.
See OpenTelemetry Instrumentation Docs for details on this - but note that this is a) experimental, and b) does not work with all integrations.
FAQs
Sentry Node SDK using OpenTelemetry for performance instrumentation
The npm package @sentry/node receives a total of 4,974,777 weekly downloads. As such, @sentry/node popularity was classified as popular.
We found that @sentry/node demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
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.
Product
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
Security News
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
Security News
OpenSSF is warning open source maintainers to stay vigilant against reputation farming on GitHub, where users artificially inflate their status by manipulating interactions on closed issues and PRs.