@opentelemetry/propagator-grpc-census-binary
    TypeScript icon, indicating that this package has built-in type declarations

    0.24.0 • Public • Published

    OpenTelemetry Propagator gRPC Census

    NPM Published Version dependencies devDependencies Apache License

    OpenTelemetry gRPC Census propagator provides gRPC header propagation for systems that use the OpenCensus 'grpc-trace-bin' binary header format. This allows for context propagation when either:

    • incoming gRPC calls come from services already instrumented using OpenCensus
    • outgoing gRPC calls go to services already instrumented using OpenCensus

    This propagator works in conjunction with the OpenTelemetry gRPC plugin.

    Example of usage:

    const { NodeTracerProvider } = require('@opentelemetry/node');
    const { GrpcCensusPropagator } = require('@opentelemetry/propagator-grpc-census-binary');
    const { registerInstrumentations } = require('@opentelemetry/instrumentation');
    const { GrpcInstrumentation } = require('opentelemetry/instrumentation-grpc');
    
    const provider = new NodeTracerProvider();
    
    // Register GrpcCensusPropagator so we can propagate content using
    // the 'grpc-trace-bin' header in our incoming/outgoing gRPC calls.
    provider.register({
      propagator: new GrpcCensusPropagator()
    });
    
    registerInstrumentations({
      instrumentations: [
        new GrpcInstrumentation(),
      ],
    });

    Also, see examples/grpc-census-prop for a worked example that shows when this propagator can be useful.

    Implementation Details

    See binary-format.ts for equivalent encoding/decoding of the format in OpenCensus. Note: the author of the OpenCensus binary format, @mayurkale22, also created BinaryTraceContext.ts in opentelemetry-core but that was subsequently removed as part of PR #804. The implementation of GrpcCensusPropagator in this module uses a version of BinaryTraceContext.ts inspired by Mayur's previous work (with minor modifications e.g. there is no longer a BinaryFormat interface to implement).

    Useful links

    License

    Apache 2.0 - See LICENSE for more information.

    Install

    npm i @opentelemetry/propagator-grpc-census-binary

    DownloadsWeekly Downloads

    56

    Version

    0.24.0

    License

    Apache-2.0

    Unpacked Size

    38.3 kB

    Total Files

    15

    Last publish

    Collaborators

    • avatar
    • avatar
    • avatar
    • avatar