Fix datetime
This commit is contained in:
@@ -6,7 +6,7 @@ Authentication service business logic - Complete implementation
|
||||
"""
|
||||
|
||||
import logging
|
||||
from datetime import datetime, timedelta
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from typing import Optional, Dict, Any
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from sqlalchemy import select, update
|
||||
@@ -64,7 +64,7 @@ class AuthService:
|
||||
UserRegisteredEvent(
|
||||
event_id=str(user.id),
|
||||
service_name="auth-service",
|
||||
timestamp=datetime.now(datetime.timezone.utc),
|
||||
timestamp=datetime.now(timezone.utc),
|
||||
data={
|
||||
"user_id": str(user.id),
|
||||
"email": user.email,
|
||||
@@ -114,7 +114,7 @@ class AuthService:
|
||||
await db.execute(
|
||||
update(User)
|
||||
.where(User.id == user.id)
|
||||
.values(last_login=datetime.now(datetime.timezone.utc))
|
||||
.values(last_login=datetime.now(timezone.utc))
|
||||
)
|
||||
await db.commit()
|
||||
|
||||
@@ -139,7 +139,7 @@ class AuthService:
|
||||
refresh_token_hash=security_manager.hash_token(refresh_token),
|
||||
ip_address=ip_address,
|
||||
user_agent=user_agent,
|
||||
expires_at=datetime.now(datetime.timezone.utc) + timedelta(days=settings.JWT_REFRESH_TOKEN_EXPIRE_DAYS)
|
||||
expires_at=datetime.now(timezone.utc) + timedelta(days=settings.JWT_REFRESH_TOKEN_EXPIRE_DAYS)
|
||||
)
|
||||
|
||||
db.add(session)
|
||||
@@ -152,7 +152,7 @@ class AuthService:
|
||||
UserLoginEvent(
|
||||
event_id=str(session.id),
|
||||
service_name="auth-service",
|
||||
timestamp=datetime.now(datetime.timezone.utc),
|
||||
timestamp=datetime.now(timezone.utc),
|
||||
data={
|
||||
"user_id": str(user.id),
|
||||
"email": user.email,
|
||||
|
||||
@@ -4,7 +4,7 @@ Training service business logic
|
||||
|
||||
import asyncio
|
||||
import logging
|
||||
from datetime import datetime, timedelta
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from typing import Dict, Any, List, Optional
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from sqlalchemy import select, update, and_
|
||||
@@ -46,8 +46,8 @@ class TrainingService:
|
||||
progress=0,
|
||||
current_step="Queued for training",
|
||||
requested_by=user_data.get("user_id"),
|
||||
training_data_from= datetime.now(datetime.timezone.utc) - timedelta(days=request.training_days),
|
||||
training_data_to= datetime.now(datetime.timezone.utc)
|
||||
training_data_from= datetime.now(timezone.utc) - timedelta(days=request.training_days),
|
||||
training_data_to= datetime.now(timezone.utc)
|
||||
)
|
||||
|
||||
db.add(training_job)
|
||||
@@ -64,7 +64,7 @@ class TrainingService:
|
||||
TrainingStartedEvent(
|
||||
event_id=str(uuid.uuid4()),
|
||||
service_name="training-service",
|
||||
timestamp= datetime.now(datetime.timezone.utc),
|
||||
timestamp= datetime.now(timezone.utc),
|
||||
data={
|
||||
"job_id": str(training_job.id),
|
||||
"tenant_id": tenant_id,
|
||||
@@ -206,7 +206,7 @@ class TrainingService:
|
||||
async def _execute_training(self, job_id: str, request: TrainingRequest, db: AsyncSession):
|
||||
"""Execute training job"""
|
||||
|
||||
start_time = datetime.now(datetime.timezone.utc)
|
||||
start_time = datetime.now(timezone.utc)
|
||||
|
||||
try:
|
||||
# Update job status
|
||||
@@ -229,7 +229,7 @@ class TrainingService:
|
||||
await self._save_trained_models(job_id, models_result, validation_result, db)
|
||||
|
||||
# Complete job
|
||||
duration = int(( datetime.now(datetime.timezone.utc) - start_time).total_seconds())
|
||||
duration = int(( datetime.now(timezone.utc) - start_time).total_seconds())
|
||||
await self._complete_job(job_id, models_result, validation_result, duration, db)
|
||||
|
||||
# Publish completion event
|
||||
@@ -239,7 +239,7 @@ class TrainingService:
|
||||
TrainingCompletedEvent(
|
||||
event_id=str(uuid.uuid4()),
|
||||
service_name="training-service",
|
||||
timestamp= datetime.now(datetime.timezone.utc),
|
||||
timestamp= datetime.now(timezone.utc),
|
||||
data={
|
||||
"job_id": str(job_id),
|
||||
"models_trained": len(models_result),
|
||||
@@ -263,7 +263,7 @@ class TrainingService:
|
||||
TrainingFailedEvent(
|
||||
event_id=str(uuid.uuid4()),
|
||||
service_name="training-service",
|
||||
timestamp= datetime.now(datetime.timezone.utc),
|
||||
timestamp= datetime.now(timezone.utc),
|
||||
data={
|
||||
"job_id": str(job_id),
|
||||
"error": str(e)
|
||||
@@ -281,7 +281,7 @@ class TrainingService:
|
||||
status=status,
|
||||
progress=progress,
|
||||
current_step=current_step,
|
||||
updated_at= datetime.now(datetime.timezone.utc)
|
||||
updated_at= datetime.now(timezone.utc)
|
||||
)
|
||||
)
|
||||
await db.commit()
|
||||
@@ -374,7 +374,7 @@ class TrainingService:
|
||||
status="completed",
|
||||
progress=100,
|
||||
current_step="Training completed successfully",
|
||||
completed_at= datetime.now(datetime.timezone.utc),
|
||||
completed_at= datetime.now(timezone.utc),
|
||||
duration_seconds=duration,
|
||||
models_trained=models_result,
|
||||
metrics=metrics,
|
||||
|
||||
@@ -4,7 +4,7 @@ Used across all microservices for consistent authentication
|
||||
"""
|
||||
|
||||
from jose import jwt
|
||||
from datetime import datetime, timedelta
|
||||
from datetime import datetime, timedelta, timezone
|
||||
from typing import Optional, Dict, Any
|
||||
import logging
|
||||
|
||||
@@ -22,9 +22,9 @@ class JWTHandler:
|
||||
to_encode = data.copy()
|
||||
|
||||
if expires_delta:
|
||||
expire = datetime.now(datetime.timezone.utc) + expires_delta
|
||||
expire = datetime.now(timezone.utc) + expires_delta
|
||||
else:
|
||||
expire = datetime.now(datetime.timezone.utc) + timedelta(minutes=30)
|
||||
expire = datetime.now(timezone.utc) + timedelta(minutes=30)
|
||||
|
||||
to_encode.update({"exp": expire, "type": "access"})
|
||||
|
||||
@@ -36,9 +36,9 @@ class JWTHandler:
|
||||
to_encode = data.copy()
|
||||
|
||||
if expires_delta:
|
||||
expire = datetime.now(datetime.timezone.utc) + expires_delta
|
||||
expire = datetime.now(timezone.utc) + expires_delta
|
||||
else:
|
||||
expire = datetime.now(datetime.timezone.utc) + timedelta(days=7)
|
||||
expire = datetime.now(timezone.utc) + timedelta(days=7)
|
||||
|
||||
to_encode.update({"exp": expire, "type": "refresh"})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user