lenskit.logging.LoggingConfig#

class lenskit.logging.LoggingConfig#

Configuration for LensKit logging.

This class is intended as a convenience for LensKit applications to set up a useful logging and progress reporting configuration; if unconfigured, LensKit will emit its logging messages directly to structlog and/or logging, which you can configure in any way you wish.

Stability:
Caller (see Stability Levels).
level: int = 20#
stream: Literal['full', 'simple', 'json'] = 'full'#
progress_backend: Literal['notebook', 'rich'] | None = None#
file: pathlib.Path | None = None#
file_level: int | None = None#
file_format: LogFormat = 'json'#
property effective_level: int#
Return type:

int

set_stream_mode(mode)#

Configure the standard error stream mode.

Parameters:

mode (Literal['full', 'simple', 'json'])

set_verbose(verbose=True)#

Enable verbose logging.

Note

It is better to only call this method if your application’s verbose option is provided, rather than passing your verbose option to it, to allow the LK_LOG_LEVEL environment variable to apply in the absence of a configuration option.

Parameters:

verbose (bool | int) – The level of verbosity. Values of True or 1 turn on DEBUG-level logs, and 2 or greater turns on tracing.

set_log_file(path, level=None, format='json')#

Configure a log file.

Parameters:
apply()#

Apply the configuration.