docs: move user documentation into docs/ for website hosting (#145)

Split the README into a docs/ tree that the SkyWalking website can import,
following the layout used by the Python and Go agents (docs/README.md as the
overview page, docs/menu.yml as the sidebar, pages under docs/en/).

- README.md becomes a short entry point: requirements, install, quick start,
  and links into docs/.
- CONTRIBUTING.md points at the build, plugin development, and release guides.
- docs/en/ adds setup (quick start, configuration, start and stop), features
  (tracing, runtime metrics), plugins (supported libraries, AWS SDK v2),
  advanced use (serverless, webpack, troubleshooting), and contribution
  (build and test, plugin development, release) pages.
- docs/How-to-release.md stays as a stub, keeping the #vote-check anchor that
  earlier [VOTE] emails link to.
- scripts/release.sh: the [VOTE] email now points at the in-tarball doc paths,
  since the moved guides ship inside the source package.

Configuration values, meter names, plugin behavior, and the build and test
commands were verified against src/ and .github/workflows/test.yaml. Two
long-standing README errors are corrected: SW_AGENT_INSTANCE defaults to the
host name (not a random value) and SW_AGENT_LOGGING_LEVEL defaults to error
(not info).

The website side needs a follow-up PR in apache/skywalking-website adding
repoUrl and a Next entry for the Node.js Agent in data/docs.yml.
19 files changed
tree: 6accc04f31cbf588cb41bc713cd18da9e2ccd058
  1. .claude/
  2. .github/
  3. .husky/
  4. dist/
  5. docs/
  6. scripts/
  7. src/
  8. tests/
  9. .asf.yaml
  10. .dockerignore
  11. .editorconfig
  12. .eslintrc.js
  13. .file-headerrc
  14. .gitignore
  15. .gitmodules
  16. .licenserc.yaml
  17. .prettierrc
  18. CHANGELOG.md
  19. CONTRIBUTING.md
  20. jest.config.js
  21. jest.setup.js
  22. LICENSE
  23. NOTICE
  24. package-lock.json
  25. package.json
  26. README.md
  27. tsconfig.json
README.md

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