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

No packages depend on NLog.

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.7 0 12/09/2025
6.0.6 0 11/09/2025
6.0.5 0 10/09/2025
6.0.4 0 09/11/2025
6.0.3 0 08/10/2025
6.0.2 0 07/20/2025
6.0.1 0 06/27/2025
6.0.0 0 06/21/2025
5.5.1 0 07/18/2025
5.5.0 0 05/29/2025
5.4.0 0 02/02/2025
5.3.4 0 09/12/2024
5.3.3 0 08/12/2024
5.3.2 0 04/30/2024
5.3.1 0 04/27/2024
5.2.8 0 12/29/2023
5.2.7 0 11/28/2023
5.2.6 0 11/19/2023
5.2.5 0 10/15/2023
5.2.4 0 09/06/2023
5.2.3 0 08/05/2023
5.2.2 0 07/04/2023
5.2.1 0 07/01/2023
5.2.0 0 05/30/2023
5.1.5 0 05/25/2023
5.1.4 0 04/29/2023
5.1.3 0 03/28/2023
5.1.2 0 02/17/2023
5.1.1 0 12/29/2022
5.1.0 0 11/27/2022
5.0.5 0 10/25/2022
5.0.4 0 09/01/2022
5.0.3 0 08/31/2022
5.0.2 0 08/12/2022
5.0.1 0 06/12/2022
5.0.0 0 05/16/2022
4.7.15 0 03/26/2022
4.7.14 0 02/23/2022
4.7.13 0 12/05/2021
4.7.12 0 10/24/2021
4.7.11 0 08/18/2021
4.7.10 0 05/14/2021
4.7.9 0 03/24/2021
4.7.8 0 02/25/2021
4.7.7 0 01/20/2021
4.7.6 0 12/06/2020
4.7.5 0 09/27/2020
4.7.4 0 08/22/2020
4.7.3 0 07/31/2020
4.7.2 0 05/18/2020
4.7.1 0 05/15/2020
4.7.0 0 03/20/2020
4.6.8 0 11/04/2019
4.6.7 0 08/25/2019
4.6.6 0 07/14/2019
4.6.5 0 06/14/2019
4.6.4 0 05/28/2019
4.6.3 0 04/30/2019
4.6.2 0 04/02/2019
4.6.1 0 03/29/2019
4.6.0 1 01/19/2026
4.5.11 0 11/06/2018
4.5.10 0 09/17/2018
4.5.9 0 08/24/2018
4.5.8 0 08/05/2018
4.5.7 0 07/19/2018
4.5.6 0 05/29/2018
4.5.5 0 05/25/2018
4.5.4 0 05/05/2018
4.5.3 0 04/16/2018
4.5.2 0 04/06/2018
4.5.1 0 04/03/2018
4.5.0 0 03/25/2018
4.4.13 0 02/27/2018
4.4.12 0 08/08/2017
4.4.11 0 06/17/2017
4.4.10 0 05/31/2017
4.4.9 0 05/05/2017
4.4.8 0 04/28/2017
4.4.7 0 04/25/2017
4.4.6 0 04/15/2017
4.4.5 0 03/28/2017
4.4.4 0 03/10/2017
4.4.3 0 02/17/2017
4.4.2 0 02/06/2017
4.4.1 0 12/24/2016
4.4.0 0 12/14/2016
4.3.11 0 11/07/2016
4.3.10 0 10/11/2016
4.3.9 0 09/18/2016
4.3.8 0 09/05/2016
4.3.7 0 08/06/2016
4.3.6 0 07/23/2016
4.3.5 0 06/12/2016
4.3.4 0 05/16/2016
4.3.3 0 04/28/2016
4.3.2 0 04/26/2016
4.3.1 0 04/20/2016
4.3.0 0 04/16/2016
4.2.3 0 12/20/2015
4.2.2 0 12/02/2015
4.2.1 0 11/21/2015
4.2.0 0 10/24/2015
4.1.2 0 09/20/2015
4.1.1 0 09/12/2015
4.1.0 0 08/31/2015
4.0.1 0 06/18/2015
4.0.0 0 06/09/2015
3.2.1 0 04/24/2015
3.2.0 0 01/02/2015
3.1.0 0 06/24/2014
3.0.0 0 06/02/2014
2.1.0 0 10/10/2013
2.0.1.2 0 04/08/2013
2.0.0.2000 0 07/18/2011
1.0.0.505 0 01/07/2011