bullmq-otel
Version:
OpenTelemetry add-on for BullMQ
31 lines (30 loc) • 1.39 kB
TypeScript
import { Tracer as OtelTracer, Context as OtelContext, Span as OtelSpan } from '@opentelemetry/api';
import { ContextManager, Telemetry, Tracer, Span, AttributeValue, Attributes, Time, Exception } from 'bullmq';
declare class BullMQOTelContextManager implements ContextManager<OtelContext> {
private contextAPI;
getMetadata(ctx: OtelContext): string;
fromMetadata(activeCtx: OtelContext, metadata: string): OtelContext;
with<A extends (...args: any[]) => any>(ctx: OtelContext, fn: A): ReturnType<A>;
active(): OtelContext;
}
declare class BullMQOtelTracer implements Tracer {
private tracer;
constructor(tracer: OtelTracer);
startSpan(name: string, options?: any, context?: OtelContext): Span<OtelContext>;
}
export declare class BullMQOTelSpan implements Span<OtelContext> {
span: OtelSpan;
constructor(span: OtelSpan);
setSpanOnContext(ctx: OtelContext): OtelContext;
setAttribute(key: string, value: AttributeValue): void;
setAttributes(attributes: Attributes): void;
addEvent(name: string, attributes?: Attributes, time?: Time): void;
recordException(exception: Exception, time?: Time): void;
end(): void;
}
export declare class BullMQOtel implements Telemetry<OtelContext> {
tracer: BullMQOtelTracer;
contextManager: BullMQOTelContextManager;
constructor(tracerName: string, version?: string);
}
export {};