Serilog Versions Save

Simple .NET logging with fully-structured events

v2.7.1

6 years ago

Version 2.7.0 was skipped due to a versioning mistake.

  • #1075 - overload of LoggerSinkConfiguration.Wrap() accepting LoggingLevelSwitch
  • #1083 - update package metadata, including https:// project and icon URLs
  • #1091 - make {Properties:j} work consistently with the console sink
  • #1110 - expose an efficient Logger.None
  • #1113 - (tooling) improve tests for LogContext
  • #1136 - (tooling) fix build.sh exit code
  • #1141 - fix logging of byte[] smaller than 1 KB
  • #1157 - (tooling) update .gitignore
  • #1158 - (tooling) re-enable macOS builds
  • #1163 - SourceLink v2 support
  • #1165 - fix a number of issues with LoggerSinkConfiguration.Wrap() affecting WriteTo.Async()
  • #1134 - (tooling) add README badges for downloads/stats
  • #1166 - allow LoggerConfiguration to be garbage collected after logger is created
  • #1160 - (tooling) update NuGet.org API key
  • (tooling) Update to use the latest .NET SDK

v2.6.0

6 years ago
  • #992 - fix LogContext remoting issue on .NET Framework 4.5
  • #1007 - LogContext.Suspend() and LogContext.Reset() to pass or drop context from child tasks
  • #1018 - include source in NUPKGs
  • #1020 - support for LoggingLevelSwitch in key-value/<appSettings> settings
  • #1033 - warn when MinimumLevel.Override() is used in a sub-logger
  • #1034 - more efficient levelled ILogger.ForContext()/Log.ForContext()
  • #1051 - handle duplicate keys in key-value/<appSettings> settings (last-in wins)
  • #1064 - support static member references as key-value/<appSettings> values
  • #1059 - support for abstract class parameters in settings
  • #1068 - handle parsing of token width more robustly

Plus build/documentation items #988, #994, #996, #1019, #842, #1042, #1050, #1055, #1063.

v2.5.0

6 years ago
  • #939, #946, #972 - RTM .NET Standard/Core tooling
  • #955 - LoggerSinkConfiguration.Wrap()
  • #944 - {Properties} in output templates
  • #961 - fix parser exeception when property tokens with zero-length names are encountered
  • #773 - LogContext.Clone() and LogContext.Push(ILogEventEnricher)
  • #976 - support for logging C# 7 ValueTuple<> values
  • #977 - output formatting performance improvements, {Message:l} (unquoted string) and {Message:j} (JSON structure) support in output templates
  • #981 - reduced allocations required for structured data capturing

Plus multiple build/test/configuration improvements.

v2.4.0

7 years ago
  • #866 and #877- additional event payload limiting controls
  • #833 - improve performance of message template cache lookup
  • #885 - fix JSON formatting of NaN and infinity values
  • #888 - allow minimum level overrides to be specified by configuration providers like Serilog.Settings.AppSettings
  • #903 - add further Log static methods to match ILogger methods
  • #907 - properly dispose audit sinks
  • #913 - include commit hash in AssemblyInformationalVersion
  • #925 - allow configuration providers to specify filter directives

Plus build and test coverage work in #821, #824, #896, etc.

v2.3.0

7 years ago
  • #870 - fix dispose for level-restricted sinks
  • #852 - fix dictionary capturing when key/value are anonymous types
  • #835 - avoid RemotingException via LogContext
  • #855 - allow custom enum rendering (better ICustomFormatter support
  • #841 - audit-to in key-value settings

v2.2.1

7 years ago
  • #835 (fix for .NET 4.6+ only)

v2.2.0

7 years ago
  • #826 - Audit-style logging
  • #819 - Deprecate virtual extension points on JsonFormatter

v2.1.0

7 years ago

#782 - provide Destructure.ByTransformingWhere() #779 - capture additional parameters even when template is malformed #798 - fix overload selection in KeyValueSettings #815 - allow level to be lowered by overrides, in addition to being raised

v2.0.0

7 years ago

Compatible with .NET 4.5+ and .NET Core 1.0+.