npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@saidsef/tracing-node

v6.0.0

Published

tracing NodeJS - Wrapper for OpenTelemetry instrumentation packages

Readme

OpenTelemetry Wrapper for Tracing Node Applications

CI Release Documentation GitHub issues npm npm GitHub release(latest by date) Commits

Traces, metrics and logs from one function call. Add two lines to a service, and its requests, its calls to Redis, Elasticsearch, AWS and other services, its runtime counters and its Pino log records all arrive at your collector, already correlated by trace id and stitched into a service graph.

@saidsef/tracing-node wraps the OpenTelemetry Node SDK. One call to setupTracing builds the tracer, meter and logger providers, registers them globally, and turns on a fixed set of instrumentations, so an application gets all three signals without assembling exporters, span processors, resource detectors and instrumentation packages itself. A second call logs a warning and returns the tracer that already exists, which makes initialisation idempotent.

Full documentation: tracing-node.readthedocs.io.

Prerequisites

  • NodeJS >= 24.0.0
  • Observability
  • ...
  • Profit?

Installation

npm install @saidsef/tracing-node --save

Usage

import { setupTracing } from '@saidsef/tracing-node';

setupTracing({hostname: 'hostname', serviceName: 'service_name', url: 'endpoint'});

serviceName and url are required, and both fall back to the SERVICE_NAME and ENDPOINT environment variables. setupTracing has to run before the application imports the libraries being traced.

Collector and backend

The exporter speaks OTLP over gRPC, so any OpenTelemetry-compatible collector accepts all three signals. Point url at yours.

grafana-loki-on-k8s is the companion stack, and the one the end to end harness in test/e2e/ targets. It deploys Grafana, Prometheus, Mimir, Loki, Tempo, Pyroscope, Alloy and Beyla to Kubernetes as small composable manifests.

git clone https://github.com/saidsef/grafana-loki-on-k8s
kubectl apply -k grafana-loki-on-k8s/deployment

Traces sent to its Alloy OTLP receiver on port 4317 land in Tempo, log records in Loki and metrics in Mimir. Tempo's metrics generator turns the spans into RED and service graph metrics, which is what the peer.service attribute this library sets exists to feed.

Documentation

The pages below are the manual. Their sources are in docs/, and npm run build-docs renders the site into site/.

| Page | Contents | |------|----------| | Overview | What the library does, the feature set and the requirements | | Architecture | The pipeline setupTracing builds, and how the service graph is fed | | Configuration | Every option, the environment variables, initialisation order and shutdown | | Instrumentation | Each instrumentation, and the attributes it emits | | Deployment | Running instrumented services in containers and Kubernetes | | Testing | The unit tests and the end to end harness | | Troubleshooting | Symptoms, causes and fixes |

Upgrading

Breaking changes and the attribute renames they bring are recorded in the release notes for the version concerned.

Contributing

Our latest and greatest source of tracing-node can be found on GitHub. Fork us!

We would :heart: you to contribute by making a pull request. Please read the official Contribution Guide for more information on how you can contribute.