Files
Giacomo Vercesi 12c180bfd9 pypeline: convert uses of pypeline_logger.log
The `pypeline_logger.log` functions should only be used to convey
information to the user, all other uses should fall under `debug_log`.
2025-12-17 11:58:46 +01:00

32 lines
786 B
Python

#
# This file is distributed under the MIT License. See LICENSE.md for details.
#
import sys
class Logger:
"""A simple logger that writes messages to stderr."""
def __init__(self, module_name: str, debug: bool = False) -> None:
self.module_name = module_name
self.debug = debug
def log(self, message: str) -> None:
sys.stderr.write(message + "\n")
def debug_log(self, message: str) -> None:
if self.debug:
sys.stderr.write(f"[{self.module_name}] {message}\n")
def get_logger(module_name: str, debug: bool = False) -> Logger:
"""Get a logger for a given module name."""
return Logger(module_name, debug)
pypeline_logger = get_logger("pypeline")
"""
The pre-initialized logger to use inside pypeline code.
"""