log_utils

Define custom logger and logging wrapper function.

class log_utils.CustomLogger(ref)[source]

Bases: Logger

Custom logger.

Features:

  • Uses a custom DATA level.

  • Implements a stream handler (level INFO) and a file handler (level DATA).

  • Wraps messages before logging.

__init__(ref)[source]

Class constructor.

add_stream_handler()[source]

Add stream handler with level INFO to logger object.

add_file_handler(file_path)[source]

Add file handler with level DATA to logger object.

data(message, *args, **kwargs)[source]

Log message with DATA level.

results(message, *args, **kwargs)[source]

Log message with RESULTS level.

info(message, *args, **kwargs)[source]

Log message with INFO level (overrides parent class method).

warning(message, *args, **kwargs)[source]

Log message with WARNING level (overrides parent class method).

log_wrapper(level, message, *args, **kwargs)[source]

Wrap message and log lines as multiple messages.

log_utils.get_and_log(di, key, default, logger, key_alias=None)[source]

Get dict value and send log if the key is absent from the dict.

Parameters:
  • di (dictionary) – Dictionary to be probed.

  • key (str) – Requested key.

  • default (any) – Value returned if key is not in dict.

  • key_alias (str, optional) – Name to be logged instead of key if key is absent. The default is None.

Returns:

res – Value obtained from dict or default.

Return type:

any