This module provides TextMapPropagator which wraps another propagator and apply inject and extract selectively according to configuration.
npm install --save opentelemetry-propagator-selective
Example usage with B3 Propagator
import { SelectivePropagator } from 'opentelemetry-propagator-selective';
import { B3Propagator } from '@opentelemetry/propagator-b3';
import { propagation } from '@opentelemetry/api';
const b3ExtractOnly = new SelectivePropagator(new B3Propagator(), { extractEnabled: true, injectEnabled: false});
propagation.setGlobalPropagator(b3ExtractOnly);
You can use any propagator compatible with the TextMapPropagator
interface.
- You can set
extractEnabled
andinjectEnabled
to boolean values to set which operations are valid. - It is possible to set both to true or both to false.
- If not set, default is to not
inject
/extract