TracingClient interface
Reprezentuje klienta, który może integrować się z aktualnie skonfigurowanym Instrumenter.
Utwórz wystąpienie przy użyciu createTracingClient.
Metody
create |
Tworzy zestaw nagłówków żądań w celu propagowania informacji śledzenia do zaplecza. |
parse |
Analizuje wartość nagłówka śledzenia w <xref:TracingSpanContext>. |
start |
Uruchamia dany zakres, ale nie ustawia go jako aktywnego zakresu. Należy zakończyć zakres przy użyciu end. W większości przypadków należy użyć z Pan. |
with |
Opakowuje wywołanie zwrotne z aktywnym kontekstem i wywołuje wywołanie zwrotne. W zależności od implementacji może to spowodować ustawienie globalnego aktywnego kontekstu. Przydatne, gdy chcesz opuścić granice zestawu SDK (wysłać żądanie lub wywołanie zwrotne do kodu użytkownika) i nie można użyć z interfejsem API UsługiPan. |
with |
Opakowuje wywołanie zwrotne w zakresie śledzenia, wywołuje wywołanie zwrotne i zamyka zakres. Jest to podstawowy interfejs do używania śledzenia i będzie obsługiwać rejestrowanie błędów, a także ustawiać stan w zakresie. Zarówno funkcje synchroniczne, jak i asynchroniczne będą oczekiwać, aby odzwierciedlić wynik wywołania zwrotnego w zakresie. Przykład:
|
Szczegóły metody
createRequestHeaders(TracingContext)
Tworzy zestaw nagłówków żądań w celu propagowania informacji śledzenia do zaplecza.
function createRequestHeaders(tracingContext?: TracingContext): Record<string, string>
Parametry
- tracingContext
- TracingContext
Kontekst zawierający propagację zakresu.
Zwraca
Record<string, string>
Zestaw nagłówków do dodania do żądania.
parseTraceparentHeader(string)
Analizuje wartość nagłówka śledzenia w <xref:TracingSpanContext>.
function parseTraceparentHeader(traceparentHeader: string): undefined | TracingContext
Parametry
- traceparentHeader
-
string
Nagłówek traceparent do przeanalizowana.
Zwraca
undefined | TracingContext
Identyfikator specyficzny dla implementacji dla zakresu.
startSpan<Options>(string, Options, TracingSpanOptions)
Uruchamia dany zakres, ale nie ustawia go jako aktywnego zakresu.
Należy zakończyć zakres przy użyciu end.
W większości przypadków należy użyć z Pan.
function startSpan<Options>(name: string, operationOptions?: Options, spanOptions?: TracingSpanOptions): { span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
Parametry
- name
-
string
Nazwa zakresu. Zgodnie z konwencją powinna to być ${className}.${methodName}
.
- operationOptions
-
Options
Oryginalne opcje operacji.
- spanOptions
- TracingSpanOptions
Opcje do użycia podczas tworzenia zakresu.
Zwraca
{ span: TracingSpan, updatedOptions: OptionsWithTracingContext<Options> }
TracingSpan i zaktualizowane opcje operacji.
withContext<CallbackArgs, Callback>(TracingContext, Callback, CallbackArgs)
Opakowuje wywołanie zwrotne z aktywnym kontekstem i wywołuje wywołanie zwrotne. W zależności od implementacji może to spowodować ustawienie globalnego aktywnego kontekstu.
Przydatne, gdy chcesz opuścić granice zestawu SDK (wysłać żądanie lub wywołanie zwrotne do kodu użytkownika) i nie można użyć z interfejsem API UsługiPan.
function withContext<CallbackArgs, Callback>(context: TracingContext, callback: Callback, callbackArgs: CallbackArgs): ReturnType<Callback>
Parametry
- context
- TracingContext
TracingContext do użycia jako aktywny kontekst w zakresie wywołania zwrotnego.
- callback
-
Callback
Wywołanie zwrotne, które ma być wywoływane z podanym kontekstem ustawionym jako kontekst globalnie aktywny.
- callbackArgs
-
CallbackArgs
Argumenty wywołania zwrotnego.
Zwraca
ReturnType<Callback>
withSpan<Options, Callback>(string, Options, Callback, TracingSpanOptions)
Opakowuje wywołanie zwrotne w zakresie śledzenia, wywołuje wywołanie zwrotne i zamyka zakres.
Jest to podstawowy interfejs do używania śledzenia i będzie obsługiwać rejestrowanie błędów, a także ustawiać stan w zakresie.
Zarówno funkcje synchroniczne, jak i asynchroniczne będą oczekiwać, aby odzwierciedlić wynik wywołania zwrotnego w zakresie.
Przykład:
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>>>
Parametry
- name
-
string
Nazwa zakresu. Zgodnie z konwencją powinna to być ${className}.${methodName}
.
- operationOptions
-
Options
Oryginalne opcje przekazane do metody . Wywołanie zwrotne otrzyma te opcje z nowo utworzonymi TracingContext.
- callback
-
Callback
Wywołanie zwrotne do wywołania przy użyciu zaktualizowanych opcji i nowo utworzonych TracingSpan.
- spanOptions
- TracingSpanOptions
Zwraca
Promise<Resolved<ReturnType<Callback>>>