#1971 - drop test coverage for unsupported .NET Core versions (@bartelink)
Built-in trace and span id support
This release adds two new first-class properties to LogEvent: TraceId and SpanId. These are set automatically in Logger.Write() to the corresponding property values from System.Diagnostics.Activity.Current.
The major benefit of this change is that sinks, once updated, can reliably propagate trace and span ids through to back-ends that support them (in much the same way that first-class timestamps, messages, levels, and exceptions are used today).
The sinks maintained under serilog/serilog, along with formatting helpers such as Serilog.Formatting.Compact and Serilog.Expressions, are already compatible with this change or have pending releases that add compatibility.
Dropped .NET Core 2.1 and 3.0 support
On .NET Core 2.1 and 3.0, projects targeting Serilog 3.1+ will fail to build, with:
/project/packages/system.runtime.compilerservices.unsafe/6.0.0/buildTransitive/netcoreapp2.0
/System.Runtime.CompilerServices.Unsafe.targets(4,5): error : System.Runtime.CompilerServices.Unsafe
doesn't support netcoreapp2.1. Consider updating your TargetFramework to netcoreapp3.1 or later.
Affected consumers should continue to use Serilog 3.0 or earlier. See serilog/serilog#1983 for a discussion of this issue.
Technical breaking change
Trace and span id collection includes support for {TraceId} and {SpanId} placeholders in output templates (commonly used when formatting text log files). Where previously these names resolved to user-defined properties, they now resolve to the built-in LogEvent.TraceId and LogEvent.SpanId values, respectively.
Impact is expected to be low/zero, because the trace and span id values in any user-added properties are almost certainly identical to the built-in ones.
v3.0.1
#1926 - fix JsonFormatter output for renderMessage = true (@nblumhardt)
v3.0.0
What's new in 3.0.0?
Target framework changes - Serilog no longer targets netstandard1.x or .NET Framework versions earlier than .NET 4.6.2. Users on affected frameworks should continue to target Serilog 2.12.x.
[release/6.0] Fix a memory leak in runtime interop stubs when using an array of structs of types that use old-style managed marshalers by @jkoritzinsky in dotnet/runtime#93147
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Bumps Serilog and System.Diagnostics.DiagnosticSource. These dependencies needed to be updated together. Updates
Serilog
from 2.12.0 to 3.1.1Release notes
Sourced from Serilog's releases.
... (truncated)
Commits
999d686
Merge pull request #1978 from serilog/dev16739f0
Don't stack overflow when disposingReusableStringWriter
(#1977)ca4efda
Dev version bump [skip ci]765a046
Merge pull request #1975 from serilog/deve37837e
chore(docs): Markdown housekeeping (#1969)a493ffd
chore: Drop test coverage for out of support .NET Core vers (#1971)e059e9f
MakeStringBuilderCapacityThreshold
the even power of two that was intended8d0e2ed
ReusableStringWriter: Dispose instance with too big buffer (#1964)88f76a8
By reference string comparison in template cache (#1947)d6e80e6
Removed temporary array allocations for properties (#1948)Updates
System.Diagnostics.DiagnosticSource
from 6.0.0 to 7.0.2Release notes
Sourced from System.Diagnostics.DiagnosticSource's releases.
... (truncated)
Commits
d037e07
Merge in 'release/7.0' changes8ac3832
Bump the net6 workload versions (#79085)b183393
Merge in 'release/7.0' changes4f15a5c
Update dependencies from https://github.com/dotnet/emsdk build 20221129.2 (#7...62de7b7
Merge in 'release/7.0' changes30426a7
[release/7.0] Fix configuration binding with types implementing IDictionary<,...fa34169
Merge in 'release/7.0' changes05b1a93
Merge in 'release/7.0' changese721ae9
Update dependencies from https://github.com/dotnet/llvm-project build 2022112...44e68e8
Make sure s_currentGenerationTable is safe for profiler attach (#78937)You can trigger a rebase of this PR by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show