Neglected Parking Meter

    @opentelemetry/auto-instrumentations-node
    TypeScript icon, indicating that this package has built-in type declarations

    0.30.0 • Public • Published

    OpenTelemetry Meta Packages for Node

    NPM Published Version Apache License

    This module provides a simple way to initialize multiple Node instrumentations.

    Compatible with OpenTelemetry JS API and SDK 1.0+.

    Installation

    npm install --save @opentelemetry/auto-instrumentations-node

    Usage

    OpenTelemetry Meta Packages for Node automatically loads instrumentations for Node builtin modules and common packages.

    Custom configuration for each of the instrumentations can be passed to the function, by providing an object with the name of the instrumentation as a key, and its configuration as the value.

    const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
    const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node');
    const { CollectorTraceExporter } = require('@opentelemetry/exporter-collector');
    const { Resource } = require('@opentelemetry/resources');
    const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions');
    const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
    const { registerInstrumentations } = require('@opentelemetry/instrumentation');
    
    const exporter = new CollectorTraceExporter();
    const provider = new NodeTracerProvider({
      resource: new Resource({
        [SemanticResourceAttributes.SERVICE_NAME]: 'basic-service',
      }),
    });
    provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
    provider.register();
    
    registerInstrumentations({
      instrumentations: [
        getNodeAutoInstrumentations({
          // load custom configuration for http instrumentation
          '@opentelemetry/instrumentation-http': {
            applyCustomAttributesOnSpan: (span) => {
              span.setAttribute('foo2', 'bar2');
            },
          },
        }),
      ],
    });

    Supported instrumentations

    Useful links

    License

    APACHE 2.0 - See LICENSE for more information.

    Keywords

    none

    Install

    npm i @opentelemetry/auto-instrumentations-node

    DownloadsWeekly Downloads

    60,913

    Version

    0.30.0

    License

    Apache-2.0

    Unpacked Size

    242 kB

    Total Files

    22

    Last publish

    Collaborators

    • bogdandrutu
    • dyladan