Compare commits

..

3 Commits

Author SHA1 Message Date
Dejan Ribarovski
a76138614b Merge 8974561308 into d593f7a994 2025-10-17 15:14:17 +02:00
8974561308 add debug logging 2025-10-17 15:14:10 +02:00
2f275ef605 fix(infrastructure): add frontend URL to CORS 2025-10-17 12:58:11 +02:00

View File

@@ -1,5 +1,10 @@
import logging
import os
from datetime import datetime
from fastapi import Depends, FastAPI from fastapi import Depends, FastAPI
from fastapi.middleware.cors import CORSMiddleware from fastapi.middleware.cors import CORSMiddleware
from starlette.requests import Request
from app.models.user import User from app.models.user import User
@@ -17,6 +22,7 @@ fastApi.add_middleware(
allow_origins=[ allow_origins=[
"http://localhost:5173", "http://localhost:5173",
"http://127.0.0.1:5173", "http://127.0.0.1:5173",
os.getenv("FRONTEND_DOMAIN_SCHEME", "")
], ],
allow_credentials=True, allow_credentials=True,
allow_methods=["*"], allow_methods=["*"],
@@ -27,6 +33,28 @@ fastApi.include_router(auth_router)
fastApi.include_router(categories_router) fastApi.include_router(categories_router)
fastApi.include_router(transactions_router) fastApi.include_router(transactions_router)
logging.basicConfig(filename='app.log', level=logging.INFO, format='%(asctime)s %(message)s')
@fastApi.middleware("http")
async def log_traffic(request: Request, call_next):
start_time = datetime.now()
response = await call_next(request)
process_time = (datetime.now() - start_time).total_seconds()
client_host = request.client.host
log_params = {
"request_method": request.method,
"request_url": str(request.url),
"request_size": request.headers.get("content-length"),
"request_headers": dict(request.headers),
"request_body": await request.body(),
"response_status": response.status_code,
"response_size": response.headers.get("content-length"),
"response_headers": dict(response.headers),
"process_time": process_time,
"client_host": client_host
}
logging.info(str(log_params))
return response
fastApi.include_router( fastApi.include_router(
fastapi_users.get_oauth_router( fastapi_users.get_oauth_router(
get_oauth_provider("MojeID"), get_oauth_provider("MojeID"),