Поделиться через


TracingClient interface

Представляет клиент, который может интегрироваться с настроенным в настоящее время инструментатором.

Создайте экземпляр с помощью createTracingClient.

Методы

createRequestHeaders(TracingContext)

Создает набор заголовков запросов для распространения данных трассировки на серверную часть.

parseTraceparentHeader(string)

Анализирует значение заголовка traceparent в .<xref:TracingSpanContext>

startSpan<Options>(string, Options, TracingSpanOptions)

Запускает заданный диапазон, но не задает его в качестве активного диапазона.

Вы должны завершить диапазон с помощью end.

В большинстве случаев вместо этого требуется использовать withSpan .

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

Заключает обратный вызов в активный контекст и вызывает обратный вызов. В зависимости от реализации это может задать глобально доступный активный контекст.

Полезно, если вы хотите покинуть границы пакета SDK (выполнить запрос или обратный вызов к пользовательскому коду) и не можете использовать API withSpan .

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)

Анализирует значение заголовка traceparent в .<xref:TracingSpanContext>

function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext

Параметры

traceparentHeader

string

Заголовок traceparent для анализа.

Возвращаемое значение

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 (выполнить запрос или обратный вызов к пользовательскому коду) и не можете использовать API withSpan .

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>>>