NLog.SetupLoadConfigurationExtensions
Extension methods to setup NLog LoggingConfiguration
public static ISetupConfigurationLoggingRuleBuilder FilterDynamic(this ISetupConfigurationLoggingRuleBuilder configBuilder, Filter filter, FilterResult? filterDefaultAction = default)
Apply dynamic filtering logic for advanced control of when to redirect output to target.
public static ISetupConfigurationLoggingRuleBuilder FilterDynamic(this ISetupConfigurationLoggingRuleBuilder configBuilder, Func<LogEventInfo, FilterResult> filterMethod, FilterResult? filterDefaultAction = default)
Apply dynamic filtering logic for advanced control of when to redirect output to target.
public static ISetupConfigurationLoggingRuleBuilder FilterDynamicIgnore(this ISetupConfigurationLoggingRuleBuilder configBuilder, Func<LogEventInfo, bool> filterMethod, bool final = false)
Dynamic filtering of LogEvent, where it will be ignored when matching filter-method-delegate
public static ISetupConfigurationLoggingRuleBuilder FilterDynamicLog(this ISetupConfigurationLoggingRuleBuilder configBuilder, Func<LogEventInfo, bool> filterMethod, bool final = false)
Dynamic filtering of LogEvent, where it will be logged when matching filter-method-delegate
public static ISetupConfigurationLoggingRuleBuilder FilterLevel(this ISetupConfigurationLoggingRuleBuilder configBuilder, LogLevel logLevel)
Apply fast filtering based on LogLevel. Include LogEvents with severity that equals logLevel.
public static ISetupConfigurationLoggingRuleBuilder FilterLevels(this ISetupConfigurationLoggingRuleBuilder configBuilder, LogLevel minLevel, LogLevel maxLevel)
Apply fast filtering based on LogLevel. Include LogEvents with severity between minLevel and maxLevel.
public static ISetupConfigurationLoggingRuleBuilder FilterMaxLevel(this ISetupConfigurationLoggingRuleBuilder configBuilder, LogLevel maxLevel)
Apply fast filtering based on LogLevel. Include LogEvents with same or less severity as maxLevel.
public static ISetupConfigurationLoggingRuleBuilder FilterMinLevel(this ISetupConfigurationLoggingRuleBuilder configBuilder, LogLevel minLevel)
Apply fast filtering based on LogLevel. Include LogEvents with same or worse severity as minLevel.
Returns first target registered
public static T FirstTarget<T>(this ISetupConfigurationTargetBuilder configBuilder) where T : Target
Returns first target registered with the specified type
public static ISetupConfigurationLoggingRuleBuilder ForLogger(this ISetupLoadConfigurationBuilder configBuilder, string loggerNamePattern = "*", string ruleName = null)
Defines LoggingRule for redirecting output from matching Logger to wanted targets.
public static ISetupConfigurationLoggingRuleBuilder ForLogger(this ISetupLoadConfigurationBuilder configBuilder, LogLevel minLevel, string loggerNamePattern = "*", string ruleName = null)
Defines LoggingRule for redirecting output from matching Logger to wanted targets.
public static ISetupConfigurationTargetBuilder ForTarget(this ISetupLoadConfigurationBuilder configBuilder, string targetName = null)
Defines LoggingRule for redirecting output from matching Logger to wanted targets.
public static ISetupLoadConfigurationBuilder SetGlobalContextProperty(this ISetupLoadConfigurationBuilder configBuilder, string name, string value)
Updates the dictionary GlobalDiagnosticsContext ${gdc:item=} with the name-value-pair
public static ISetupLoadConfigurationBuilder SetTimeSource(this ISetupLoadConfigurationBuilder configBuilder, TimeSource timeSource)
Configures the global time-source used for all logevents
public static ISetupConfigurationLoggingRuleBuilder TopRule(this ISetupConfigurationLoggingRuleBuilder configBuilder, bool insertFirst = true)
Move the LoggingRule to the top, to match before any of the existing LoggingRules
public static ISetupConfigurationTargetBuilder WithAsync(this ISetupConfigurationTargetBuilder configBuilder, AsyncTargetWrapperOverflowAction overflowAction = 1, int queueLimit = 10000, int batchSize = 200)
Applies AsyncTargetWrapper for existing Targets for asynchronous background writing
public static ISetupConfigurationTargetBuilder WithAutoFlush(this ISetupConfigurationTargetBuilder configBuilder, Func<LogEventInfo, bool> conditionMethod, bool? flushOnConditionOnly = default)
Applies AutoFlushTargetWrapper for existing Targets for flushing after conditional event
public static ISetupConfigurationTargetBuilder WithBuffering(this ISetupConfigurationTargetBuilder configBuilder, int? bufferSize = default, TimeSpan? flushTimeout = default, bool? slidingTimeout = default, BufferingTargetWrapperOverflowAction? overflowAction = default)
Applies BufferingTargetWrapper for existing Targets for throttled writing
public static ISetupConfigurationTargetBuilder WithFallback(this ISetupConfigurationTargetBuilder configBuilder, Target fallbackTarget, bool returnToFirstOnSuccess = true)
Applies FallbackGroupTarget for existing Targets to fallback on failure.
public static ISetupConfigurationTargetBuilder WithRetry(this ISetupConfigurationTargetBuilder configBuilder, int? retryCount = default, TimeSpan? retryDelay = default)
Applies RetryingTargetWrapper for existing Targets for retrying after failure
public static ISetupConfigurationTargetBuilder WithWrapper(this ISetupConfigurationTargetBuilder configBuilder, Func<Target, Target> wrapperFactory)
Applies target wrapper for existing Targets
public static ISetupConfigurationTargetBuilder WriteTo(this ISetupConfigurationTargetBuilder configBuilder, Target target)
Redirect output from matching Logger to the provided target
public static ISetupConfigurationTargetBuilder WriteTo(this ISetupConfigurationTargetBuilder configBuilder, Target[] targets)
Redirect output from matching Logger to the provided targets
public static ISetupConfigurationTargetBuilder WriteTo(this ISetupConfigurationTargetBuilder configBuilder, ISetupConfigurationTargetBuilder targetBuilder)
Redirect output from matching Logger to the provided targetBuilder
public static ISetupConfigurationTargetBuilder WriteToColoredConsole(this ISetupConfigurationTargetBuilder configBuilder, Layout layout = null, bool highlightWordLevel = false, Encoding encoding = null, bool stderr = false, bool detectConsoleAvailable = false, bool enableAnsiOutput = false)
Write to ColoredConsoleTarget and color log-messages based on LogLevel
public static ISetupConfigurationTargetBuilder WriteToConsole(this ISetupConfigurationTargetBuilder configBuilder, Layout layout = null, Encoding encoding = null, bool stderr = false, bool detectConsoleAvailable = false, bool forceWriteLine = false)
Write to ConsoleTarget
public static ISetupConfigurationTargetBuilder WriteToDebug(this ISetupConfigurationTargetBuilder configBuilder, Layout layout = null)
Write to DebugSystemTarget
public static void WriteToDebugConditional(this ISetupConfigurationTargetBuilder configBuilder, Layout layout = null)
Write to DebugSystemTarget (when DEBUG-build)
public static ISetupConfigurationTargetBuilder WriteToFile(this ISetupConfigurationTargetBuilder configBuilder, Layout fileName, Layout layout = null, Encoding encoding = null, LineEndingMode lineEnding = null, bool keepFileOpen = true, long archiveAboveSize = -1, int maxArchiveFiles = -1, int maxArchiveDays = -1)
Write to FileTarget
public static ISetupConfigurationTargetBuilder WriteToMethodCall(this ISetupConfigurationTargetBuilder configBuilder, Action<LogEventInfo, object[]> logEventAction, Layout[] layouts = null)
Write to MethodCallTarget
public static void WriteToNil(this ISetupConfigurationLoggingRuleBuilder configBuilder, LogLevel finalMinLevel = null)
Discard output from matching Logger, so it will not reach any following LoggingRules.