UNPKG

@bracketed/otel-api

Version:

@opentelementery/api but ported to suit modern uses. (2025)

42 lines (39 loc) 1.34 kB
import { Tracer } from './tracer.js'; import { TracerProvider } from './tracer_provider.js'; import { TracerOptions } from './tracer_options.js'; import '../context/types.js'; import './SpanOptions.js'; import '../common/Time.js'; import './attributes.js'; import '../common/Attributes.js'; import './link.js'; import './span_context.js'; import './trace_state.js'; import './span_kind.js'; import './span.js'; import '../common/Exception.js'; import './status.js'; /** * Tracer provider which provides {@link ProxyTracer}s. * * Before a delegate is set, tracers provided are NoOp. * When a delegate is set, traces are provided from the delegate. * When a delegate is set after tracers have already been provided, * all tracers already provided will use the provided delegate implementation. * * @since 1.0.0 */ declare class ProxyTracerProvider implements TracerProvider { private _delegate?; /** * Get a {@link ProxyTracer} */ getTracer(name: string, version?: string, options?: TracerOptions): Tracer; getDelegate(): TracerProvider; /** * Set the delegate tracer provider */ setDelegate(delegate: TracerProvider): void; getDelegateTracer(name: string, version?: string, options?: TracerOptions): Tracer | undefined; } export { ProxyTracerProvider };