NLog 4.6.0

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: https://www.nuget.org/packages/NLog.Web.Asp.NET Core

Showing the top 20 packages that depend on NLog.

Packages Downloads
Castle.Core
Core of the castle project
6

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 - #2848 (@304NotModified)
  • Rules now support multiple '*' and '?' wildcards and in any position - #3098 (@beppemarazzi)
  • Added Support $, $, $ 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 $ layout renderer - #2849 (@304NotModified)
  • Added New $, $ & $ layoutrenderer wrappers - #2907 (@304NotModified)
  • Added $ Layout Renderer for full computer DNS name - #3071 (@amitsaha)
  • Added $ 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 - 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

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

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

.NET Framework 3.5

  • No dependencies.

.NET Framework 4.0

  • No dependencies.

.NET Framework 4.5

  • No dependencies.

.NET Standard 1.3

.NET Standard 1.5

MonoAndroid 4.4

  • No dependencies.

Silverlight 4.0

  • No dependencies.

Silverlight 5.0

  • No dependencies.

WindowsPhone 8.0

  • No dependencies.

Xamarin.iOS 1.0

  • No dependencies.

.NET Standard 2.0

  • No dependencies.

Version Downloads Last updated
6.0.4 3 09/19/2025
6.0.3 2 09/19/2025
6.0.2 3 07/31/2025
6.0.1 3 07/31/2025
6.0.0 2 09/19/2025
6.0.0-rc4 3 07/31/2025
6.0.0-rc3 4 07/24/2025
6.0.0-rc2 4 06/03/2025
6.0.0-rc1 4 06/03/2025
6.0.0-preview1 4 06/03/2025
5.5.1 2 09/19/2025
5.5.0 3 06/04/2025
5.4.0 5 02/27/2025
5.3.4 5 02/27/2025
5.3.3 4 02/27/2025
5.3.2 5 02/27/2025
5.3.1 5 02/27/2025
5.2.8 6 02/27/2025
5.2.7 5 02/27/2025
5.2.6 5 02/27/2025
5.2.5 4 02/27/2025
5.2.4 5 02/27/2025
5.2.3 5 02/27/2025
5.2.2 4 02/27/2025
5.2.1 5 02/27/2025
5.2.0 5 02/27/2025
5.1.5 4 02/27/2025
5.1.4 5 02/27/2025
5.1.3 5 02/27/2025
5.1.2 5 02/27/2025
5.1.1 4 02/27/2025
5.1.0 5 02/27/2025
5.0.5 4 02/27/2025
5.0.4 5 02/27/2025
5.0.3 5 02/27/2025
5.0.2 5 02/27/2025
5.0.1 5 02/27/2025
5.0.0 4 02/27/2025
4.7.15 4 02/27/2025
4.7.14 4 02/27/2025
4.7.13 4 02/27/2025
4.7.12 4 02/27/2025
4.7.11 4 02/27/2025
4.7.10 4 02/27/2025
4.7.9 5 02/27/2025
4.7.8 5 02/27/2025
4.7.7 4 02/27/2025
4.7.6 5 02/27/2025
4.7.5 5 02/27/2025
4.7.4 4 02/27/2025
4.7.3 5 02/27/2025
4.7.2 5 02/27/2025
4.7.1 5 02/27/2025
4.7.0 6 02/27/2025
4.6.8 5 02/27/2025
4.6.7 5 02/27/2025
4.6.6 4 02/27/2025
4.6.5 5 02/27/2025
4.6.4 4 02/27/2025
4.6.3 5 02/27/2025
4.6.2 5 02/27/2025
4.6.1 5 02/27/2025
4.6.0 6 02/27/2025
4.5.11 4 02/27/2025
4.5.10 4 02/27/2025
4.5.9 5 02/27/2025
4.5.8 5 02/27/2025
4.5.7 5 02/27/2025
4.5.6 5 02/27/2025
4.5.5 4 02/27/2025
4.5.4 4 02/27/2025
4.5.3 5 02/27/2025
4.5.2 5 02/27/2025
4.5.1 5 02/27/2025
4.5.0 5 02/27/2025
4.4.13 4 02/27/2025
4.4.12 4 02/27/2025
4.4.11 4 02/27/2025
4.4.10 4 02/27/2025
4.4.9 4 02/27/2025
4.4.8 4 02/27/2025
4.4.7 4 02/27/2025
4.4.6 4 02/27/2025
4.4.5 4 02/27/2025
4.4.4 4 02/27/2025
4.4.3 4 02/27/2025
4.4.2 4 02/27/2025
4.4.1 4 02/27/2025
4.4.0 4 02/27/2025
4.3.11 4 02/27/2025
4.3.10 4 02/27/2025
4.3.9 5 02/27/2025
4.3.8 5 02/27/2025
4.3.7 6 02/27/2025
4.3.6 5 02/27/2025
4.3.5 5 02/27/2025
4.3.4 4 02/27/2025
4.3.3 4 02/27/2025
4.3.2 5 02/27/2025
4.3.1 5 02/27/2025
4.3.0 5 02/27/2025
4.2.3 5 02/27/2025
4.2.2 4 02/27/2025
4.2.1 5 02/27/2025
4.2.0 5 02/27/2025
4.1.2 6 02/27/2025
4.1.1 4 02/27/2025
4.1.0 5 02/27/2025
4.0.1 5 02/27/2025
4.0.0 4 02/27/2025
3.2.1 5 02/27/2025
3.2.0 4 02/27/2025
3.1.0 4 02/27/2025
3.0.0 4 02/27/2025
2.1.0 5 02/27/2025
2.0.1.2 4 02/27/2025
2.0.0.2000 4 02/27/2025
1.0.0.505 5 02/27/2025