NLog Versions Save

NLog - Advanced and Structured Logging for Various .NET Platforms

v5.2.0

11 months ago

Improvements

  • #5191 ConfigurationItemFactory annotated for trimming and obsoleted CreateInstance-delegate (#5191) (@snakefoot)
  • #5216 Refactor - Apply ThrowIfNull and ThrowIfNullOrEmpty (#5216) (@nih0n)

See also: NLog v5.2 without trim warnings, and obsoleted methods.

v5.1.5

11 months ago

Improvements

  • #5229 TargetWithContext - Fixed ScopeContext capture when multiple wrappers (#5229) (@snakefoot)
  • #5227 DefaultJsonSerializer - Cache length when validating json encoding (#5227) (@snakefoot)
  • #5220 FileTarget - Suppress exceptions from retrieving FileInfo.CreationTimeUtc (#5220) (@snakefoot)
  • #5219 LoggingConfigurationParser - Handle adding Target without name (#5219) (@snakefoot)
  • #5215 Log4jXmlEvent - Fixed removal of invalid XML chars (#5215) (@snakefoot)
  • #5210 LoggingConfiguration - Expand NLog config variables for Logging Rules WriteTo (#5210) (@snakefoot)

v5.1.4

1 year ago

Improvements

  • #5207 FileTarget - Recover from file-deleted when same archive-folder (#5207) (@snakefoot)
  • #5201 NLog.xsd schema with support for variables section (#5201) (@michaelplavnik)
  • #5200 JsonLayout - Added IndentJson for pretty format (#5200) (@nih0n)
  • #5197 Log4jXmlEvent - Fix dummy-Namespace when using IncludeScopeProperties (#5197) (@snakefoot)
  • #5195 ConfigurationItemFactory - Handle concurrent registration with single lock (#5195) (@snakefoot)
  • #5193 AsyncTaskTarget - Include task exception on completed event (#5193) (@snakefoot)
  • #5186 ScopeContext - Uniform initial small array sizes (#5186) (@snakefoot)

v5.1.3

1 year ago

Improvements

  • #5174 LoggingRule - FinalMinLevel with Layout support (#5174) (@Aaronmsv)
  • #5177 MailTarget - Added support for email message headers (#5177) (@snakefoot)
  • #5175 ScopeContext - Replace recursive lookup with enumeration (#5175) (@snakefoot)
  • #5168 MethodCallTarget - Compile Method Invoke as Expression Trees (#5168) (@snakefoot)
  • #5165 PaddingLayoutRendererWrapper - Avoid using Insert for reusable StringBuilder (#5165) (@snakefoot)
  • #5159 Json serializer with ISpanFormattable support for decimal + double (#5168) (@snakefoot)

v5.1.2

1 year ago

Improvements

  • #5157 FileTarget - Archive Dynamic FileName ordering ignore case (#5157) (@snakefoot)
  • #5150 EventLogTarget - EventId with LogEvent Property Lookup by default (#5150) (@snakefoot)
  • #5148 ReplaceLayoutRendererWrapper - SearchFor is required, and ReplaceWith optional (#5148) (@snakefoot)
  • #5146 SpecialFolderLayoutRenderer - Fallback for Windows Nano (#5146) (@snakefoot)
  • #5144 NetworkTarget emit LogEventDropped event on NetworkError (#5144) (@ShadowDancer)
  • #5141 AsyncTaskTarget - Dynamic wait time after TaskTimeoutSeconds has expired (#5141) (@snakefoot)
  • #5140 ConfigurationItemFactory - Handle concurrent registration with single lock (#5140) (@snakefoot)

v5.1.1

1 year ago

Improvements

  • #5134 XmlLayout - Added Layout-option to XmlElement to match XmlAttribute (#5134) (@snakefoot)
  • #5126 JsonLayout - Avoid NullReferenceException when JsonAttribute has no Layout (#5126) (@snakefoot)
  • #5122 ConfigurationItemFactory - Handle concurrent registration of extensions (#5122) (@snakefoot)
  • #5121 LogEventInfo with custom MessageFormatter now generates FormattedMessage upfront (#5121) (@snakefoot)
  • #5118 AsyncTargetWrapper - Reduce overhead when scheduling instant background writer thread (#5118) (@snakefoot)
  • #5115 ConfigurationItemFactory - Faster scan of NLog types with filter on IsPublic / IsClass (#5115) (@snakefoot)

v5.1.0

1 year ago

Improvements

  • #5102 MessageTemplates ValueFormatter with support for ISpanFormattable (#5102) (@snakefoot)
  • #5101 Add LogEventDropped handler to the NetworkTarget (#5101) (@ShadowDancer)
  • #5108 Improving InternalLogger output when adding NLog targets to configuration (#5108) (@snakefoot)
  • #5110 ObjectPathRendererWrapper - Added public method TryGetPropertyValue (#5110) (@snakefoot)

v5.0.5

1 year ago

Improvements

  • #5092 InternalLogger - LogFile expand filepath variables (#5092) (@RyanGaudion)
  • #5090 ReplaceNewLines - Support Replacement with newlines (#5090) (@Orace)
  • #5086 ScopeIndent LayoutRenderer (#5086) (@snakefoot)
  • #5085 Introduced TriLetter as LevelFormat (Trc, Dbg, Inf, Wrn, Err, Ftl) (#5085) (@snakefoot)
  • #5078 LogFactory.Setup - Added support for RegisterLayout and validate NLog types (#5078) (@snakefoot)
  • #5076 AutoFlushTargetWrapper - Fix race-condition that makes unit-tests unstable (#5076) (@snakefoot)
  • #5073 Include error-message from inner-exception when layout contains unknown layoutrenderer (#5073) (@snakefoot)
  • #5065 ObjectReflectionCache - Skip serializing System.Net.IPAddress (#5065) (@snakefoot)
  • #5060 ObjectReflectionCache - Skip reflection of delegate-objects (#5060) (@snakefoot)
  • #5057 OnException + OnHasProperties - Added Else-option (#5057) (@snakefoot)
  • #5056 LogEventBuilder - Added Log(Type wrapperType) for custom Logger wrapper (#5056) (@snakefoot)

v5.0.4

1 year ago

Fixes

  • #5051 Fixed embedded resource with ILLink.Descriptors.xml to avoid IL2007 (#5051) (@snakefoot)

v5.0.3

1 year ago

Improvements

  • #5034 Added embedded resource with ILLink.Descriptors.xml to skip AOT (#5034) (@snakefoot)
  • #5035 Layout Typed that can handle LogEventInfo is null (#5035) (@snakefoot)
  • #5036 JsonLayout - Fix output for Attributes with IncludeEmptyValue=false and Encode=false (#5036) (@snakefoot)