Condividi tramite


TracingClient interface

Rappresenta un client che può essere integrato con lo strumento attualmente configurato.

Creare un'istanza usando createTracingClient.

Metodi

createRequestHeaders(TracingContext)

Crea un set di intestazioni di richiesta per propagare le informazioni di traccia in un back-end.

parseTraceparentHeader(string)

Analizza un valore di intestazione traceparent in un <xref:TracingSpanContext>oggetto .

startSpan<Options>(string, Options, TracingSpanOptions)

Avvia un determinato intervallo, ma non lo imposta come intervallo attivo.

È necessario terminare l'intervallo usando la fine.

La maggior parte del tempo che si vuole usare conSpan .

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

Esegue il wrapping di un callback con un contesto attivo e chiama il callback. A seconda dell'implementazione, questo può impostare il contesto attivo disponibile a livello globale.

Utile quando si desidera lasciare i limiti dell'SDK (effettuare una richiesta o il callback al codice utente) e non è possibile usare l'API withSpan .

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

Esegue il wrapping di un callback in un intervallo di traccia, chiama il callback e chiude l'intervallo.

Si tratta dell'interfaccia primaria per l'uso di Traccia e gestirà la registrazione degli errori e l'impostazione dello stato sull'intervallo.

Sia le funzioni sincrone che asincrone saranno attese per riflettere il risultato del callback nell'intervallo.

Esempio:

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

Dettagli metodo

createRequestHeaders(TracingContext)

Crea un set di intestazioni di richiesta per propagare le informazioni di traccia in un back-end.

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

Parametri

tracingContext
TracingContext

Contesto contenente l'intervallo da propagare.

Restituisce

Record<string, string>

Set di intestazioni da aggiungere a una richiesta.

parseTraceparentHeader(string)

Analizza un valore di intestazione traceparent in un <xref:TracingSpanContext>oggetto .

function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext

Parametri

traceparentHeader

string

Intestazione traceparent da analizzare.

Restituisce

undefined | TracingContext

Identificatore specifico dell'implementazione per l'intervallo.

startSpan<Options>(string, Options, TracingSpanOptions)

Avvia un determinato intervallo, ma non lo imposta come intervallo attivo.

È necessario terminare l'intervallo usando la fine.

La maggior parte del tempo che si vuole usare conSpan .

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

Parametri

name

string

Nome dell'intervallo. Per convenzione, questo deve essere ${className}.${methodName}.

operationOptions

Options

Opzioni di operazione originali.

spanOptions
TracingSpanOptions

Opzioni da usare durante la creazione dell'intervallo.

Restituisce

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

Elemento TracingSpan e le opzioni di operazione aggiornate.

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

Esegue il wrapping di un callback con un contesto attivo e chiama il callback. A seconda dell'implementazione, questo può impostare il contesto attivo disponibile a livello globale.

Utile quando si desidera lasciare i limiti dell'SDK (effettuare una richiesta o il callback al codice utente) e non è possibile usare l'API withSpan .

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

Parametri

context
TracingContext

TracingContext da usare come contesto attivo nell'ambito del callback.

callback

Callback

Callback da richiamare con il contesto specificato impostato come contesto attivo globale.

callbackArgs

CallbackArgs

Argomenti di callback.

Restituisce

ReturnType<Callback>

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

Esegue il wrapping di un callback in un intervallo di traccia, chiama il callback e chiude l'intervallo.

Si tratta dell'interfaccia primaria per l'uso di Traccia e gestirà la registrazione degli errori e l'impostazione dello stato sull'intervallo.

Sia le funzioni sincrone che asincrone saranno attese per riflettere il risultato del callback nell'intervallo.

Esempio:

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

Parametri

name

string

Nome dell'intervallo. Per convenzione, questo deve essere ${className}.${methodName}.

operationOptions

Options

Le opzioni originali passate al metodo. Il callback riceverà queste opzioni con l'oggetto TracingContext appena creato.

callback

Callback

Callback da richiamare con le opzioni aggiornate e appena creato TracingSpan.

spanOptions
TracingSpanOptions

Restituisce

Promise<Resolved<ReturnType<Callback>>>