
Express Error and Performance Monitoring
Actionable insights to resolve Express performance bottlenecks and errors. Improve your Express monitoring workflow with a full view of releases so you can mark errors as resolved and prioritize live issues.
Getting Started is Simple
Add @sentry/node as a dependency:
npm install --save @sentry/node
Sentry should be initialized as early in your app as possible:
import express from "express"; import * as Sentry from "@sentry/node"; // or using CommonJS // const express = require('express'); // const Sentry = require('@sentry/node'); const app = express(); Sentry.init({ dsn: "https://<key>@sentry.io/<project>" }); // The request handler must be the first middleware on the app app.use(Sentry.Handlers.requestHandler()); // All controllers should live here app.get("/", function rootHandler(req, res) { res.end("Hello world!"); }); // The error handler must be before any other error middleware and after all controllers app.use(Sentry.Handlers.errorHandler()); // Optional fallthrough error handler app.use(function onError(err, req, res, next) { // The error id is attached to `res.sentry` to be returned // and optionally displayed to the user for support. res.statusCode = 500; res.end(res.sentry + " "); }); app.listen(3000);
Check our documentation for the latest instructions.
See all platforms
Powered by OpenTelemetry
Sentry works with OpenTelemetry to provide a simple configuration process, and rich distributed tracing context across all the libraries and frameworks used in your application. Regardless of your chosen tech stack.

Express Performance Monitoring
Quickly identify Express performance issues and view full end-to-end distributed trace to see the exact, poor-performing API call and surface any related errors.

Express Error Monitoring with Complete Stack Traces
See the Express source code at each frame instead of settings for just line and column numbers. Get proper asynchronous context tracking — like thread-local store — in a way that fits Node’s concurrency model.

Fill In The Blanks About Express Errors
See what the app was doing when the Express error occurred: HTTP requests, database queries, console loft statements, etc.
Express Application Profiling
Profiling lets you see what parts of your code are consuming the most resources, like CPU or memory, in your application— so you can optimize them before end user experience is impacted. Test your application performance in any environment, including in production, without writing manual tests or extensive troubleshooting.
Try Profiling“Sentry’s high-quality tooling helps Disney+ maintain high-quality service to its tens of millions of global subscribers.”
Debugging Any Express Exception
Aggregate errors by factors like request details, user ID, and event level to see what’s new, a priority, or a trend.
Assign custom key-value tags to reproduce the error environment specific to your application, business, and users.
Find answers to key questions: Has an error with the same stack occurred before? In which app release did the Express bug occur?
It’s why companies that don’t have a complete view of their infrastructure are being punished:
The average cost of network downtime is around $5,600 per minute — or $300,000 per hour.
1 out of 5 online shoppers will abandon their cart because the transaction process was too slow.
On average, a two-second slowdown in page load decreases revenues by 4.3 percent.