JSPM

skywalking-js

0.1.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • 0
  • Score
    100M100P100Q9490F
  • License Apache-2.0

The NodeJS agent for Apache SkyWalking

Package Exports

  • skywalking-js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (skywalking-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

SkyWalking NodeJS Agent

Sky Walking logo

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 8.0+.

import Agent from 'skywalking-nodejs';

Agent.start({
  serviceName: '',
  serviceInstance: '',
  collectorAddress: '',
  authorization: '{productId}##{"node": "nodejs-sever", "agentType": "node.js"}',
  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_AGENT_MAX_BUFFER_SIZE The maximum buffer size before sending the segment data to backend '1000'

支持Grpc SSL

将ca.crt放到项目根目录下

Build

npm install
npm run prepare
npm run build

copy to lib/proto/language-agent/Tracing_pb.d.ts
export enum SpanType {
    ENTRY = 0,
    EXIT = 1,
    LOCAL = 2,
}

export enum RefType {
    CROSSPROCESS = 0,
    CROSSTHREAD = 1,
}

export enum SpanLayer {
    UNKNOWN = 0,
    DATABASE = 1,
    RPCFRAMEWORK = 2,
    HTTP = 3,
    MQ = 4,
    CACHE = 5,
}

npm pack

npm install skywalking-netease-0.1.0.tgz --save



## Supported Libraries

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

Library | Plugin Name
| :--- | :--- |
| built-in `http` module | `sw_http` |

## License
Apache 2.0