Partager via


TracingClient interface

Représente un client qui peut s’intégrer au instrumenteur actuellement configuré.

Créez une instance à l’aide de createTracingClient.

Méthodes

createRequestHeaders(TracingContext)

Crée un ensemble d’en-têtes de requête pour propager les informations de suivi vers un backend.

parseTraceparentHeader(string)

Analyse une valeur d’en-tête traceparent en un <xref:TracingSpanContext>.

startSpan<Options>(string, Options, TracingSpanOptions)

Démarre une plage donnée, mais ne la définit pas comme plage active.

Vous devez terminer la plage à l’aide de end.

La plupart du temps, vous voudrez utiliser withSpan à la place.

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

Encapsule un rappel avec un contexte actif et appelle le rappel. Selon l’implémentation, cela peut définir le contexte actif globalement disponible.

Utile lorsque vous souhaitez quitter les limites du SDK (effectuer une requête ou un rappel au code utilisateur) et que vous ne pouvez pas utiliser l’API withSpan .

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

Encapsule un rappel dans une plage de suivi, appelle le rappel et ferme la plage.

Il s’agit de l’interface principale pour l’utilisation du traçage et elle gère l’enregistrement des erreurs ainsi que la définition de l’état de la plage.

Les fonctions synchrones et asynchrones seront attendues afin de refléter le résultat du rappel sur la span.

Exemple:

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";
  },
);

Détails de la méthode

createRequestHeaders(TracingContext)

Crée un ensemble d’en-têtes de requête pour propager les informations de suivi vers un backend.

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

Paramètres

tracingContext
TracingContext

Contexte contenant la plage à propager.

Retours

Record<string, string>

L’ensemble des en-têtes à ajouter à une requête.

parseTraceparentHeader(string)

Analyse une valeur d’en-tête traceparent en un <xref:TracingSpanContext>.

function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext

Paramètres

traceparentHeader

string

L’en-tête traceparent à analyser.

Retours

undefined | TracingContext

Identificateur spécifique à l’implémentation pour la span.

startSpan<Options>(string, Options, TracingSpanOptions)

Démarre une plage donnée, mais ne la définit pas comme plage active.

Vous devez terminer la plage à l’aide de end.

La plupart du temps, vous voudrez utiliser withSpan à la place.

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

Paramètres

name

string

Nom de l’étendue. Par convention, cela devrait être ${className}.${methodName}.

operationOptions

Options

Les options de fonctionnement d’origine.

spanOptions
TracingSpanOptions

Options à utiliser lors de la création de l’étendue.

Retours

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

A TracingSpan et les options de fonctionnement mises à jour.

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

Encapsule un rappel avec un contexte actif et appelle le rappel. Selon l’implémentation, cela peut définir le contexte actif globalement disponible.

Utile lorsque vous souhaitez quitter les limites du SDK (effectuer une requête ou un rappel au code utilisateur) et que vous ne pouvez pas utiliser l’API withSpan .

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

Paramètres

context
TracingContext

Le TracingContext à utiliser comme contexte actif dans l’étendue du rappel.

callback

Callback

Rappel à appeler avec le contexte donné défini comme contexte global actif.

callbackArgs

CallbackArgs

Arguments de rappel.

Retours

ReturnType<Callback>

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

Encapsule un rappel dans une plage de suivi, appelle le rappel et ferme la plage.

Il s’agit de l’interface principale pour l’utilisation du traçage et elle gère l’enregistrement des erreurs ainsi que la définition de l’état de la plage.

Les fonctions synchrones et asynchrones seront attendues afin de refléter le résultat du rappel sur la span.

Exemple:

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

Paramètres

name

string

Nom de l’étendue. Par convention, cela devrait être ${className}.${methodName}.

operationOptions

Options

Les options d’origine ont été transmises à la méthode. Le callback recevra ces options avec le TracingContext nouvellement créé.

callback

Callback

Le rappel à appeler avec les options mises à jour et le TracingSpan nouvellement créé.

spanOptions
TracingSpanOptions

Retours

Promise<Resolved<ReturnType<Callback>>>