Spaces:
Sleeping
Sleeping
Download src/datalake/logger.py from OxonTechnologies/CSS_EDA_Dashboard: direct link, hf CLI and curl.
- Browser
- Download file 824 Bytes
-
https://huggingface.co/spaces/OxonTechnologies/CSS_EDA_Dashboard/resolve/main/src/datalake/logger.py
- Command line
-
hf download hf://spaces/OxonTechnologies/CSS_EDA_Dashboard/src/datalake/logger.py
-
curl -L -o logger.py https://huggingface.co/spaces/OxonTechnologies/CSS_EDA_Dashboard/resolve/main/src/datalake/logger.py
824 Bytes
| """ | |
| Structured logging utilities for the datalake package. | |
| """ | |
| import logging | |
| from typing import Optional | |
| def setup_logger(name: str, level: str = "INFO") -> logging.Logger: | |
| """ | |
| Initialize logger with structured output. | |
| Args: | |
| name: Logger module name | |
| level: Logging level (INFO, DEBUG, WARNING, ERROR) | |
| Returns: | |
| Configured logger instance | |
| """ | |
| logger = logging.getLogger(name) | |
| # Avoid adding duplicate handlers | |
| if logger.handlers: | |
| return logger | |
| handler = logging.StreamHandler() | |
| formatter = logging.Formatter( | |
| '%(asctime)s - %(name)s - %(levelname)s - %(message)s' | |
| ) | |
| handler.setFormatter(formatter) | |
| logger.addHandler(handler) | |
| logger.setLevel(getattr(logging, level.upper(), logging.INFO)) | |
| return logger | |