NLog
5.0.0
Prefix Reserved
Install-Package NLog -Version 5.0.0
dotnet add package NLog --version 5.0.0
<PackageReference Include="NLog" Version="5.0.0" />
paket add NLog --version 5.0.0
#r "nuget: NLog, 5.0.0"
// Install NLog as a Cake Addin
#addin nuget:?package=NLog&version=5.0.0
// Install NLog as a Cake Tool
#tool nuget:?package=NLog&version=5.0.0
See Release post
Details of changes: See here
Major Features
- NLog is now faster and lighter
- NLog Layout for everything
- NLog ScopeContext to replace MDC + MDLC + NDC + NDLC
- NLog Layout stored as NLog Configuration Variables
- Fluent API for NLog LoggingConfiguration
- NLog Callsite from caller member attributes
- LogFactory with Dependency Injection
- Aliases support for targets, layouts, layout renderers and conditions\
- Dashes (-) will be ignored when parsing names
Breaking Changes
See rationale here
- Strong Version Changed
- Obsolete methods have been removed
- Xamarin, Windows Phone and Silverlight platforms have been removed
- .NET Framework v4.0 platform removed and replaced with .NET Framework v4.6
- NLog Extensions assemblies will not load automatically
- NLog Targets extracted into their own nuget-packages
- Deprecated NLog.Extended nuget-package
- Deprecated NLog.Config nuget-package
- Automatic loading of NLog.config now first check for exe.nlog
- NLog Configuration will have KeepVariablesOnReload enabled by default
- Layout and LayoutRenderer are now threadsafe by default
- Default Layout for NLog Targets has been updated
- Default Format for NLog Exception layoutrenderer has been updated
- NLog InternalLogger will not initialize itself from app.config or environment variables
- Removed obsolete method Target.Write(AsyncLogEventInfo[]) and OptimizeBufferReuse is always true
- ScopeContext changes MappedDiagnosticContext (MDC) to use AsyncLocal
- MappedDiagnosticContext (MDC), MappedDiagnosticLogicalContext (MDLC), GlobalDiagnosticContext (GDC) now case-insensitive
- FileTarget KeepFileOpen = true by default
- FileTarget ConcurrentWrites = false by default
- FileTarget Encoding default value changed to UTF8
- FileTarget will include BOM by default for UTF16 and UTF32 encoding
- NetworkTarget will Discard by default on overflow
- JsonLayout MaxRecursionLimit default value changed to 1
- JsonLayout EscapeForwardSlash default value changed to false
- JsonLayout always includes decimal point for floating-point types
- CallSite-renderer will automatically clean async callstacks
- LoggingRule Filters DefaultAction changed to FilterResult.Ignore
- NLog.Extensions.Logging without any filter
- NLog.Extensions.Logging changes capture of EventId
- The Simplelayout.ToString() has been changed
Many other improvements
For a full list of all the enhancements and performance improvements: NLog 5.0 Pull Requests
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows |
.NET Core | netcoreapp1.0 netcoreapp1.1 netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard1.3 netstandard1.4 netstandard1.5 netstandard1.6 netstandard2.0 netstandard2.1 |
.NET Framework | net35 net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen30 tizen40 tizen60 |
Universal Windows Platform | uap uap10.0 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETFramework 3.5
- No dependencies.
-
.NETFramework 4.5
- No dependencies.
-
.NETFramework 4.6
- No dependencies.
-
.NETStandard 1.3
- Microsoft.Extensions.PlatformAbstractions (>= 1.0.0)
- NETStandard.Library (>= 1.6.0)
- System.ComponentModel.Primitives (>= 4.3.0)
- System.ComponentModel.TypeConverter (>= 4.3.0)
- System.Data.Common (>= 4.3.0)
- System.Diagnostics.StackTrace (>= 4.3.0)
- System.Net.Http (>= 4.3.4)
- System.Net.NameResolution (>= 4.3.0)
- System.Net.Requests (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.3.0)
- System.Text.RegularExpressions (>= 4.3.1)
- System.Xml.XmlDocument (>= 4.3.0)
-
.NETStandard 1.5
- NETStandard.Library (>= 1.6.0)
- System.ComponentModel.Primitives (>= 4.3.0)
- System.ComponentModel.TypeConverter (>= 4.3.0)
- System.Data.Common (>= 4.3.0)
- System.Diagnostics.Process (>= 4.3.0)
- System.Diagnostics.StackTrace (>= 4.3.0)
- System.Diagnostics.TraceSource (>= 4.3.0)
- System.IO.FileSystem.Watcher (>= 4.3.0)
- System.Net.Http (>= 4.3.4)
- System.Net.NameResolution (>= 4.3.0)
- System.Net.Requests (>= 4.3.0)
- System.Reflection.TypeExtensions (>= 4.3.0)
- System.Runtime.Loader (>= 4.3.0)
- System.Text.RegularExpressions (>= 4.3.1)
- System.Threading.Thread (>= 4.3.0)
- System.Xml.XmlDocument (>= 4.3.0)
-
.NETStandard 2.0
- No dependencies.
NuGet packages (2.2K)
Showing the top 5 NuGet packages that depend on NLog:
Package | Downloads |
---|---|
NLog.Extensions.Logging
NLog LoggerProvider for Microsoft.Extensions.Logging for logging in .NET Standard libraries and .NET Core applications. For ASP.NET Core, check: https://www.nuget.org/packages/NLog.Web.AspNetCore |
|
NLog.Config
NLog.config file to get started with configuring NLog. This package is not mandatory to get started with NLog: the configuration file can created manually (read specs here: https://github.com/NLog/NLog/wiki/Configuration-file) or the configuration can be created programmatically. (read more here: https://github.com/NLog/NLog/wiki/Configuration-API) Note: Unfortunately this package won't work well when using <PackageReference> Advised to: - download manually: https://raw.githubusercontent.com/NLog/NLog/v4.4/src/NuGet/NLog.Config/content/NLog.config - set "Copy To Output Directory" to "Copy if newer" |
|
Microsoft.ApplicationInsights.NLogTarget
Application Insights NLog Target is a custom target allowing you to send NLog log messages to Application Insights. Application Insights will collect your logs from multiple sources and provide rich powerful search capabilities. Privacy statement: https://go.microsoft.com/fwlink/?LinkId=512156 |
|
NLog.Web
NLog logging for ASP.NET and ASP.NET MVC. Includes targets and layout renderers for websites and web applications. This package is for ASP.NET 3.5+ For ASP.NET Core: Check https://www.nuget.org/packages/NLog.Web.AspNetCore |
|
NLog.Extended
NLog.Extended.dll provides MSMQ target and AppSetting renderer |
GitHub repositories (273)
Showing the top 5 popular GitHub repositories that depend on NLog:
Repository | Stars |
---|---|
microsoft/PowerToys
Windows system utilities to maximize productivity
|
|
Wox-launcher/Wox
Launcher for Windows, an alternative to Alfred and Launchy.
|
|
BeyondDimension/SteamTools
🛠「Watt Toolkit」是一个开源跨平台的多功能 Steam 工具箱。
|
|
Jackett/Jackett
API Support for your favorite torrent trackers
|
|
Sonarr/Sonarr
Smart PVR for newsgroup and bittorrent users.
|
Version | Downloads | Last updated |
---|---|---|
5.0.0 | 62,678 | 5/16/2022 |
5.0.0-rc2 | 88,400 | 1/19/2022 |
5.0.0-rc1 | 66,339 | 12/20/2021 |
5.0.0-preview.3 | 43,310 | 10/26/2021 |
5.0.0-preview.2 | 10,968 | 10/3/2021 |
5.0.0-preview.1 | 11,832 | 8/25/2021 |
4.7.15 | 582,576 | 3/26/2022 |
4.7.14 | 491,747 | 2/23/2022 |
4.7.13 | 1,682,813 | 12/5/2021 |
4.7.12 | 1,249,467 | 10/24/2021 |
4.7.11 | 4,045,681 | 8/18/2021 |
4.7.10 | 3,908,696 | 5/14/2021 |
4.7.9 | 3,676,812 | 3/24/2021 |
4.7.8 | 1,974,501 | 2/25/2021 |
4.7.7 | 1,793,278 | 1/20/2021 |
4.7.6 | 3,296,434 | 12/6/2020 |
4.7.5 | 3,855,698 | 9/27/2020 |
4.7.4 | 3,029,463 | 8/22/2020 |
4.7.3 | 1,130,857 | 7/31/2020 |
4.7.2 | 7,381,486 | 5/18/2020 |
4.7.1 | 97,923 | 5/15/2020 |
4.7.0 | 3,865,577 | 3/20/2020 |
4.6.8 | 12,193,571 | 11/4/2019 |
4.6.7 | 8,998,850 | 8/25/2019 |
4.6.6 | 2,383,154 | 7/14/2019 |
4.6.5 | 3,093,595 | 6/14/2019 |
4.6.4 | 2,277,116 | 5/28/2019 |
4.6.3 | 2,170,941 | 4/30/2019 |
4.6.2 | 1,748,086 | 4/2/2019 |
4.6.1 | 233,593 | 3/29/2019 |
4.6.0 | 713,869 | 3/21/2019 |
4.5.11 | 12,362,240 | 11/6/2018 |
4.5.10 | 4,873,084 | 9/17/2018 |
4.5.9 | 1,288,493 | 8/24/2018 |
4.5.8 | 1,828,199 | 8/5/2018 |
4.5.7 | 997,561 | 7/19/2018 |
4.5.6 | 2,671,857 | 5/29/2018 |
4.5.5 | 698,082 | 5/25/2018 |
4.5.4 | 2,585,718 | 5/5/2018 |
4.5.3 | 1,376,784 | 4/16/2018 |
4.5.2 | 889,698 | 4/6/2018 |
4.5.1 | 274,646 | 4/3/2018 |
4.5.0 | 5,583,869 | 3/25/2018 |
4.4.13 | 727,881 | 2/27/2018 |
4.4.12 | 6,004,751 | 8/8/2017 |
4.4.11 | 1,698,534 | 6/17/2017 |
4.4.10 | 379,185 | 5/31/2017 |
4.4.9 | 980,584 | 5/5/2017 |
4.4.8 | 162,719 | 4/28/2017 |
4.4.7 | 109,034 | 4/25/2017 |
4.4.6 | 308,345 | 4/15/2017 |
4.4.5 | 449,173 | 3/28/2017 |
4.4.4 | 545,326 | 3/10/2017 |
4.4.3 | 680,718 | 2/17/2017 |
4.4.2 | 380,773 | 2/6/2017 |
4.4.1 | 1,313,100 | 12/24/2016 |
4.4.0 | 287,852 | 12/14/2016 |
4.3.11 | 977,250 | 11/7/2016 |
4.3.10 | 697,647 | 10/11/2016 |
4.3.9 | 457,590 | 9/18/2016 |
4.3.8 | 619,687 | 9/5/2016 |
4.3.7 | 597,409 | 8/6/2016 |
4.3.6 | 259,471 | 7/23/2016 |
4.3.5 | 817,205 | 6/12/2016 |
4.3.4 | 716,241 | 5/16/2016 |
4.3.3 | 374,541 | 4/28/2016 |
4.3.2 | 88,842 | 4/26/2016 |
4.3.1 | 107,631 | 4/20/2016 |
4.3.0 | 136,781 | 4/16/2016 |
4.2.3 | 1,623,765 | 12/20/2015 |
4.2.2 | 294,971 | 12/2/2015 |
4.2.1 | 430,555 | 11/21/2015 |
4.2.0 | 386,748 | 10/24/2015 |
4.1.2 | 763,779 | 9/20/2015 |
4.1.1 | 156,233 | 9/12/2015 |
4.1.0 | 203,903 | 8/31/2015 |
4.0.1 | 765,922 | 6/18/2015 |
4.0.0 | 955,234 | 6/9/2015 |
3.2.1 | 818,644 | 4/24/2015 |
3.2.0 | 1,432,554 | 1/2/2015 |
3.1.0 | 1,447,502 | 6/24/2014 |
3.0.0 | 218,184 | 6/2/2014 |
2.1.0 | 1,646,482 | 10/10/2013 |
2.0.1.2 | 927,727 | 4/8/2013 |
2.0.0.2000 | 1,705,681 | 7/18/2011 |
1.0.0.505 | 451,335 | 1/7/2011 |
List of major changes in NLog 5.0: https://nlog-project.org/2022/05/16/nlog-5-0-finally-ready.md
Full changelog: https://github.com/NLog/NLog/blob/master/CHANGELOG.md
For all config options and platform support, check https://nlog-project.org/config/