Apache SkyWalking Node.js Agent

The Apache SkyWalking Node.js Agent reports distributed traces and Node.js runtime metrics to an Apache SkyWalking OAP server. It instruments supported Node.js libraries without changes to their source code.

Build npm version GitHub stars

Requirements

Install

npm install skywalking-backend-js

Quick start

Start the agent before loading the modules that it must instrument:

import agent from 'skywalking-backend-js';

agent.start({
  serviceName: 'checkout-service',
  collectorAddress: '127.0.0.1:11800',
});

The same values can be set with environment variables:

export SW_AGENT_NAME=checkout-service
export SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800

See Quick start for the full setup and a way to load the agent with Node.js --require.

Documentation

The documentation index includes:

  • setup and all configuration values;
  • tracing and Node.js runtime metrics;
  • supported library plugins and AWS SDK v2 behavior;
  • serverless and Webpack support;
  • build, test, plugin development, and release guides.

Main features

  • Automatic trace collection for Node.js HTTP, database, messaging, and framework libraries.
  • SkyWalking trace context transfer between supported services.
  • Twelve process-level Node.js runtime meters.
  • Optional wrappers for AWS Lambda and Azure Functions.

Contributing

Read Build and test before sending a change. Plugin authors should also read Plugin development.

Contact

  • Report Node.js Agent problems in the Apache SkyWalking issue tracker with Nodejs in the issue title.
  • Join the dev@skywalking.apache.org mailing list by sending a message to dev-subscribe@skywalking.apache.org.
  • Join the skywalking channel on Apache Slack.

License

Apache License 2.0