assets_guardian.core.logging.logger

Functions

get_plugin_logger(source_name)

Returns a specific logger for a plugin, as a child of the root logger.

init_logging(logging_config)

Initializes logging configuration.

Classes

ColorFormatter([fmt,Β datefmt,Β style,Β ...])

Formatter that colors the levelname with ANSI codes (bold + color).

class assets_guardian.core.logging.logger.ColorFormatter(fmt=None, datefmt=None, style='%', validate=True, *, defaults=None)[source]

Bases: Formatter

Formatter that colors the levelname with ANSI codes (bold + color).

Initialize the formatter with specified format strings.

Initialize the formatter either with the specified format string, or a default as described above. Allow for specialized date formatting with the optional datefmt argument. If datefmt is omitted, you get an ISO8601-like (or RFC 3339-like) format.

Use a style parameter of β€˜%’, β€˜{’ or β€˜$’ to specify that you want to use one of %-formatting, str.format() ({}) formatting or string.Template formatting in your format string.

Changed in version 3.2: Added the style parameter.

format(record: LogRecord) str[source]

Format the specified record as text.

The record’s attribute dictionary is used as the operand to a string formatting operation which yields the returned string. Before formatting the dictionary, a couple of preparatory steps are carried out. The message attribute of the record is computed using LogRecord.getMessage(). If the formatting string uses the time (as determined by a call to usesTime(), formatTime() is called to format the event time. If there is exception information, it is formatted using formatException() and appended to the message.

assets_guardian.core.logging.logger.get_plugin_logger(source_name: str) Logger[source]

Returns a specific logger for a plugin, as a child of the root logger.

Using a hierarchy (assets_guardian.plugins.xxx) makes it easy to differentiate log origins while inheriting from the root logger configuration.

Example

logger = get_plugin_logger(β€˜gitlab’) logger.info(β€œStart collection”)

Parameters:

source_name (str) – Name of the plugin.

Returns:

Logger instance specific to the plugin.

Return type:

logging.Logger

assets_guardian.core.logging.logger.init_logging(logging_config: LoggingConfig) None[source]

Initializes logging configuration.

Creates a rotating file handler for logging, and a console handler with a configurable level.

Parameters:

logging_config – The logging configuration.