nodeBuilt for Node.js

Analytics & Monitoring
for Node.js

Drop the SDK into Express, Fastify, Koa, or raw Node. One npm install and HTTP requests, database queries, and errors are traced automatically — with async context propagated through AsyncLocalStorage.

  • Automatic HTTP, fetch, and outgoing-request tracing
  • Auto-instruments pg, postgres-js, mysql2, mongodb, redis, prisma, drizzle, axios
  • AsyncLocalStorage propagation — context survives across async boundaries
  • Works with Express, Fastify, Koa, NestJS, raw http.createServer
  • Source-map upload via the CLI for clean stack traces
  • Under 5KB frontend script for client-side analytics
javascript
1// In your Node.js app entry point
2import JA from "@justanalyticsapp/node";
3
4JA.init({
5 apiKey: process.env.JUSTANALYTICS_API_KEY,
6 serviceName: "my-node-api",
7 environment: "production",
8});
9
10// HTTP, fetch, pg, mysql2, redis, mongodb,
11// prisma, drizzle — all auto-instrumented.
Active Users
0+12%
Pageviews
0+8%
Errors
0resolved
Uptime
0%all green

Built for Node.js services

From a single-file Express API to a fleet of microservices, JustAnalytics traces every request end-to-end.

Database tracing

pg, postgres-js, mysql2, mongodb, ioredis, @upstash/redis, prisma, drizzle — patched at require-time so queries appear in traces with no setup.

HTTP & fetch instrumentation

Every incoming request becomes a span. Outgoing http/https/fetch calls are tagged so you see the full distributed trace across services.

Unhandled error capture

uncaughtException + unhandledRejection hooked. Sourcemap-ready stack traces, linked to the request that triggered them.

Async-context propagation

AsyncLocalStorage carries trace context through every callback, promise, and worker_threads boundary. No manual passing.

Full analytics suite

Add the frontend script for cookie-free analytics, replay, and Web Vitals. One dashboard for client + server.

Alert rules

Latency, error rate, and throughput alerts. Routes to email, webhook, or PagerDuty when a route degrades.

Full server-side setup

Install the SDK, initialise once at process start, and every Express route, fetch call, and database query is captured.

# Install
npm install @justanalyticsapp/node

# server.js (or app entrypoint — must import BEFORE express/etc)
import JA from '@justanalyticsapp/node';

JA.init({
  apiKey: process.env.JUSTANALYTICS_API_KEY,
  serviceName: 'my-node-api',
  environment: process.env.NODE_ENV,
});

import express from 'express';
const app = express();

app.get('/users/:id', async (req, res) => {
  // pg, prisma, drizzle queries traced automatically
  const user = await db.user.findUnique({ where: { id: req.params.id } });
  res.json(user);
});

app.listen(3000);

Ready to simplify your stack?

Replace five tools with one platform. Start with the free tier or try Pro free for 7 days.

Start 7-Day Free Trial