Spaces:
Sleeping
Sleeping
| """Structured logging configuration.""" | |
| import logging | |
| import sys | |
| from typing import Optional | |
| def setup_logging(level: str = "INFO") -> None: | |
| """Configure structured logging for the application.""" | |
| root = logging.getLogger() | |
| root.setLevel(getattr(logging, level.upper(), logging.INFO)) | |
| if not root.handlers: | |
| handler = logging.StreamHandler(sys.stdout) | |
| formatter = logging.Formatter( | |
| "%(asctime)s | %(levelname)-8s | %(name)s | %(message)s", | |
| datefmt="%Y-%m-%d %H:%M:%S", | |
| ) | |
| handler.setFormatter(formatter) | |
| root.addHandler(handler) | |
| def get_logger(name: Optional[str] = None) -> logging.Logger: | |
| """Return a named logger.""" | |
| return logging.getLogger(name or "9xaipal") | |