Implements FastAPI backend with ML model support for energy trading, including price prediction models and RL-based battery trading policy. Features dashboard, trading, backtest, and settings API routes with WebSocket support for real-time updates.
37 lines
862 B
Python
37 lines
862 B
Python
import os
|
|
from loguru import logger
|
|
import sys
|
|
|
|
|
|
def get_logger(name: str):
|
|
"""Get a configured logger instance."""
|
|
return logger.bind(name=name)
|
|
|
|
|
|
def setup_logger():
|
|
"""Setup loguru logger configuration."""
|
|
logger.remove()
|
|
|
|
log_format = (
|
|
"<green>{time:YYYY-MM-DD HH:mm:ss}</green> | "
|
|
"<level>{level: <8}</level> | "
|
|
"<cyan>{name}</cyan>:<cyan>{function}</cyan>:<cyan>{line}</cyan> | "
|
|
"<level>{message}</level>"
|
|
)
|
|
|
|
logger.add(
|
|
sys.stdout,
|
|
format=log_format,
|
|
level=os.getenv("LOG_LEVEL", "INFO"),
|
|
colorize=True,
|
|
)
|
|
|
|
logger.add(
|
|
"logs/app.log",
|
|
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} | {message}",
|
|
level="DEBUG",
|
|
rotation="10 MB",
|
|
retention="7 days",
|
|
compression="zip",
|
|
)
|