Udostępnij przez


Domyślny propagator kontekstu śledzenia zaktualizowany do standardu W3C

Domyślny propagator kontekstu śledzenia został zmieniony ze starszego propagatora na propagator W3C. Nowy propagator używa nagłówka baggage zamiast Correlation-Context, wymusza kodowanie zgodne ze standardem W3C oraz obsługuje wyłącznie identyfikatory rodziców śledzenia w formacie W3C.

Wersja wprowadzona

.NET 10

Poprzednie zachowanie

DistributedContextPropagator.CreateDefaultPropagator() Wcześniej metoda zwracała instancję starszego propagatora. Domyślnie DistributedContextPropagator.Current ustawiono na to starsze wystąpienie.

Nowe zachowanie

Począwszy od .NET 10, metoda DistributedContextPropagator.CreateDefaultPropagator() zwraca wystąpienie propagatora W3C. Domyślnie DistributedContextPropagator.Current jest ustawiona na to wystąpienie W3C.

Przykład ustawienia domyślnego propagatora na starszy propagator:

DistributedContextPropagator.Current = DistributedContextPropagator.CreatePreW3CPropagator();

Typ zmiany przełamującej

Ta zmiana jest zmianą behawioralną.

Przyczyna zmiany

Ta zmiana zapewnia pełną zgodność ze specyfikacjami kontekstu śledzenia W3C i danych pomocniczych. Propagator W3C wymusza ścisłe formatowanie dla trace parent, trace state oraz kluczy i wartości bagażu, zgodnie ze standardami W3C. Starszy propagator był bardziej pobłażliwy i używał niestandardowego nagłówka Correlation-Context do propagacji kontekstu.

Aby uzyskać więcej informacji, zobacz następujące problemy z usługą GitHub:

Jeśli chcesz zachować starsze zachowanie, użyj metody DistributedContextPropagator.CreatePreW3CPropagator(), aby pobrać starszą instancję propagatora. Ustaw go jako bieżącego propagatora, jak pokazano poniżej:

DistributedContextPropagator.Current = DistributedContextPropagator.CreatePreW3CPropagator();

Interfejsy API, których dotyczy problem