Spaces:
No application file
No application file
| """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) | |