다음을 통해 공유


TracingClient interface

현재 구성된 Instrumenter와 통합할 수 있는 클라이언트를 나타냅니다.

createTracingClient를 사용하여 인스턴스를 만듭니다.

메서드

createRequestHeaders(TracingContext)

추적 정보를 백 엔드에 전파하는 요청 헤더 집합을 만듭니다.

parseTraceparentHeader(string)

추적 매개 변수 헤더 값을 로 <xref:TracingSpanContext>구문 분석합니다.

startSpan<Options>(string, Options, TracingSpanOptions)

지정된 범위를 시작하지만 활성 범위로 설정하지는 않습니다.

end를 사용하여 범위를 종료해야 합니다.

대부분의 경우 대신 WithSpan을 사용하려고 합니다.

withContext<CallbackArgs, Callback>(TracingContext, Callback, CallbackArgs)

활성 컨텍스트로 콜백을 래핑하고 콜백을 호출합니다. 구현에 따라 전역적으로 사용 가능한 활성 컨텍스트를 설정할 수 있습니다.

SDK의 경계를 벗어나고(사용자 코드에 대한 요청 또는 콜백) withSpan API를 사용할 수 없는 경우에 유용합니다.

withSpan<Options, Callback>(string, Options, Callback, TracingSpanOptions)

추적 범위에서 콜백을 래핑하고, 콜백을 호출하고, 범위를 닫습니다.

이는 추적을 사용하기 위한 기본 인터페이스이며 오류 기록을 처리하고 범위에서 상태를 설정합니다.

범위에서 콜백의 결과를 반영하기 위해 동기 함수와 비동기 함수가 모두 대기됩니다.

예제:

const myOperationResult = await tracingClient.withSpan("myClassName.myOperationName", options, (updatedOptions) => myOperation(updatedOptions));

메서드 세부 정보

createRequestHeaders(TracingContext)

추적 정보를 백 엔드에 전파하는 요청 헤더 집합을 만듭니다.

function createRequestHeaders(tracingContext?: TracingContext): Record<string, string>

매개 변수

tracingContext
TracingContext

전파할 범위를 포함하는 컨텍스트입니다.

반환

Record<string, string>

요청에 추가할 헤더 집합입니다.

parseTraceparentHeader(string)

추적 매개 변수 헤더 값을 로 <xref:TracingSpanContext>구문 분석합니다.

function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext

매개 변수

traceparentHeader

string

구문 분석할 추적 매개 변수 헤더입니다.

반환

undefined | TracingContext

범위에 대한 구현별 식별자입니다.

startSpan<Options>(string, Options, TracingSpanOptions)

지정된 범위를 시작하지만 활성 범위로 설정하지는 않습니다.

end를 사용하여 범위를 종료해야 합니다.

대부분의 경우 대신 WithSpan을 사용하려고 합니다.

function startSpan<Options>(name: string, operationOptions?: Options, spanOptions?: TracingSpanOptions): { span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }

매개 변수

name

string

범위의 이름입니다. 규칙에 따라 이 여야 ${className}.${methodName}합니다.

operationOptions

Options

원래 작업 옵션입니다.

spanOptions
TracingSpanOptions

범위를 만들 때 사용할 옵션입니다.

반환

{ span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }

TracingSpan 및 업데이트된 작업 옵션입니다.

withContext<CallbackArgs, Callback>(TracingContext, Callback, CallbackArgs)

활성 컨텍스트로 콜백을 래핑하고 콜백을 호출합니다. 구현에 따라 전역적으로 사용 가능한 활성 컨텍스트를 설정할 수 있습니다.

SDK의 경계를 벗어나고(사용자 코드에 대한 요청 또는 콜백) withSpan API를 사용할 수 없는 경우에 유용합니다.

function withContext<CallbackArgs, Callback>(context: TracingContext, callback: Callback, callbackArgs: CallbackArgs): ReturnType<Callback>

매개 변수

context
TracingContext

콜백 범위에서 활성 컨텍스트로 사용할 TracingContext 입니다.

callback

Callback

지정된 컨텍스트 집합을 전역적으로 활성 컨텍스트로 사용하여 호출할 콜백입니다.

callbackArgs

CallbackArgs

콜백 인수입니다.

반환

ReturnType<Callback>

withSpan<Options, Callback>(string, Options, Callback, TracingSpanOptions)

추적 범위에서 콜백을 래핑하고, 콜백을 호출하고, 범위를 닫습니다.

이는 추적을 사용하기 위한 기본 인터페이스이며 오류 기록을 처리하고 범위에서 상태를 설정합니다.

범위에서 콜백의 결과를 반영하기 위해 동기 함수와 비동기 함수가 모두 대기됩니다.

예제:

const myOperationResult = await tracingClient.withSpan("myClassName.myOperationName", options, (updatedOptions) => myOperation(updatedOptions));
function withSpan<Options, Callback>(name: string, operationOptions: Options, callback: Callback, spanOptions?: TracingSpanOptions): Promise<Resolved<ReturnType<Callback>>>

매개 변수

name

string

범위의 이름입니다. 규칙에 따라 이 여야 ${className}.${methodName}합니다.

operationOptions

Options

메서드에 전달된 원래 옵션입니다. 콜백은 새로 만든 TracingContext를 사용하여 이러한 옵션을 수신합니다.

callback

Callback

업데이트된 옵션과 새로 만든 TracingSpan을 사용하여 호출할 콜백입니다.

spanOptions
TracingSpanOptions

반환

Promise<Resolved<ReturnType<Callback>>>