0.12.2 • Published 3 years ago

kelvin-exporter-zipkin v0.12.2

Weekly downloads
1
License
Apache-2.0
Repository
github
Last release
3 years ago

OpenTelemetry Zipkin Trace Exporter

Gitter chat NPM Published Version dependencies devDependencies Apache License

OpenTelemetry Zipkin Trace Exporter allows the user to send collected traces to Zipkin.

Zipkin is a distributed tracing system. It helps gather timing data needed to troubleshoot latency problems in microservice architectures. It manages both the collection and lookup of this data.

Installation

npm install --save @opentelemetry/exporter-zipkin

Usage in Node and Browser

Install the exporter on your application and pass the options. serviceName is an optional string. If omitted, the exporter will first try to get the service name from the Resource. If no service name can be detected on the Resource, a fallback name of "OpenTelemetry Service" will be used.

const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin');

// Add your zipkin url (`http://localhost:9411/api/v2/spans` is used as
// default) and application name to the Zipkin options.
// You can also define your custom headers which will be added automatically.
const options = {
  headers: {
    'my-header': 'header-value',
  },
  url: 'your-zipkin-url',
  serviceName: 'your-application-name'
}
const exporter = new ZipkinExporter(options);

Now, register the exporter and start tracing.

tracer.addSpanProcessor(new BatchSpanProcessor(exporter));

You can use built-in SimpleSpanProcessor or BatchSpanProcessor or write your own.

  • SimpleSpanProcessor: The implementation of SpanProcessor that passes ended span directly to the configured SpanExporter.
  • BatchSpanProcessor: The implementation of the SpanProcessor that batches ended spans and pushes them to the configured SpanExporter. It is recommended to use this SpanProcessor for better performance and optimization.

Viewing your traces

Please visit the Zipkin UI endpoint http://localhost:9411

Useful links

License

Apache 2.0 - See LICENSE for more information.