Table of Contents

Class DynamicLoggerProvider

Namespace
Steeltoe.Logging
Assembly
Steeltoe.Logging.Abstractions.dll

Provides access to ILogger categories and their minimum log levels and enables to decorate log messages.

public abstract class DynamicLoggerProvider : IDynamicLoggerProvider, ILoggerProvider, IDisposable
Inheritance
DynamicLoggerProvider
Implements
Derived
Inherited Members

Constructors

DynamicLoggerProvider(ILoggerProvider, LogLevelsConfiguration, IEnumerable<IDynamicMessageProcessor>)

Initializes a new instance of the DynamicLoggerProvider class.

protected DynamicLoggerProvider(ILoggerProvider innerLoggerProvider, LogLevelsConfiguration logLevelsConfiguration, IEnumerable<IDynamicMessageProcessor> messageProcessors)

Parameters

innerLoggerProvider ILoggerProvider

The ILoggerProvider to wrap. Used to create new ILogger instances.

logLevelsConfiguration LogLevelsConfiguration

The minimum log levels per logger category, originating from configuration.

messageProcessors IEnumerable<IDynamicMessageProcessor>

The processors to decorate log messages with.

Properties

InnerLoggerProvider

protected ILoggerProvider InnerLoggerProvider { get; }

Property Value

ILoggerProvider

MessageProcessors

protected IReadOnlyCollection<IDynamicMessageProcessor> MessageProcessors { get; }

Property Value

IReadOnlyCollection<IDynamicMessageProcessor>

Methods

CreateLogger(string)

Creates a new ILogger instance.

public ILogger CreateLogger(string categoryName)

Parameters

categoryName string

The category name for messages produced by the logger.

Returns

ILogger

The instance of ILogger that was created.

CreateMessageProcessingLogger(string)

protected virtual MessageProcessingLogger CreateMessageProcessingLogger(string categoryName)

Parameters

categoryName string

Returns

MessageProcessingLogger

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

Dispose(bool)

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

GetFilter(string)

protected LoggerFilter GetFilter(string categoryName)

Parameters

categoryName string

Returns

LoggerFilter

GetLogLevels()

Gets the list of logger categories in use, with their minimum log levels.

public ICollection<DynamicLoggerState> GetLogLevels()

Returns

ICollection<DynamicLoggerState>

RefreshConfiguration(LogLevelsConfiguration)

Refreshes the internally-tracked minimum log levels per logger category, originating from configuration.

public void RefreshConfiguration(LogLevelsConfiguration configuration)

Parameters

configuration LogLevelsConfiguration

The updated minimum log levels per logger category.

SetLogLevel(string, LogLevel?)

Changes the minimum log level for the specified logger category and its descendants.

public void SetLogLevel(string categoryName, LogLevel? minLevel)

Parameters

categoryName string

The logger category name, which is typically a namespace or fully-qualified type name. An empty string represents the default minimum log level.

minLevel LogLevel?

The minimum log level to activate, or null to reset the level.