Open sandboxFocus

Class LoggingContextLocalConfiguration

Stores the context-sensitive configuration, i.e. the configuration that is specific to the current execution context.

Inheritance
LoggingContextLocalConfiguration
Namespace: PostSharp.Patterns.Diagnostics
Assembly: PostSharp.Patterns.Diagnostics.dll
Syntax
public class LoggingContextLocalConfiguration
Remarks

User code can switch from one LoggingContextLocalConfiguration to another for the current context using the WithContextLocalConfiguration(LoggingContextLocalConfiguration) method. The current instance is exposed by the CurrentContextLocalConfiguration property. The default instance is exposed by the DefaultContextLocalConfiguration.

Unlike LoggingVerbosityConfiguration, this class is lightweight and can be allocated at high frequency. However, it is recommended that only a few instances of the LoggingVerbosityConfiguration class are created.

Constructors

Name Description
LoggingContextLocalConfiguration(LoggingVerbosityConfiguration)

Initializes a new LoggingContextLocalConfiguration.

Properties

Name Description
IsEnabled

Determines whether logging is enabled for all contexts using this configuration. This is typically used to disable logging for the current transaction. If it is disabled, the default configuration is used.

IsReadOnly

Determines whether the current LoggingContextLocalConfiguration is read-only. A LoggingContextLocalConfiguration is frozen when it's assigned to a caching backend.

Verbosity

Gets the configuration of the minimal LogLevel that's still being logged for the current LoggingContextLocalConfiguration.

Methods

Name Description
Clone()

Returns a shallow copy of the current instance, sharing the same value of the Verbosity property.

Freeze()

Prevents changes in the current instance. This method is called when the LoggingContextLocalConfiguration is passed to the WithContextLocalConfiguration(LoggingContextLocalConfiguration) method.