Simple .NET logging with fully-structured events
Version 2.7.0 was skipped due to a versioning mistake.
LoggerSinkConfiguration.Wrap()
accepting LoggingLevelSwitch
https://
project and icon URLs{Properties:j}
work consistently with the console sinkLogger.None
LogContext
build.sh
exit codebyte[]
smaller than 1 KBLoggerSinkConfiguration.Wrap()
affecting WriteTo.Async()
LoggerConfiguration
to be garbage collected after logger is createdLogContext
remoting issue on .NET Framework 4.5LogContext.Suspend()
and LogContext.Reset()
to pass or drop context from child tasksLoggingLevelSwitch
in key-value/<appSettings>
settingsMinimumLevel.Override()
is used in a sub-loggerILogger.ForContext()
/Log.ForContext()
<appSettings>
settings (last-in wins)<appSettings>
valuesPlus build/documentation items #988, #994, #996, #1019, #842, #1042, #1050, #1055, #1063.
LoggerSinkConfiguration.Wrap()
{Properties}
in output templatesLogContext.Clone()
and LogContext.Push(ILogEventEnricher)
ValueTuple<>
values{Message:l}
(unquoted string) and {Message:j}
(JSON structure) support in output templatesPlus multiple build/test/configuration improvements.
NaN
and infinity valuesLog
static methods to match ILogger
methodsAssemblyInformationalVersion
filter
directivesPlus build and test coverage work in #821, #824, #896, etc.
RemotingException
via LogContext
ICustomFormatter
supportaudit-to
in key-value settings#782 - provide Destructure.ByTransformingWhere() #779 - capture additional parameters even when template is malformed #798 - fix overload selection in KeyValueSettings #815 - allow level to be lowered by overrides, in addition to being raised
Compatible with .NET 4.5+ and .NET Core 1.0+.