feat: add logs

This commit is contained in:
2026-05-12 18:21:17 +03:00
parent 16aaae841e
commit 5795ade06e
4 changed files with 29 additions and 2 deletions

View File

@@ -4,6 +4,7 @@ from src.application.contracts import IJwtService
from src.application.domain.exceptions import InvalidTokenException,NotAuthenticatedException
from src.application.domain.dto import AccessTokenPayload, AuthContext
from src.presentation.dependencies import get_jwt_service
from src.presentation.dependencies.logger import get_logger
def _extract_access_token(request: Request) -> str | None:
@@ -25,12 +26,17 @@ async def require_access_token(
request: Request,
jwt_service: IJwtService = Depends(get_jwt_service),
) -> AuthContext:
logger = get_logger()
logger.info(f'JWT auth started path={request.url.path}')
token = _extract_access_token(request)
if not token:
logger.warning(f'JWT auth failed path={request.url.path} reason=missing_token')
raise NotAuthenticatedException()
payload: AccessTokenPayload = await jwt_service.decode_access_token(token)
if payload.type != 'access':
logger.warning(f'JWT auth failed path={request.url.path} user_id={payload.sub} reason=invalid_token_type type={payload.type}')
raise InvalidTokenException('Invalid token type')
logger.info(f'JWT auth completed path={request.url.path} user_id={payload.sub} sid={payload.sid}')
return AuthContext(user_id=payload.sub, sid=payload.sid, token=payload)