34 lines
846 B
Python
34 lines
846 B
Python
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()
|