Výchozí formát Default ActivityIdFormat je W3C
Výchozí formát identifikátoru pro aktivitu (Activity.DefaultIdFormat) je nyní ActivityIdFormat.W3C.
Změna popisu
Formát ID aktivity W3C byl zaveden v .NET Core 3.0 jako alternativu k hierarchickému formátu ID. Kvůli zachování kompatibility však formát W3C nebyl nastaven jako výchozí až do .NET 5. Výchozí nastavení bylo v .NET 5 změněno, protože formát W3C byl ratifikován a získal trakci napříč několika implementacemi jazyka.
Pokud vaše aplikace cílí na jinou platformu než .NET 5 nebo novější, dojde k původnímu chování, kde Hierarchical je výchozí formát. Toto výchozí nastavení platí pro platformy net45+, netstandard1.1 a netcoreapp (1.x, 2.x a 3.x). V .NET 5 a novější Activity.DefaultIdFormat je nastavena na ActivityIdFormat.W3C.
Zavedená verze
5,0
Doporučená akce
Pokud je vaše aplikace nezávislá na identifikátoru, který se používá k distribuovanému trasování, není potřeba žádná akce. Knihovny jako ASP.NET Core a HttpClient mohou využívat nebo šířit obě verze ActivityIdFormat.
Pokud požadujete interoperabilitu se stávajícími systémy nebo aktuální systémy spoléhají na formát identifikátoru, můžete staré chování zachovat nastavením na DefaultIdFormatActivityIdFormat.Hierarchicalhodnotu . Alternativně můžete nastavit přepínač AppContext jedním ze tří způsobů:
V souboru projektu.
<ItemGroup> <RuntimeHostConfigurationOption Include="System.Diagnostics.DefaultActivityIdFormatIsHierarchial" Value="true" /> </ItemGroup>
V souboru runtimeconfig.json.
{ "runtimeOptions": { "configProperties": { "System.Diagnostics.DefaultActivityIdFormatIsHierarchial": true } } }
Prostřednictvím proměnné prostředí.
Nastavte
DOTNET_SYSTEM_DIAGNOSTICS_DEFAULTACTIVITYIDFORMATISHIERARCHIAL
natrue
hodnotu nebo 1.