Logger module

class rebasehelper.logger.ColorizingStreamHandler(stream=None)[source]
colors: Dict[str, Dict[int, Dict[str, str | None]]] = {'dark': {10: {'bg': 'default', 'fg': 'brightblack', 'style': None}, 11: {'bg': 'default', 'fg': 'red', 'style': None}, 12: {'bg': 'default', 'fg': 'brightblack', 'style': None}, 20: {'bg': 'default', 'fg': 'default', 'style': None}, 25: {'bg': 'default', 'fg': 'green', 'style': None}, 26: {'bg': 'default', 'fg': 'yellow', 'style': None}, 27: {'bg': 'default', 'fg': 'red', 'style': None}, 30: {'bg': 'default', 'fg': 'yellow', 'style': None}, 40: {'bg': 'default', 'fg': 'red', 'style': 'bold'}, 50: {'bg': 'red', 'fg': 'white', 'style': 'bold'}}, 'light': {10: {'bg': 'default', 'fg': 'brightblack', 'style': None}, 11: {'bg': 'default', 'fg': 'red', 'style': None}, 12: {'bg': 'default', 'fg': 'brightblack', 'style': None}, 20: {'bg': 'default', 'fg': 'default', 'style': None}, 25: {'bg': 'default', 'fg': 'green', 'style': None}, 26: {'bg': 'default', 'fg': 'blue', 'style': None}, 27: {'bg': 'default', 'fg': 'red', 'style': None}, 30: {'bg': 'default', 'fg': 'blue', 'style': None}, 40: {'bg': 'default', 'fg': 'red', 'style': 'bold'}, 50: {'bg': 'red', 'fg': 'white', 'style': 'bold'}}}
emit(record)[source]

Emit a record.

If a formatter is specified, it is used to format the record. The record is then written to the stream with a trailing newline. If exception information is present, it is formatted using traceback.print_exception and appended to the stream. If the stream has an ‘encoding’ attribute, it is used to determine how to do the output to the stream.

set_terminal_background(background)[source]
terminal_background: str = 'dark'
class rebasehelper.logger.CustomLogger(name, level=0)[source]
HEADING: int = 26
IMPORTANT: int = 27
SUCCESS: int = 25
TRACE: int = 11
VERBOSE: int = 12
class rebasehelper.logger.LoggerHelper[source]

Helper class for setting up a logger.

static add_file_handler(logger: Logger, path: str, formatter: Formatter | None = None, level: int | None = None) FileHandler | None[source]

Adds file handler to the given logger.

Parameters:
  • logger – Logger object to add the handler to.

  • path – Path to a log file.

  • formatter – Formatter object used to format logged messages.

  • level – Severity threshold.

Returns:

Created file handler instance or None if creation failed.

static add_stream_handler(logger: Logger, level: int | None = None, formatter: Formatter | None = None) ColorizingStreamHandler[source]

Adds stream handler to the given logger.

Parameters:
  • logger – Logger object to add the handler to.

  • level – Severity threshold.

  • formatter – Formatter object used to format logged messages.

Returns:

Created stream handler instance.

classmethod create_file_handlers(results_dir: str) List[FileHandler][source]

Creates rebase-helper file handlers.

Parameters:

results_dir – Path to rebase-helper-results directory.

Returns:

List of created file handler instances.

classmethod create_stream_handlers() Tuple[ColorizingStreamHandler, ColorizingStreamHandler][source]
memory_handler: MemoryHandler | None = None
classmethod remove_file_handlers(handlers: List[FileHandler]) None[source]

Removes rebase-helper file handlers.

Parameters:

handlers – List of file handlers to remove.

classmethod remove_memory_handler() None[source]
classmethod setup_memory_handler() None[source]
class rebasehelper.logger.MemoryHandler[source]

BufferingHandler with infinite capacity

buffer: List[LogRecord]
replay_into(target: Handler) None[source]
shouldFlush(record: LogRecord) bool[source]

Should the handler flush its buffer?

Returns true if the buffer is up to capacity. This method can be overridden to implement custom flushing strategies.