This package has been deprecated

Author message:

Please use trace and metric specific exporters @opentelemetry/exporter-trace-otlp-proto and @opentelemetry/exporter-metrics-otlp-proto

@opentelemetry/exporter-collector-proto
TypeScript icon, indicating that this package has built-in type declarations

0.25.0 • Public • Published

OpenTelemetry Collector Exporter for node with protobuf

NPM Published Version dependencies devDependencies Apache License

This module provides exporter for node to be used with opentelemetry-collector - last tested with version 0.25.0.

Installation

npm install --save @opentelemetry/exporter-collector-proto

Service Name

The OpenTelemetry Collector Exporter does not have a service name configuration. In order to set the service name, use the service.name resource attribute as prescribed in the OpenTelemetry Resource Semantic Conventions.

Traces in Node - PROTO over http

const { BasicTracerProvider, SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
const { CollectorTraceExporter } =  require('@opentelemetry/exporter-collector-proto');

const collectorOptions = {
  url: '<opentelemetry-collector-url>', // url is optional and can be omitted - default is http://localhost:55681/v1/traces
  headers: {
    foo: 'bar'
  }, //an optional object containing custom headers to be sent with each request will only work with http
};

const provider = new BasicTracerProvider();
const exporter = new CollectorTraceExporter(collectorOptions);
provider.addSpanProcessor(new SimpleSpanProcessor(exporter));

provider.register();

Metrics in Node - PROTO over http

const { MeterProvider } = require('@opentelemetry/sdk-metrics-base');
const { CollectorMetricExporter } =  require('@opentelemetry/exporter-collector-proto');
const collectorOptions = {
  url: '<opentelemetry-collector-url>', // url is optional and can be omitted - default is http://localhost:55681/v1/metrics
};
const exporter = new CollectorMetricExporter(collectorOptions);

// Register the exporter
const meter = new MeterProvider({
  exporter,
  interval: 60000,
}).getMeter('example-meter');

// Now, start recording data
const counter = meter.createCounter('metric_name');
counter.add(10, { 'key': 'value' });

Running opentelemetry-collector locally to see the traces

  1. Go to examples/collector-exporter-node
  2. run npm run docker:start
  3. Open page at http://localhost:9411/zipkin/ to observe the traces

Useful links

License

Apache 2.0 - See LICENSE for more information.

Package Sidebar

Install

npm i @opentelemetry/exporter-collector-proto

Weekly Downloads

227

Version

0.25.0

License

Apache-2.0

Unpacked Size

102 kB

Total Files

35

Last publish

Collaborators

  • pichlermarc
  • bogdandrutu
  • dyladan