SkyWalking NodeJS Agent

SkyWalking-NodeJS: The NodeJS Agent for Apache SkyWalking, which provides the native tracing abilities for NodeJS project.

SkyWalking: an APM(application performance monitor) system, especially designed for microservices, cloud native and container-based (Docker, Kubernetes, Mesos) architectures.

GitHub stars Twitter Follow

Build

Set up NodeJS Agent

SkyWalking NodeJS SDK requires SkyWalking backend (OAP) 8.0+ and NodeJS >= 10.

import agent from 'skywalking';

agent.start({
  serviceName: '',
  serviceInstance: '',
  collectorAddress: '',
  authorization: '',
  maxBufferSize: 1000,
});

The supported environment variables are as follows:

Environment VariableDescriptionDefault
SW_AGENT_NAMEThe name of the serviceyour-nodejs-service
SW_AGENT_INSTANCEThe name of the service instanceRandomly generated
SW_AGENT_COLLECTOR_BACKEND_SERVICESThe backend OAP server address127.0.0.1:11800
SW_AGENT_AUTHENTICATIONThe authentication token to verify that the agent is trusted by the backend OAP, as for how to configure the backend, refer to the yaml.not set
SW_AGENT_LOGGING_LEVELThe logging level, could be one of CRITICAL, FATAL, ERROR, WARN(WARNING), INFO, DEBUGINFO
SW_IGNORE_SUFFIXThe suffices of endpoints that will be ignored (not traced), comma separated.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg
SW_TRACE_IGNORE_PATHThe paths of endpoints that will be ignored (not traced), comma separated``
SW_AGENT_MAX_BUFFER_SIZEThe maximum buffer size before sending the segment data to backend'1000'

Supported Libraries

There are some built-in plugins that support automatic instrumentation of NodeJS libraries, the complete lists are as follows:

LibraryPlugin Name
built-in http and https modulehttp
expressexpress
axiosaxios

License

Apache 2.0