TracingClient interface
Representa um cliente que pode se integrar com o doInstrumenter 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 uma determinada extensão, mas não a define como a extensão ativa. Você deve encerrar a extensão usando end. Na maioria das vezes, você vai querer usar withSpan em vez disso. |
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 consegue usar o withSpan API. |
with |
Encapsula um retorno de chamada em uma extensão de rastreamento, chama o retorno de chamada e fecha a extensão. Esta é a interface principal para usar o rastreamento e irá lidar com a gravação de erros, bem como definir o status na extensão. As funções síncronas e assíncronas serão aguardadas para refletir o resultado do retorno de chamada na extensão. Exemplo:
|
Detalhes de 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.
Devoluções
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.
Devoluções
undefined | TracingContext
Um identificador específico de implementação para a extensão.
startSpan<Options>(string, Options, TracingSpanOptions)
Inicia uma determinada extensão, mas não a define como a extensão ativa.
Você deve encerrar a extensão usando end.
Na maioria das vezes, você vai querer usar withSpan em vez disso.
function startSpan<Options>(name: string, operationOptions?: Options, spanOptions?: TracingSpanOptions): { span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
Parâmetros
- name
-
string
O nome da extensão. 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 a extensão.
Devoluções
{ span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
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 consegue usar o withSpan API.
function withContext<CallbackArgs, Callback>(context: TracingContext, callback: Callback, callbackArgs: CallbackArgs): ReturnType<Callback>
Parâmetros
- context
- TracingContext
O TracingContext usar como o contexto ativo no escopo do retorno de chamada.
- callback
-
Callback
O retorno de chamada a ser invocado com o contexto dado definido como o contexto globalmente ativo.
- callbackArgs
-
CallbackArgs
Os argumentos de retorno de chamada.
Devoluções
ReturnType<Callback>
withSpan<Options, Callback>(string, Options, Callback, TracingSpanOptions)
Encapsula um retorno de chamada em uma extensão de rastreamento, chama o retorno de chamada e fecha a extensão.
Esta é a interface principal para usar o rastreamento e irá lidar com a gravação de erros, bem como definir o status na extensão.
As funções síncronas e assíncronas serão aguardadas para refletir o resultado do retorno de chamada na extensão.
Exemplo:
import { createTracingClient } from "@azure/core-tracing";
const tracingClient = createTracingClient({
namespace: "test.namespace",
packageName: "test-package",
packageVersion: "1.0.0",
});
const options = {};
const myOperationResult = await tracingClient.withSpan(
"myClassName.myOperationName",
options,
(updatedOptions) => {
// Do something with the updated options.
return "myOperationResult";
},
);
function withSpan<Options, Callback>(name: string, operationOptions: Options, callback: Callback, spanOptions?: TracingSpanOptions): Promise<Resolved<ReturnType<Callback>>>
Parâmetros
- name
-
string
O nome da extensão. Por convenção, isso deve ser ${className}.${methodName}
.
- operationOptions
-
Options
As opções originais passaram para o método. O retorno de chamada receberá essas opções com o recém-criado TracingContext.
- callback
-
Callback
O retorno de chamada a ser invocado com as opções atualizadas e o recém-criado TracingSpan.
- spanOptions
- TracingSpanOptions
Devoluções
Promise<Resolved<ReturnType<Callback>>>