.NET Standard 1.3 .NET Framework 3.5
There is a newer version of this package available.
See the version list below for details.
Install-Package NLog -Version 4.6.0
dotnet add package NLog --version 4.6.0
<PackageReference Include="NLog" Version="4.6.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NLog --version 4.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NLog, 4.6.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install NLog as a Cake Addin
#addin nuget:?package=NLog&version=4.6.0

// Install NLog as a Cake Tool
#tool nuget:?package=NLog&version=4.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

NLog is a logging platform for .NET with rich log routing and management capabilities.
NLog supports traditional logging, structured logging and the combination of both.

Supported platforms:

- .NET Framework 3.5, 4, 4.5, 4.6, 4.7 & 4.8
- .NET Standard 1.3+ and 2.0+;
- .NET Framework 4 client profile
- Xamarin Android, Xamarin iOs
- UWP
- Windows Phone 8
- Silverlight 4 and 5
- Mono 4

For ASP.NET Core, check: NLog.Web.Asp.NET Core

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 net40-client net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid monoandroid44
MonoMac monomac
MonoTouch monotouch
Silverlight sl4 sl5
Tizen tizen30 tizen40 tizen60
Universal Windows Platform uap uap10.0
Windows Phone wp8 wp81
Xamarin.iOS xamarinios xamarinios10
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2.2K)

Showing the top 5 NuGet packages that depend on NLog:

Package Downloads
NLog.Extensions.Logging The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

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 The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

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 The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

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 The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

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 The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

NLog.Extended.dll provides MSMQ target and AppSetting renderer

GitHub repositories (279)

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
rocksdanister/lively
Free and open-source software that allows users to set animated desktop wallpapers and screensavers.
Version Downloads Last updated
5.0.1 78,501 6/12/2022
5.0.0 309,197 5/16/2022
5.0.0-rc2 106,125 1/19/2022
5.0.0-rc1 79,105 12/20/2021
5.0.0-preview.3 46,927 10/26/2021
5.0.0-preview.2 11,820 10/3/2021
5.0.0-preview.1 12,465 8/25/2021
4.7.15 897,222 3/26/2022
4.7.14 617,287 2/23/2022
4.7.13 1,934,858 12/5/2021
4.7.12 1,394,018 10/24/2021
4.7.11 4,561,963 8/18/2021
4.7.10 4,162,046 5/14/2021
4.7.9 3,867,262 3/24/2021
4.7.8 2,076,592 2/25/2021
4.7.7 1,860,070 1/20/2021
4.7.6 3,399,412 12/6/2020
4.7.5 3,990,534 9/27/2020
4.7.4 3,114,319 8/22/2020
4.7.3 1,163,244 7/31/2020
4.7.2 7,606,463 5/18/2020
4.7.1 100,256 5/15/2020
4.7.0 3,958,684 3/20/2020
4.6.8 12,522,151 11/4/2019
4.6.7 9,218,908 8/25/2019
4.6.6 2,429,287 7/14/2019
4.6.5 3,145,561 6/14/2019
4.6.4 2,309,209 5/28/2019
4.6.3 2,225,066 4/30/2019
4.6.2 1,778,242 4/2/2019
4.6.1 245,054 3/29/2019
4.6.0 724,082 3/21/2019
4.5.11 12,718,848 11/6/2018
4.5.10 4,953,574 9/17/2018
4.5.9 1,303,251 8/24/2018
4.5.8 1,857,776 8/5/2018
4.5.7 1,015,054 7/19/2018
4.5.6 2,709,800 5/29/2018
4.5.5 707,587 5/25/2018
4.5.4 2,643,817 5/5/2018
4.5.3 1,402,052 4/16/2018
4.5.2 905,697 4/6/2018
4.5.1 277,913 4/3/2018
4.5.0 5,763,421 3/25/2018
4.4.13 737,153 2/27/2018
4.4.12 6,073,720 8/8/2017
4.4.11 1,723,934 6/17/2017
4.4.10 384,170 5/31/2017
4.4.9 990,694 5/5/2017
4.4.8 164,361 4/28/2017
4.4.7 110,874 4/25/2017
4.4.6 311,477 4/15/2017
4.4.5 453,902 3/28/2017
4.4.4 553,274 3/10/2017
4.4.3 686,827 2/17/2017
4.4.2 385,560 2/6/2017
4.4.1 1,343,755 12/24/2016
4.4.0 291,463 12/14/2016
4.3.11 988,171 11/7/2016
4.3.10 705,036 10/11/2016
4.3.9 461,164 9/18/2016
4.3.8 624,955 9/5/2016
4.3.7 603,022 8/6/2016
4.3.6 261,810 7/23/2016
4.3.5 825,539 6/12/2016
4.3.4 723,161 5/16/2016
4.3.3 380,640 4/28/2016
4.3.2 89,845 4/26/2016
4.3.1 108,189 4/20/2016
4.3.0 139,045 4/16/2016
4.2.3 1,649,884 12/20/2015
4.2.2 299,042 12/2/2015
4.2.1 437,771 11/21/2015
4.2.0 391,483 10/24/2015
4.1.2 775,705 9/20/2015
4.1.1 157,758 9/12/2015
4.1.0 206,003 8/31/2015
4.0.1 774,515 6/18/2015
4.0.0 974,685 6/9/2015
3.2.1 828,518 4/24/2015
3.2.0 1,451,567 1/2/2015
3.1.0 1,463,898 6/24/2014
3.0.0 219,684 6/2/2014
2.1.0 1,692,449 10/10/2013
2.0.1.2 937,263 4/8/2013
2.0.0.2000 1,739,917 7/18/2011
1.0.0.505 471,048 1/7/2011

