Spaces:
No application file
No application file
File size: 738 Bytes
7cb9c5a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | """Structured logging helper.
Usage:
from src.utils.logging import get_logger
logger = get_logger(__name__)
logger.info("message")
"""
import logging
import sys
_CONFIGURED = False
def _configure_root() -> None:
global _CONFIGURED
if _CONFIGURED:
return
handler = logging.StreamHandler(sys.stdout)
formatter = logging.Formatter(
fmt="%(asctime)s | %(levelname)-7s | %(name)s | %(message)s",
datefmt="%Y-%m-%d %H:%M:%S",
)
handler.setFormatter(formatter)
root = logging.getLogger()
root.setLevel(logging.INFO)
root.addHandler(handler)
_CONFIGURED = True
def get_logger(name: str) -> logging.Logger:
_configure_root()
return logging.getLogger(name)
|