Node framework

NestJS observability, live in minutes.

Traces, logs and exceptions for NestJS microservices over standard OpenTelemetry.

Three ways in

Snippet, wizard, or manual.

Lead with the fastest path — the copy-paste snippet with your token baked in. The wizard and manual setup stay available.

  1. STEP 1
    Copy-paste the snippet

    Create an OpenTelemetry project, export TRACEPATH_URL and TRACEPATH_TOKEN, and bootstrap the SDK in main.ts.

  2. STEP 2
    Run the wizard

    npx tracepath-wizard detects NestJS and writes the instrumentation bootstrap.

  3. STEP 3
    Manual path

    Install the OTel packages and configure NodeSDK in your entrypoint.

Real code

A working instrumentation.ts.

Taken from our own examples and docs — this is the actual shape of a NestJS integration.

import { NodeSDK } from "@opentelemetry/sdk-node";
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
import { OTLPMetricExporter } from "@opentelemetry/exporter-metrics-otlp-http";
import { PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics";
import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node";
import { Resource } from "@opentelemetry/resources";

const tracepathUrl = process.env.TRACEPATH_URL || "https://ingest.tracepath.dev";
const tracepathToken = process.env.TRACEPATH_TOKEN;

const sdk = new NodeSDK({
  resource: new Resource({
    "service.name": "my-nestjs-service",
  }),
  traceExporter: new OTLPTraceExporter({
    url: `${tracepathUrl}/api/otel/v1/traces`,
    headers: { Authorization: `Bearer ${tracepathToken}` },
  }),
  metricReader: new PeriodicExportingMetricReader({
    exporter: new OTLPMetricExporter({
      url: `${tracepathUrl}/api/otel/v1/metrics`,
      headers: { Authorization: `Bearer ${tracepathToken}` },
    }),
    exportIntervalMillis: 10_000,
  }),
  instrumentations: [getNodeAutoInstrumentations()],
});

sdk.start();

Source: examples/nestjs-otel/instrumentation.ts in the TracePath repo. TODO-verify: snippet matches the latest SDK release before publishing.

What you get

Built for NestJS.

Request traces with HTTP auto-instrumentation

Custom instrumentation via decorators and interceptors

Logs correlated to traces

Exception capture with full stack context

Browse everything tagged #nestjs

Other frameworks

Instrument NestJS today.

Free plan, no credit card. First event in under five minutes.