## All changes NLog 4.6

### Features

#### Main Feature

* Database target: support for DbType for parameters (including SqlDbType) - #2363 + #2899 + #3085 + #3091 (@hubo0831, @ObikeDev, @sorvis, @304NotModified, @snakefoot)

#### XML config features

* Added support for constant variable in level attributes - #2709  (level, minlevel, etc) (@304NotModified)
* Added defaultAction option for <filter> - #2848 (@304NotModified)
* Rules now support multiple '*' and '?' wildcards and in any position - #3098   (@beppemarazzi)
* Added Support ${currentdir}, ${basedir}, ${tempdir} and environment variables in internalLogFile value - #3031 + #3092  (@snakefoot)

#### New targets, layouts and layout renderers

* Added XmlLayout - Render LogEventInfo.Properties as XML - #2670 + #3014 (@snakefoot)
* Added ${db-null} layout renderer - #2849  (@304NotModified)
* Added New ${substring}, ${left} & ${right} layoutrenderer wrappers - #2907  (@304NotModified)
* Added ${HostName} Layout Renderer for full computer DNS name - #3071  (@amitsaha)
* Added ${AppSetting} Layout Renderer (app.config + web.config) moved from NLog.Extended for NetFramework - #3053  (@snakefoot)
* Added noRawValue layout wrapper - #3165  (@snakefoot)

#### Additions to targets, layouts and layout renderers

* AsyncTargetWrapper: added LogEventDropped + LogEventQueueGrow events - #2610 (@Pomoinytskyi)
* NetworkTarget - Support for SSL & TLS - #2678 (@snakefoot)
* JsonLayout: support for System.Dynamic-objects - #2902  (@304NotModified)
* AsyncTaskTarget: Added support for BatchSize and RetryCount  - #2909  (@snakefoot)
* ColoredConsoleTarget - Added EnableAnsiOutput option (VS Code support) - #3018  (@jp7677 + @snakefoot)
* Added IncludeGdc property in JsonLayout - #3050  (@casperc89)
* TargetWithContext - Support for PropertyType using IRawValue-interface - #3060  (@snakefoot)

### Enhancements

* JsonLayout includes Type-property when rendering Exception-object - #2989 (@snakefoot)
* LoggingConfigurationParser - Extracted from XmlLoggingConfiguration - #2891 (Prepare for appsettings.json)  (@snakefoot)
* Added support for complex objects in MDLC and NDLC on Net45 - #2910  (@snakefoot)
* PerformanceCounter - Improve behavior for CPU usage calculation - #2918  (@snakefoot)
* TargetWithContext - Include all properties even when duplicate names - #2941  (@snakefoot)
* Updated resharper annotations for better validation - #2974 (@imanushin)
* Improve default reflection support on .NET Core Native - #2979 (@snakefoot)
* EventLogTarget with better support for MaximumKilobytes configuration - #3017 (@Coriolanuss)
* Added Xamarin PreserveAttribute for the entire Assembly to improve AOT-linking - #3039 (@snakefoot)
* Create snupkg packages and use portable PDB - #3045 (@snakefoot)
* KeepFileOpen + ConcurrentWrites on Xamarin + UWP - #3079 - #3048 (@304NotModified)
* WebService Target allow custom override of SoapAction-header for Soap11 - #3082 + #3100 (@AlexeyRokhin)
* AsyncTaskTarget - Fixed unwanted delay caused by slow writer
* Various refactorings (19 pull requests) (@beppemarazzi, @304NotModified, @snakefoot)

### Performance

* AsyncTargetWrapper using ConcurrentQueue for .NET Core 2 for better thread-concurrency - #2650 (@snakefoot)
* AsyncTargetWrapper - TimeToSleepBetweenBatches changed default to 1ms - #2890 (@snakefoot)
* InternalLogger performance optimization when LogLevel.Off - #2897 (@snakefoot)
* InternalLogger LogLevel changes to LogLevel.Off by default unless being used. - #2935 (@snakefoot)
* CsvLayout - Allocation optimizations and optional skip quoting-check for individual columns. - #2934 (@snakefoot)
* MappedDiagnosticsLogicalContext - SetScoped with IReadOnlyList (Prepare for MEL BeginScope) - #2949 (@snakefoot)
* IRenderString-interface to improve performance for Layout with single LayoutRenderer - #2973 (@snakefoot)
* StringBuilderPool - Reduce memory overhead until required - #3103 (@snakefoot)

**LibLog Breaking change**

* [damianh/LibLog#181](https://github.com/damianh/LibLog/pull/181) - Sub-components using LibLog ver. 5.0.3 (or newer) will now use MDLC + NDLC (Instead of MDC + NDC) when detecting application is using NLog ver. 4.6. Make sure to update NLog.config to match this change. Make sure that all sub-components have upgraded to LibLog ver. 5.0.3 (or newer) if they make use of `OpenNestedContext` or `OpenMappedContext`.

See also [NLog 4.6 Milestone](https://github.com/NLog/NLog/milestone/44?closed=1)

Full changelog: https://github.com/NLog/NLog/blob/master/CHANGELOG.md

For all config options and platform support, check https://nlog-project.org/config/