This release supersedes 2.0.0-prerelease. Let us start by recalling the main changes of this version compared to the 1.31 one:
Highlights
- .NET 6 support added
- .NET Framework versions <4.6.1 are no longer supported
- ASP.NET and ASP.NET Core resource names have been standardized to use controller/action and routes wherever possible
- ⚠️ This will change endpoints in the Datadog app
- New integrations
- Couchbase
- Postgres v6
- Public API changes
Datadog.Trace.Traceris now a singleton and its settings can be updated withTracer.ConfigureDatadog.Trace.TracerimplementsITracerfor use in DI- Replace usages of
Scope/Spanclasses withIScope/ISpanclasses
- Solves version conflict between automatic and manual instrumentation. Regarding this fix:
- on .Net Core, you need to upgrade custom instrumentation first. The fix will work with automatic instrumentation starting v1.28.8
- on .Net Framework, you need both the custom and automatic tracer to run on v2.x for the conflict to be solved. Futures upgrades won't show this issue anymore though.
- Automatic logs injection now requires the application to be instrumented with automatic instrumentation. More details in our documentation
Changes since 2.0.0-preprelease
- Add README for Datadog.Trace NuGet package (#2069)
- Re-implement NLog logs injection (#2096)
- Remove LockSamplingPriority (#2150)
- Re-implement Serilog logs injection (#2152)
- Reset the AsyncLocal DistributedValue when starting an automatic instrumentation continuation (#2156)
- [Redo] Fix logs injection to work correctly when there's a version mismatch (#2161)
- Revert "Disable version conflict fix (#2155)" (#2162)
- Isolate transport settings (#2166)
- Fix parser null ref and upgrade rule-set (#2167)
- [AppSec] Handle null keys when reading headers, cookies and query strings (#2171)
- Synchronize runtime id across versions of the tracer (#2172)
- Fix build paths in README (#2175)
- Minor improvements (#2177)
- Include missing properties on Exporter Settings (#2179)
- [AppSec] Update rules file 1.2.4 (#2190)
- [2.0] Simplify Tracer.StartActive overloads to match ITracer.StartActive overloads (#2176)
- Changes types visibility (#2185)
Fixes
- [2.0] - Skip loader injection on profiler managed loader (#2196)