07.4.3.18.1 — Runtime Event Skeleton Architecture

This commit is contained in:
2026-05-09 18:21:02 +03:00
parent 3181ac680c
commit 7e5ecc2ed9
22 changed files with 641 additions and 99 deletions

View File

@@ -7,22 +7,19 @@ from aiogram.client.default import DefaultBotProperties
from src.bootstrap.logging import setup_logging
from src.core.config import load_settings
from src.notifications.targets import NotificationTargetRegistry
from src.storage.schema import init_schema
from src.telegram.routers import setup_routers
from src.trading.journal.service import JournalService
def create_app() -> tuple[Bot, Dispatcher]:
# загружаем настройки приложения
settings = load_settings()
# настраиваем logging
setup_logging(settings.log_level)
# сервис журнала
journal = JournalService()
# инициализация схемы БД
try:
init_schema()
except Exception as exc:
@@ -40,7 +37,6 @@ def create_app() -> tuple[Bot, Dispatcher]:
pass
raise
# лог старта приложения
try:
journal.log_info(
"app_start",
@@ -52,24 +48,17 @@ def create_app() -> tuple[Bot, Dispatcher]:
},
)
except Exception:
# журнал не должен ломать запуск приложения
pass
# здесь позже можно инициализировать stream/cache сервисы:
# init_market_cache()
# init_market_stream()
# init_auto_trade_runner()
# создаем Telegram Bot
bot = Bot(
token=settings.bot_token,
default=DefaultBotProperties(parse_mode=settings.bot_parse_mode),
)
# создаем Dispatcher
NotificationTargetRegistry.set_bot(bot)
dispatcher = Dispatcher()
# подключаем routers
setup_routers(dispatcher)
return bot, dispatcher

View File

@@ -1,3 +1,5 @@
# app/src/bootstrap/logging.py
from __future__ import annotations
import logging
@@ -7,4 +9,4 @@ def setup_logging(log_level: str) -> None:
logging.basicConfig(
level=getattr(logging, log_level.upper(), logging.INFO),
format="%(asctime)s | %(levelname)s | %(name)s | %(message)s",
)
)