fix(#781): 替换print为logging,统一日志输出规范 #804
Executable → Regular
+11
-8
@@ -4,6 +4,7 @@ Redis Session 存储
|
||||
"""
|
||||
|
||||
import json
|
||||
import logging
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from typing import Optional
|
||||
|
||||
@@ -12,6 +13,8 @@ from redis import Redis
|
||||
|
||||
from packages.domain.auth.session_store import SessionStorePort
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class RedisConfig:
|
||||
"""Redis 配置"""
|
||||
@@ -147,7 +150,7 @@ class SessionStore(SessionStorePort):
|
||||
|
||||
return True
|
||||
except Exception as e:
|
||||
print(f"Failed to save session: {e}")
|
||||
logger.warning(f"Redis session save failed: {e}")
|
||||
return False
|
||||
|
||||
def get_session(self, session_id: str) -> Optional[dict]:
|
||||
@@ -168,7 +171,7 @@ class SessionStore(SessionStorePort):
|
||||
return json.loads(data)
|
||||
return None
|
||||
except Exception as e:
|
||||
print(f"Failed to get session: {e}")
|
||||
logger.warning(f"Redis session get failed: {e}")
|
||||
return None
|
||||
|
||||
def get_session_by_refresh_token(self, refresh_token: str) -> Optional[dict]:
|
||||
@@ -192,7 +195,7 @@ class SessionStore(SessionStorePort):
|
||||
# 再获取完整的 session 数据
|
||||
return self.get_session(session_id)
|
||||
except Exception as e:
|
||||
print(f"Failed to get session by refresh_token: {e}")
|
||||
logger.warning(f"Redis session get by refresh failed: {e}")
|
||||
return None
|
||||
|
||||
def get_refresh_token(self, session_id: str) -> Optional[str]:
|
||||
@@ -209,7 +212,7 @@ class SessionStore(SessionStorePort):
|
||||
refresh_token_key = self._refresh_token_key(session_id)
|
||||
return self.redis.get(refresh_token_key)
|
||||
except Exception as e:
|
||||
print(f"Failed to get refresh_token: {e}")
|
||||
logger.warning(f"Redis refresh token get failed: {e}")
|
||||
return None
|
||||
|
||||
def update_last_active(self, session_id: str) -> bool:
|
||||
@@ -238,7 +241,7 @@ class SessionStore(SessionStorePort):
|
||||
|
||||
return False
|
||||
except Exception as e:
|
||||
print(f"Failed to update last active: {e}")
|
||||
logger.warning(f"Redis session update active failed: {e}")
|
||||
return False
|
||||
|
||||
def delete_session(self, session_id: str) -> bool:
|
||||
@@ -278,7 +281,7 @@ class SessionStore(SessionStorePort):
|
||||
|
||||
return True
|
||||
except Exception as e:
|
||||
print(f"Failed to delete session: {e}")
|
||||
logger.warning(f"Redis session delete failed: {e}")
|
||||
return False
|
||||
|
||||
def get_user_sessions(self, user_id: str) -> list[dict]:
|
||||
@@ -303,7 +306,7 @@ class SessionStore(SessionStorePort):
|
||||
|
||||
return sessions
|
||||
except Exception as e:
|
||||
print(f"Failed to get user sessions: {e}")
|
||||
logger.warning(f"Redis user sessions list failed: {e}")
|
||||
return []
|
||||
|
||||
def delete_all_user_sessions(self, user_id: str) -> int:
|
||||
@@ -330,7 +333,7 @@ class SessionStore(SessionStorePort):
|
||||
|
||||
return count
|
||||
except Exception as e:
|
||||
print(f"Failed to delete all user sessions: {e}")
|
||||
logger.warning(f"Redis user sessions delete failed: {e}")
|
||||
return 0
|
||||
|
||||
def session_exists(self, session_id: str) -> bool:
|
||||
|
||||
Executable → Regular
+5
-2
@@ -2,6 +2,7 @@
|
||||
密码重置 Use Case
|
||||
"""
|
||||
|
||||
import logging
|
||||
import secrets
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from typing import Optional
|
||||
@@ -9,6 +10,8 @@ from typing import Optional
|
||||
from packages.adapters.smtp import get_email_service
|
||||
from packages.application.auth.password_hasher import password_hasher, password_validator
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class RequestPasswordResetRequest:
|
||||
"""请求密码重置"""
|
||||
@@ -82,10 +85,10 @@ class RequestPasswordResetUseCase:
|
||||
)
|
||||
|
||||
if not success:
|
||||
print(f"Failed to send password reset email: {error}")
|
||||
logger.warning(f"Password reset email failed: {error}")
|
||||
# 不返回错误,避免暴露用户存在性
|
||||
except Exception as e:
|
||||
print(f"Email service error: {e}")
|
||||
logger.error(f"Email service error: {e}", exc_info=True)
|
||||
|
||||
return True, None
|
||||
|
||||
|
||||
Executable → Regular
+5
-2
@@ -2,6 +2,7 @@
|
||||
用户注册 Use Case
|
||||
"""
|
||||
|
||||
import logging
|
||||
import secrets
|
||||
from datetime import datetime, timezone
|
||||
from typing import Optional
|
||||
@@ -11,6 +12,8 @@ from packages.adapters.smtp import get_email_service
|
||||
from packages.application.auth.password_hasher import password_hasher, password_validator
|
||||
from packages.domain.entities import User
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class RegisterUserRequest:
|
||||
"""注册请求"""
|
||||
@@ -136,9 +139,9 @@ class RegisterUserUseCase:
|
||||
email_sent = success
|
||||
|
||||
if not success:
|
||||
print(f"Failed to send verification email: {error}")
|
||||
logger.warning(f"Verification email failed: {error}")
|
||||
except Exception as e:
|
||||
print(f"Email service error: {e}")
|
||||
logger.error(f"Email service error: {e}", exc_info=True)
|
||||
|
||||
# 10. 返回响应(即使邮件发送失败,用户也已创建)
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user