Options
All
  • Public
  • Public/Protected
  • All
Menu

Tracer provides an interface for creating Spans.

Hierarchy

  • Tracer

Implemented by

Index

Methods

startActiveSpan

  • startActiveSpan<F>(name: string, fn: F): ReturnType<F>
  • startActiveSpan<F>(name: string, options: SpanOptions, fn: F): ReturnType<F>
  • startActiveSpan<F>(name: string, options: SpanOptions, context: Context, fn: F): ReturnType<F>
  • Starts a new Span and calls the given function passing it the created span as first argument. Additionally the new span gets set in context and this context is activated for the duration of the function call.

    example
    const something = tracer.startActiveSpan('op', span => {
      try {
        do some work
        span.setStatus({code: SpanStatusCode.OK});
        return something;
      } catch (err) {
        span.setStatus({
          code: SpanStatusCode.ERROR,
          message: err.message,
        });
        throw err;
      } finally {
        span.end();
      }
    });
    
    example
    const span = tracer.startActiveSpan('op', span => {
      try {
        do some work
        return span;
      } catch (err) {
        span.setStatus({
          code: SpanStatusCode.ERROR,
          message: err.message,
        });
        throw err;
      }
    });
    do some more work
    span.end();
    

    Type parameters

    • F: (span: Span) => unknown

    Parameters

    • name: string

      The name of the span

    • fn: F

      function called in the context of the span and receives the newly created span as an argument

    Returns ReturnType<F>

    return value of fn

  • Type parameters

    • F: (span: Span) => unknown

    Parameters

    Returns ReturnType<F>

  • Type parameters

    • F: (span: Span) => unknown

    Parameters

    Returns ReturnType<F>

startSpan

  • Starts a new Span. Start the span without setting it on context.

    This method do NOT modify the current Context.

    example
    const span = tracer.startSpan('op');
    span.setAttribute('key', 'value');
    span.end();
    

    Parameters

    • name: string

      The name of the span

    • Optional options: SpanOptions
    • Optional context: Context

    Returns Span

    Span The newly created span