The new updates of partners and user
Made-with: Cursor
This commit is contained in:
28
eventify_logger/middleware.py
Normal file
28
eventify_logger/middleware.py
Normal file
@@ -0,0 +1,28 @@
|
||||
"""
|
||||
Request logging middleware - logs every HTTP request to EventifyLogger.
|
||||
"""
|
||||
from eventify_logger.services import log
|
||||
|
||||
|
||||
class EventifyLoggingMiddleware:
|
||||
"""Log each request (method, path, status) after response."""
|
||||
|
||||
def __init__(self, get_response):
|
||||
self.get_response = get_response
|
||||
|
||||
def __call__(self, request):
|
||||
response = self.get_response(request)
|
||||
try:
|
||||
status = getattr(response, "status_code", 0)
|
||||
if 500 <= status < 600:
|
||||
logger_type = "error"
|
||||
elif 400 <= status < 500:
|
||||
logger_type = "warning"
|
||||
else:
|
||||
logger_type = "info"
|
||||
message = f"{request.method} {request.path} -> {status}"
|
||||
logger_data = {"path": request.path, "method": request.method, "status_code": status}
|
||||
log(logger_type=logger_type, logger_message=message, request=request, logger_data=logger_data)
|
||||
except Exception:
|
||||
pass
|
||||
return response
|
||||
Reference in New Issue
Block a user