Standardspårningskontextspridare uppdaterad till W3C-standard

Standardspridningen för spårningskontext har växlats från den äldre spridningen till W3C-spridningen. Den nya propagatorn använder baggage-huvudet istället för Correlation-Context, tvingar fram W3C-kompatibel kodning och stöder endast W3C-formaterade spåröverordnade-ID:n.

Version lanserad

.NET 10

Tidigare beteende

DistributedContextPropagator.CreateDefaultPropagator() Tidigare returnerade metoden en instans av den äldre propagatorn. Som standardinställning är DistributedContextPropagator.Current angiven för denna äldre instans.

Nytt beteende

Från och med .NET 10 returnerar metoden DistributedContextPropagator.CreateDefaultPropagator() en instans av en W3C-förmedlare. Som standardläge är DistributedContextPropagator.Current inställd på denna W3C-instans.

Exempel på hur du ställer in standardpropagatorn till den äldre propagatorn.

DistributedContextPropagator.Current = DistributedContextPropagator.CreatePreW3CPropagator();

Typ av brytande ändring

Den här ändringen är en beteendeförändring.

Orsak till ändring

Den här ändringen säkerställer fullständig efterlevnad av W3C Trace Context- och Bagagespecifikationerna. W3C-spridaren tillämpar strikt formatering för traceparent, tracestate och baggage-nycklar och värden, i enlighet med W3C-standarderna. Den äldregeneratorn var mer förlåtande och använde den icke-standard Correlation-Context-rubriken för bagageöverföring.

Mer information finns i följande GitHub-problem:

Om du behöver behålla det äldre beteendet använder du DistributedContextPropagator.CreatePreW3CPropagator() metoden för att hämta den äldre spridningsinstansen. Ange den som aktuell spridningspunkt enligt nedan:

DistributedContextPropagator.Current = DistributedContextPropagator.CreatePreW3CPropagator();

Berörda API:er