TracingClient interface
Representa um cliente que pode se integrar ao Instrumentador configurado no momento.
Crie uma instância usando createTracingClient.
Métodos
create |
Cria um conjunto de cabeçalhos de solicitação para propagar informações de rastreamento para um back-end. |
parse |
Analisa um valor de cabeçalho traceparent em um <xref:TracingSpanContext>. |
start |
Inicia um determinado intervalo, mas não o define como o intervalo ativo. Você deve terminar o intervalo usando end. Na maioria das vezes, você desejará usar o withSpan . |
with |
Encapsula um retorno de chamada com um contexto ativo e chama o retorno de chamada. Dependendo da implementação, isso pode definir o contexto ativo disponível globalmente. Útil quando você deseja deixar os limites do SDK (fazer uma solicitação ou retorno de chamada para o código do usuário) e não conseguir usar a API withSpan . |
with |
Encapsula um retorno de chamada em um intervalo de rastreamento, chama o retorno de chamada e fecha o intervalo. Essa é a interface primária para usar o Rastreamento e tratará a gravação de erros, bem como definirá o status no intervalo. As funções síncronas e assíncronas serão aguardadas para refletir o resultado do retorno de chamada no intervalo. Exemplo:
|
Detalhes do método
createRequestHeaders(TracingContext)
Cria um conjunto de cabeçalhos de solicitação para propagar informações de rastreamento para um back-end.
function createRequestHeaders(tracingContext?: TracingContext): Record<string, string>
Parâmetros
- tracingContext
- TracingContext
O contexto que contém o intervalo a ser propagado.
Retornos
Record<string, string>
O conjunto de cabeçalhos a serem adicionados a uma solicitação.
parseTraceparentHeader(string)
Analisa um valor de cabeçalho traceparent em um <xref:TracingSpanContext>.
function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext
Parâmetros
- traceparentHeader
-
string
O cabeçalho traceparent a ser analisado.
Retornos
undefined | TracingContext
Um identificador específico da implementação para o intervalo.
startSpan<Options>(string, Options, TracingSpanOptions)
Inicia um determinado intervalo, mas não o define como o intervalo ativo.
Você deve terminar o intervalo usando end.
Na maioria das vezes, você desejará usar o withSpan .
function startSpan<Options>(name: string, operationOptions?: Options, spanOptions?: TracingSpanOptions): { span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
Parâmetros
- name
-
string
O nome do intervalo. Por convenção, isso deve ser ${className}.${methodName}
.
- operationOptions
-
Options
As opções de operação originais.
- spanOptions
- TracingSpanOptions
As opções a serem usadas ao criar o intervalo.
Retornos
{ span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
Um TracingSpan e as opções de operação atualizadas.
withContext<CallbackArgs, Callback>(TracingContext, Callback, CallbackArgs)
Encapsula um retorno de chamada com um contexto ativo e chama o retorno de chamada. Dependendo da implementação, isso pode definir o contexto ativo disponível globalmente.
Útil quando você deseja deixar os limites do SDK (fazer uma solicitação ou retorno de chamada para o código do usuário) e não conseguir usar a API withSpan .
function withContext<CallbackArgs, Callback>(context: TracingContext, callback: Callback, callbackArgs: CallbackArgs): ReturnType<Callback>
Parâmetros
- context
- TracingContext
O TracingContext a ser usado como o contexto ativo no escopo do retorno de chamada.
- callback
-
Callback
O retorno de chamada a ser invocado com o conjunto de contexto fornecido como o contexto globalmente ativo.
- callbackArgs
-
CallbackArgs
Os argumentos de retorno de chamada.
Retornos
ReturnType<Callback>
withSpan<Options, Callback>(string, Options, Callback, TracingSpanOptions)
Encapsula um retorno de chamada em um intervalo de rastreamento, chama o retorno de chamada e fecha o intervalo.
Essa é a interface primária para usar o Rastreamento e tratará a gravação de erros, bem como definirá o status no intervalo.
As funções síncronas e assíncronas serão aguardadas para refletir o resultado do retorno de chamada no intervalo.
Exemplo:
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>>>
Parâmetros
- name
-
string
O nome do intervalo. Por convenção, isso deve ser ${className}.${methodName}
.
- operationOptions
-
Options
As opções originais passadas para o método . O retorno de chamada receberá essas opções com o TracingContext recém-criado.
- callback
-
Callback
O retorno de chamada a ser invocado com as opções atualizadas e o TracingSpan recém-criado.
- spanOptions
- TracingSpanOptions
Retornos
Promise<Resolved<ReturnType<Callback>>>