INNER CODE UNIT · Python
lifespan
georgekhananaev/google-reviews-scraper-pro · api_server.py:58
async def lifespan(app: FastAPI):
"""Lifespan context manager for startup and shutdown"""
global job_manager
# Startup — structured logging
from modules.log_manager import setup_logging
setup_logging(
level=_config.get("log_level", "INFO"),
log_dir=_config.get("log_dir", "logs"),
log_file=_config.get("log_file", "scraper.log"),
)
log.info("Starting Google Reviews Scraper API Server")
job_manager = JobManager(max_concurrent_jobs=3)
db_path = _config.get("db_path", "reviews.db")
# Initialize API key DB. On failure, the dependency `require_api_key`
# falls through to reject all requests — failing closed is safer than