se migran los print de los módulos a logging con nivel explícito

pipeline_utils.log pasa a usar logging (parámetro severity) y los print de
pipeline, sapb1_manager, hana_manager, outlook_utilities, email_utilities y
main pasan a logger.info/warning/error, de modo que LOG_LEVEL filtre por
severidad. El texto del log no cambia. Se mantienen los print de CLI en
sunat_schema (__main__), tools/ y tests/.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GeorgeandClaude Sonnet 5.5 committed 2026-10-20 22:03:38 -05:00
1 parent 5ef9c90fc0
commit 3fa26e3ef6
11 files changed
+109 -79

No files matched your search

+15 -3
View File
@@ -1,6 +1,9 @@
"""Utilidades compartidas por los módulos del pipeline."""
import os
import logging
logger = logging.getLogger("pipeline")
def ruta_carpeta(subcarpeta: str) -> str:
@@ -8,8 +11,17 @@ def ruta_carpeta(subcarpeta: str) -> str:
return os.path.join(os.path.dirname(__file__), subcarpeta)
def log(msg: str, level: int = 1, last: bool = False) -> None:
"""Imprime ``msg`` con la indentación de árbol usada en el log del pipeline."""
def log(msg: str, level: int = 1, last: bool = False, severity: int = logging.INFO) -> None:
"""
Registra ``msg`` con la indentación de árbol usada en el log del pipeline.
Args:
msg: Mensaje a registrar.
level: Nivel de indentación del árbol (1-4).
last: True si es el último hijo de su rama (``└──`` en vez de ``├──``).
severity: Nivel de ``logging`` (``logging.WARNING``, ``logging.ERROR``…).
Por defecto ``logging.INFO``.
"""
branch = " └── " if last else " ├── "
pfx = {1: branch, 2: f" │ {branch}", 3: f" │ │ {branch}", 4: f" │ │ │ {branch}"}.get(level, branch)
print(f"{pfx}{msg}")
logger.log(severity, f"{pfx}{msg}")