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.
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 Variable | Description | Default |
---|---|---|
SW_AGENT_NAME | The name of the service | your-nodejs-service |
SW_AGENT_INSTANCE | The name of the service instance | Randomly generated |
SW_AGENT_COLLECTOR_BACKEND_SERVICES | The backend OAP server address | 127.0.0.1:11800 |
SW_AGENT_AUTHENTICATION | The 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_LEVEL | The logging level, could be one of CRITICAL , FATAL , ERROR , WARN (WARNING ), INFO , DEBUG | INFO |
SW_IGNORE_SUFFIX | The 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_PATH | The paths of endpoints that will be ignored (not traced), comma separated | `` |
SW_AGENT_MAX_BUFFER_SIZE | The maximum buffer size before sending the segment data to backend | '1000' |
There are some built-in plugins that support automatic instrumentation of NodeJS libraries, the complete lists are as follows:
Library | Plugin Name |
---|---|
built-in http and https module | http |
express | express |
axios | axios |
Apache 2.0