feat(backend): add rotating file logging to backend/app/log/

- Configure RotatingFileHandler in main.py (10MB per file, 5 backups)

- Log directory auto-created on startup

- Add backend/app/log/ to .gitignore

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
Woody 2026-04-23 14:09:48 +08:00
parent 2b68888838
commit e83a4708b5
2 changed files with 31 additions and 0 deletions

4
.gitignore vendored
View File

@ -45,6 +45,10 @@ Thumbs.db
# ChromaDB
chroma_db/
# Backend logs
backend/app/log/
*.log
# Uploads
backend/uploads/*
!backend/uploads/.gitkeep

View File

@ -1,9 +1,36 @@
import logging
import os
from logging.handlers import RotatingFileHandler
from pathlib import Path
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from app.routers import ingest, query
from app.core.config import get_settings
# Configure logging before app initialization
LOG_DIR = Path(__file__).parent / "log"
LOG_DIR.mkdir(exist_ok=True)
LOG_FILE = LOG_DIR / "backend.log"
LOG_FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
# Root logger configuration
logging.basicConfig(
level=logging.INFO,
format=LOG_FORMAT,
handlers=[
RotatingFileHandler(
LOG_FILE,
maxBytes=10 * 1024 * 1024, # 10MB per file
backupCount=5, # Keep 5 backup files
encoding="utf-8",
),
logging.StreamHandler(), # Also keep console output
],
)
settings = get_settings()
app = FastAPI(title="RAG Video Q&A", version="1.0.0")