Skip to content

Commit c533136

Browse files
committed
Add updated logging config
1 parent f8bcfa6 commit c533136

File tree

3 files changed

+16
-11
lines changed

3 files changed

+16
-11
lines changed

app/core/logging_config.py

+14-10
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111

1212
class RequestResponseLoggingMiddleware(BaseHTTPMiddleware):
13-
async def dispatch(self, request: Request, call_next: Any) -> Response:
13+
async def dispatch(self, request: Request, call_next: Any) -> Response | Any:
1414
# Generate unique request ID
1515
request_id = request.headers.get("X-Request-ID", "unknown")
1616

@@ -71,15 +71,14 @@ async def _log_response(self, response: Response, request_id: str) -> None:
7171

7272
def setup_logging() -> None:
7373
# Create logs directory if it doesn't exist
74-
log_dir = "data/logs" # os.path.dirname(settings.LOG_FILE)
74+
log_dir = "data/logs"
7575
if not os.path.exists(log_dir):
7676
os.makedirs(log_dir, exist_ok=True)
7777

78-
# os.makedirs("data/logs", exist_ok=True)
79-
8078
# Set up the main logger
8179
logger = logging.getLogger("foxhole")
8280
logger.setLevel(settings.LOG_LEVEL)
81+
logger.propagate = False
8382

8483
# Create formatters
8584
detailed_formatter = logging.Formatter(settings.LOG_FORMAT)
@@ -89,42 +88,47 @@ def setup_logging() -> None:
8988
console_handler.setLevel(settings.LOG_LEVEL)
9089
console_handler.setFormatter(detailed_formatter)
9190

92-
# File handler for general logs (10MB max size, 5 backup files)
91+
# File handler for general logs
9392
file_handler = RotatingFileHandler(
94-
"data/logs/foxhole.log", maxBytes=10 * 1024 * 1024, backupCount=5 # 10MB
93+
"data/logs/foxhole.log", maxBytes=10 * 1024 * 1024, backupCount=5
9594
)
9695
file_handler.setLevel(logging.DEBUG)
9796
file_handler.setFormatter(detailed_formatter)
9897

9998
# API specific handler
10099
api_handler = RotatingFileHandler(
101-
"data/logs/api.log", maxBytes=10 * 1024 * 1024, backupCount=5 # 10MB
100+
"data/logs/api.log", maxBytes=10 * 1024 * 1024, backupCount=5
102101
)
103102
api_handler.setLevel(logging.INFO)
104103
api_handler.setFormatter(detailed_formatter)
105104

106105
# Database specific handler
107106
db_handler = RotatingFileHandler(
108-
"data/logs/db.log", maxBytes=10 * 1024 * 1024, backupCount=5 # 10MB
107+
"data/logs/db.log", maxBytes=10 * 1024 * 1024, backupCount=5
109108
)
110109
db_handler.setLevel(logging.DEBUG)
111110
db_handler.setFormatter(detailed_formatter)
112111

113112
# Set up API logger
114113
api_logger = logging.getLogger("foxhole.api")
114+
api_logger.setLevel(logging.INFO)
115+
api_logger.propagate = False
115116
api_logger.addHandler(api_handler)
116117

117118
# Set up DB logger
118119
db_logger = logging.getLogger("foxhole.db")
120+
db_logger.setLevel(logging.DEBUG)
121+
db_logger.propagate = False
119122
db_logger.addHandler(db_handler)
120123

121124
# Add handlers to main logger
122125
logger.addHandler(console_handler)
123126
logger.addHandler(file_handler)
124127

125128
# Set up SQLAlchemy logging
126-
logging.getLogger("sqlalchemy.engine").setLevel(logging.INFO)
127-
logging.getLogger("sqlalchemy.engine").addHandler(db_handler)
129+
sqlalchemy_logger = logging.getLogger("sqlalchemy.engine")
130+
sqlalchemy_logger.setLevel(logging.INFO)
131+
sqlalchemy_logger.addHandler(db_handler)
128132

129133
# Set specific loggers to ERROR level only
130134
logging.getLogger("uvicorn.access").setLevel(logging.ERROR)

app/routers/auth.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
from app.core.rate_limit import limiter
2525
from app.core.config import settings
2626

27-
logger = logging.getLogger(__name__)
27+
logger = logging.getLogger("foxhole.auth")
2828

2929
router = APIRouter()
3030

main.py

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
app = FastAPI()
2323
# Add middlewares
24+
# app.add_middleware(RequestResponseLoggingMiddleware)
2425
app.add_middleware(RequestIDMiddleware)
2526
app.add_middleware(RateLimitInfoMiddleware)
2627

0 commit comments

Comments
 (0)