duck.logging.handler

Handler module for intercepting Duck logs.

Module Contents

Functions

emit

Emit a log message to all matching handlers.

register_handler

Register a log handler.

remove_handler

Remove a registered log handler.

Data

HANDLERS

_HANDLER_LOCK

API

duck.logging.handler.HANDLERS: dict[int | None, set[collections.abc.Callable[[int, str], None]]]

None

duck.logging.handler._HANDLER_LOCK

‘Lock(…)’

duck.logging.handler.emit(level: int, message: str)[source]

Emit a log message to all matching handlers.

duck.logging.handler.register_handler(callback: collections.abc.Callable[[int, str], None], levels: Optional[Union[collections.abc.Iterable[int], int]] = None)[source]

Register a log handler.

Parameters:
  • callback – The callback to register.

  • levels – Log levels to listen for. If None or empty, listens for all levels.

duck.logging.handler.remove_handler(callback: collections.abc.Callable[[int, str], None], levels: collections.abc.Iterable[int] | None = None)[source]

Remove a registered log handler.

Parameters:
  • callback – The callback to remove.

  • levels – Log levels to remove from. If None or empty, removes from all levels.