@opentelemetry/tracing
Version: 
OpenTelemetry Tracing
50 lines • 2.1 kB
TypeScript
import * as api from '@opentelemetry/api';
import { InstrumentationLibrary } from '@opentelemetry/core';
import { Resource } from '@opentelemetry/resources';
import { ReadableSpan } from './export/ReadableSpan';
import { TimedEvent } from './TimedEvent';
import { Tracer } from './Tracer';
import { SpanAttributeValue, Context } from '@opentelemetry/api';
/**
 * This class represents a span.
 */
export declare class Span implements api.Span, ReadableSpan {
    private readonly _spanContext;
    readonly kind: api.SpanKind;
    readonly parentSpanId?: string;
    readonly attributes: api.SpanAttributes;
    readonly links: api.Link[];
    readonly events: TimedEvent[];
    readonly startTime: api.HrTime;
    readonly resource: Resource;
    readonly instrumentationLibrary: InstrumentationLibrary;
    name: string;
    status: api.SpanStatus;
    endTime: api.HrTime;
    private _ended;
    private _duration;
    private readonly _spanProcessor;
    private readonly _spanLimits;
    /** Constructs a new Span instance. */
    constructor(parentTracer: Tracer, context: Context, spanName: string, spanContext: api.SpanContext, kind: api.SpanKind, parentSpanId?: string, links?: api.Link[], startTime?: api.TimeInput);
    spanContext(): api.SpanContext;
    setAttribute(key: string, value?: SpanAttributeValue): this;
    setAttributes(attributes: api.SpanAttributes): this;
    /**
     *
     * @param name Span Name
     * @param [attributesOrStartTime] Span attributes or start time
     *     if type is {@type TimeInput} and 3rd param is undefined
     * @param [startTime] Specified start time for the event
     */
    addEvent(name: string, attributesOrStartTime?: api.SpanAttributes | api.TimeInput, startTime?: api.TimeInput): this;
    setStatus(status: api.SpanStatus): this;
    updateName(name: string): this;
    end(endTime?: api.TimeInput): void;
    isRecording(): boolean;
    recordException(exception: api.Exception, time?: api.TimeInput): void;
    get duration(): api.HrTime;
    get ended(): boolean;
    private _isSpanEnded;
}
//# sourceMappingURL=Span.d.ts.map