Track down Node.js errors
Catch server-side errors before they crash your Node.js applications. Get detailed error telemetry with full context about what went wrong.
“TrackJS support is fantastic whenever we've had any questions. The ability to track product version is really fantastic and makes it easy to tie issues to specific code.”

Monitor Node.js errors in 3 easy steps:
Monitor production Node.js errors with zero performance impact and get the full story behind every crash.
1. Install the agent
Add the Node.js agent from npm. You don't need to change your code or call our API, errors are captured automatically. The agent is 100% backwards compatible and dependency free.
2. Deploy your code
The TrackJS agent automatically monitors errors from your running production environment. Unhandled errors, rejected promises, and console errors are all captured by the agent like magic.
3. Create Ignore Rules and Alerts
Tell TrackJS about the errors that are most important, and we'll ignore the rest. All TrackJS plans come with unlimited Ignore Rules and real time alerting.

Telemetry Timeline
See the story behind Node.js errors
Node.js errors are complex and often asynchronous. TrackJS captures the complete story with detailed telemetry that shows exactly what happened before each error.

Environment Context
Understand your production environment
Get comprehensive environment context with every error. Know exactly which server, process, and conditions led to the failure.

Discoverable attribution
Know which paths, users, or properties cause trouble
Identify problematic API endpoints and code paths that generate the most errors. Focus your debugging efforts where they matter most.
Integration
Integrates with Express.js, Next.js, and more!
TrackJS works seamlessly with all popular Node.js frameworks and libraries. Set up error monitoring in minutes, not hours.
server.js
const express = require('express')
const TrackJS = require('trackjs-node').TrackJS
TrackJS.install({ token: "your-account-token" });
const app = express()
express.use(TrackJS.Handlers.expressRequestHandler())
express.listen(3000);

pages/app.tsx
import App from "next/app";
import { TrackJS } from "trackjs-nextjs";
TrackJS.install({ token: "your-account-token" });
export default App;
// NextJS requires a few changes. Check out the docs at
// https://docs.trackjs.com/browser-agent/integrations/nextjs15/

server.js
import Fastify from 'fastify'
import { TrackJS } from "trackjs";
TrackJS.install({ token: "your-account-token" });
try {
await fastify.listen({ port: 3000 })
} catch (err) {
fastify.log.error(err)
process.exit(1)
}

server.js
const Koa = require('koa');
const TrackJS = require('trackjs-node').TrackJS
TrackJS.install({ token: "your-account-token" });
const app = new Koa();
app.listen(3000);

Customers in their own words
-
TrackJS pointed me towards a bug in our third-party integration code that prevented sending important information to our back-end. Without TrackJS, it's likely we wouldn't have discovered this for a long time, and probably with great difficulty hunting it down.
-
With TrackJS we can find out about problems immediately, without having to talk to the users. The Telemetry Timeline gives us the information we need quickly reproduce and resolve the issue. TrackJS does a phenomenal job of telling us what's going on in the browser so we can quickly squash bugs.
-
I am confident that we understand what's happening in our system with TrackJS. We get a full view of what's happening when errors spike and it enables us to build a more robust platform for our partners.
-
TrackJS support is fantastic whenever we've had any questions. The ability to track product version is really fantastic and makes it easy to tie issues to specific code.
-
TrackJS is definitely the best browser error reporting tool I have ever used! The most valuable feature for us is "Users impacted" overview, which defines the priority of error and helps to filter our the noise that comes from different browser extensions.
-
With TrackJS, the focus is on errors occurring on the browser. Filtering is second to none, and the quick views of trending errors are helpful in digging past the 3rd party script noise. It filters down to the core issues.