Spaces:
Running
Running
Commit
·
3c7f84c
1
Parent(s):
cf1d34e
Fix usage tracker to read user from session
Browse files🐛 Critical Fix:
- Usage tracker was only reading user from request.state.user
- After removing auth middleware, this was always None
- Now usage tracker also checks request.session for user data
- This should fix 'anonymous' user tracking after successful login
This was the root cause of users appearing as anonymous
even after successful OAuth authentication.
backend/middleware/usage_tracker.py
CHANGED
|
@@ -45,8 +45,13 @@ class UsageTrackingMiddleware(BaseHTTPMiddleware):
|
|
| 45 |
"""Track API usage and log user activity."""
|
| 46 |
start_time = time.time()
|
| 47 |
|
| 48 |
-
# Get user info from request state (set by auth middleware)
|
| 49 |
user = getattr(request.state, "user", None)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 50 |
user_id = user.get("username", "anonymous") if user else "anonymous"
|
| 51 |
user_auth_method = user.get("auth_method", "none") if user else "none"
|
| 52 |
|
|
|
|
| 45 |
"""Track API usage and log user activity."""
|
| 46 |
start_time = time.time()
|
| 47 |
|
| 48 |
+
# Get user info from request state (set by auth middleware) or session
|
| 49 |
user = getattr(request.state, "user", None)
|
| 50 |
+
if not user:
|
| 51 |
+
try:
|
| 52 |
+
user = request.session.get("user")
|
| 53 |
+
except (AttributeError, AssertionError):
|
| 54 |
+
user = None
|
| 55 |
user_id = user.get("username", "anonymous") if user else "anonymous"
|
| 56 |
user_auth_method = user.get("auth_method", "none") if user else "none"
|
| 57 |
|