from __future__ import annotations import logging from logging.handlers import RotatingFileHandler import uvicorn from crypto_spot_bot.config import load_settings from crypto_spot_bot.dashboard import create_app def main() -> None: settings = load_settings() settings.log_path.parent.mkdir(parents=True, exist_ok=True) logging.basicConfig( level=logging.INFO, format="%(asctime)s %(levelname)s %(name)s %(message)s", handlers=[ RotatingFileHandler( settings.log_path, maxBytes=10 * 1024 * 1024, backupCount=5, encoding="utf-8", ), logging.StreamHandler(), ], ) app = create_app(settings) uvicorn.run(app, host=settings.host, port=settings.port) if __name__ == "__main__": main()