MdmLogger
Structured logging with file output, size-based rotation, and multiple log levels.
-
class MdmLogger(debug: bool = False, quiet: bool = False, output_path: Path | str | None = None, max_bytes: int = 104857600)[source]
Bases: object
- Parameters:
-
-
log_startup(script_name: str, version: str | None = None) → None[source]
Log script startup information.
- Parameters:
script_name (str)
version (str | None)
- Return type:
None
-
update_log(level: str, message: str, startup: bool = False, exit_code: int | None = None) → None[source]
Log a message with the specified level and optionally exit.
- Parameters:
level (str) – The log level (info, warn, error, debug)
message (str) – The message to log
startup (bool, defaults to False) – If True, adds new line to first log message
exit_code (int | None, optional) – If provided, exit with this code after logging, defaults to None
- Return type:
None
-
debug(message: str, exit_code: int | None = None) → None[source]
Log a DEBUG message.
- Parameters:
message (str)
exit_code (int | None)
- Return type:
None
-
info(message: str, startup: bool | None = False, exit_code: int | None = None) → None[source]
Log an INFO message.
- Parameters:
message (str)
startup (bool | None)
exit_code (int | None)
- Return type:
None
-
warn(message: str, exit_code: int | None = None) → None[source]
Log a WARN message.
- Parameters:
message (str)
exit_code (int | None)
- Return type:
None
-
error(message: str, exit_code: int | None = None) → None[source]
Log an ERROR message.
- Parameters:
message (str)
exit_code (int | None)
- Return type:
None
-
get_log_path() → Path | None[source]
Return the log file path if configured.
- Return type:
Path | None
-
flush() → None[source]
Ensure all pending writes are flushed to disk.
- Return type:
None
-
log_exception(message: str, exc: Exception, exit_code: int | None = None) → None[source]
Log an exception with full traceback.
- Parameters:
-
- Return type:
None