All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning and is following Keep a CHANGELOG.
- Support for .NET Framework 4.6.2
- #196 Sink does not work well with other sinks due to dependency version mismatch. (discovered by @sergey-messer)
- [BREAKING CHANGE] Remove support for .NET Standard 1.3, aligning with the cross-platform targeting library guidance
- [BREAKING CHANGE] Remove support for .NET Framework 4.6.1, aligning with the .NET Framework support policy
- [BREAKING CHANGE] Support for specifying UDP datagram encoding (contributed by @pedoc)
- [BREAKING CHANGE] Support for broadcast packages (contributed by @dnatov)
- Update dependencies
- [BREAKING CHANGE] Support for .NET Framework 4.5 due to deprecation as of January 12, 2016
- Support for .NET Standard 2.1 (contributed by @augustoproiete)
- Configure SourceLink to embed untracked sources
- Configure SourceLink to use deterministic builds when running on AppVeyor
- #73 [BREAKING CHANGE] Leading and trailing white-space characters are no longer removed from the payload before being sent over the network, thus respecting output templates that use those characters. (discovered by @tagcode)
- #42 Revert to support IPv4 on networks without IPv6 (contribution by brettdavis-bmw)
- #45 Correctly XML escape exception message serialized by
Log4jTextFormatter
- #51 Correctly XML escape all properties serialized by
Log4jTextFormatter
andLog4netTextFormatter
- [BREAKING CHANGE] The API for creating a sink has changed. The sink was originally intended for IPv4 addresses, but has along the way gotten support for host names and IPv6 addresses. These changes calls for a small redesign of the API, benefiting the majority of the consumers using application settings instead of code configuration. The following chapters will describe your migration path.
Lets assume you have configured the sink using code, and your code looks something like this.
Serilog.ILogger log = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo.Udp(IPAddress.Loopback, 7071)
.CreateLogger();
The Udp
extension is no longer accepting IPAddress
as first argument, and you are now required to specify the address family your remote address is targeting. Lets change the code above to conform to the new API.
Serilog.ILogger log = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo.Udp("localhost", 7071, AddressFamily.InterNetwork)
.CreateLogger();
Lets assume you have configured the sink using application settings, and your configuration looks something like this.
{
"Serilog": {
"MinimumLevel": "Verbose",
"WriteTo": [
{
"Name": "Udp",
"Args": {
"remoteAddress": "localhost",
"remotePort": 7071
}
}
]
}
}
You are now required to specify the address family your remote address is targeting. Lets change the configuration above to conform to the new API.
{
"Serilog": {
"MinimumLevel": "Verbose",
"WriteTo": [
{
"Name": "Udp",
"Args": {
"remoteAddress": "localhost",
"remotePort": 7071,
"family": "InterNetwork"
}
}
]
}
}
- Support for .NET Framework 4.6.1 due to recommendations from the cross-platform targeting guidelines
- Support for .NET Standard 2.0 due to recommendations from the cross-platform targeting guidelines
- #29 Fix remote hostname implementation bug (contribution by Nisheeth Barthwal)
- #31 Enable IPv6 dual mode operation for IPv4 mapped addresses (contribution by Nisheeth Barthwal)
Please note that this release contains breaking changes. UDP packages are now sent using a socket in dual mode, which tunnels IPv4 traffic over IPv6. For more information regarding dual mode, please see the ASP.NET blog. For questions regarding operating systems and IPv6 support, please see the comparison of IPv6 support in operating systems.
- #26 Ability to specify a hostname instead of an IP address when configuring sink using Serilog.Settings.Configuration (contribution by Marek Stachura)
- #21 Invalid XML generated by
Log4jTextFormatter
andLog4netTextFormatter
- Support for .NET Standard 2.0 since the sink also has support for .NET Standard 1.3
- [BREAKING CHANGE] Option to specify a logging level switch (contribution by Gian Maria)
- Text formatter compliant with log4net XML schema, thus compatible with Log4View (contribution by Johan van Rhyn)
- Text formatter compliant with log4j XML schema, thus compatible with Log2Console
- Support for .NET Core 2.0
- Full parity between code and JSON configuration of sink by introducing Serilog.Settings.Configuration support for extension method
Udp(IPAddress remoteAddress, int remotePort, ITextFormatter formatter, int localPort, LogEventLevel restrictedToMinimumLevel)
.
- [BREAKING CHANGE] Renamed argument
remoteAddressAsString
toremoteAddress
. JSON configuration using Serilog.Settings.Configuration will have to be updated accordingly.
- Package project URL
- #7 - Support for .NET Standard 1.3 (contribution by Scott Martin)
- Support for Serilog.Settings.Configuration (contribution by Jon)
- Support for specifying a log event formatter
- [BREAKING CHANGE] Support for Serilog 2.0.0
- Support for .NET Standard 1.5
- Support for Serilog v1.5.14.
- URL to NuGet package icon.
Initial version.