feat: логирование вебхука до БД + файловый лог с ротацией
All checks were successful
CI / test (push) Successful in 47s
All checks were successful
CI / test (push) Successful in 47s
- Каждый входящий POST /ingress/grafana: INFO-строка (status, кол-во алертов, первые лейблы) и DEBUG-блок с полным JSON телом (до 8КБ) — видно даже если БД упала с 500 - LOG_FILE в .env / env: RotatingFileHandler 10MB×5 файлов - LOG_LEVEL=debug теперь показывает полные тела вебхуков - basicConfig уровень DEBUG (uvicorn.access / asyncio приглушены) Made-with: Cursor
This commit is contained in:
@ -17,8 +17,10 @@ from onguard24.root_html import render_root_page
|
||||
from onguard24.status_snapshot import build as build_status
|
||||
from onguard24.ui_logs import router as logs_router
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logging.getLogger("httpx").setLevel(logging.WARNING)
|
||||
logging.getLogger("asyncio").setLevel(logging.WARNING)
|
||||
logging.getLogger("uvicorn.access").setLevel(logging.WARNING)
|
||||
log = logging.getLogger("onguard24")
|
||||
|
||||
|
||||
@ -34,8 +36,8 @@ def parse_addr(http_addr: str) -> tuple[str, int]:
|
||||
|
||||
@asynccontextmanager
|
||||
async def lifespan(app: FastAPI):
|
||||
install_log_handler(asyncio.get_event_loop())
|
||||
settings = get_settings()
|
||||
install_log_handler(asyncio.get_event_loop(), log_file=settings.log_file)
|
||||
pool = await create_pool(settings)
|
||||
bus = InMemoryEventBus()
|
||||
register_module_events(bus, pool)
|
||||
|
||||
Reference in New Issue
Block a user