added logging to jobs route
This commit is contained in:
parent
eddc687f37
commit
58054ac813
2 changed files with 52 additions and 35 deletions
Binary file not shown.
|
|
@ -217,47 +217,64 @@ async def list_jobs(
|
|||
current_user: User = Depends(get_current_user),
|
||||
db: AsyncIOMotorDatabase = Depends(get_database),
|
||||
):
|
||||
query = {}
|
||||
print(f"🔍 DEBUG: list_jobs called by user {current_user.id}, status={status}, mine={mine}")
|
||||
try:
|
||||
query = {}
|
||||
|
||||
if status:
|
||||
if ',' in status:
|
||||
# Handle comma-separated status values
|
||||
status_list = [s.strip() for s in status.split(',')]
|
||||
query["status"] = {"$in": status_list}
|
||||
else:
|
||||
query["status"] = status
|
||||
if status:
|
||||
if ',' in status:
|
||||
# Handle comma-separated status values
|
||||
status_list = [s.strip() for s in status.split(',')]
|
||||
query["status"] = {"$in": status_list}
|
||||
else:
|
||||
query["status"] = status
|
||||
|
||||
if mine or current_user.role == UserRole.CLIENT:
|
||||
query["client_id"] = str(current_user.id)
|
||||
if mine or current_user.role == UserRole.CLIENT:
|
||||
query["client_id"] = str(current_user.id)
|
||||
|
||||
# Get total count
|
||||
total = await db.jobs.count_documents(query)
|
||||
# Get total count
|
||||
total = await db.jobs.count_documents(query)
|
||||
|
||||
# Get paginated results
|
||||
skip = (page - 1) * size
|
||||
cursor = db.jobs.find(query).sort("created_at", -1).skip(skip).limit(size)
|
||||
jobs = await cursor.to_list(length=size)
|
||||
# Get paginated results
|
||||
skip = (page - 1) * size
|
||||
cursor = db.jobs.find(query).sort("created_at", -1).skip(skip).limit(size)
|
||||
jobs = await cursor.to_list(length=size)
|
||||
|
||||
job_responses = []
|
||||
for job_doc in jobs:
|
||||
job_responses.append(JobResponse(
|
||||
id=str(job_doc["_id"]),
|
||||
title=job_doc["title"],
|
||||
status=job_doc["status"],
|
||||
source=job_doc["source"],
|
||||
requested_outputs=RequestedOutputs(**job_doc["requested_outputs"]),
|
||||
review=job_doc.get("review", {"notes": "", "history": []}),
|
||||
outputs=job_doc.get("outputs"),
|
||||
created_at=job_doc["created_at"].isoformat(),
|
||||
updated_at=job_doc["updated_at"].isoformat()
|
||||
))
|
||||
job_responses = []
|
||||
print(f"🔍 DEBUG: Found {len(jobs)} jobs, building responses...")
|
||||
for i, job_doc in enumerate(jobs):
|
||||
try:
|
||||
print(f"🔍 DEBUG: Processing job {i}: {job_doc.get('_id')}")
|
||||
job_responses.append(JobResponse(
|
||||
id=str(job_doc["_id"]),
|
||||
title=job_doc["title"],
|
||||
status=job_doc["status"],
|
||||
source=job_doc["source"],
|
||||
requested_outputs=RequestedOutputs(**job_doc["requested_outputs"]),
|
||||
review=job_doc.get("review", {"notes": "", "history": []}),
|
||||
outputs=job_doc.get("outputs"),
|
||||
created_at=job_doc["created_at"].isoformat(),
|
||||
updated_at=job_doc["updated_at"].isoformat()
|
||||
))
|
||||
print(f"🔍 DEBUG: Job {i} processed successfully")
|
||||
except Exception as e:
|
||||
print(f"🚨 ERROR processing job {i}: {e}")
|
||||
import traceback
|
||||
print(traceback.format_exc())
|
||||
raise
|
||||
|
||||
return JobListResponse(
|
||||
jobs=job_responses,
|
||||
total=total,
|
||||
page=page,
|
||||
size=size
|
||||
)
|
||||
print(f"🔍 DEBUG: All jobs processed, returning response")
|
||||
return JobListResponse(
|
||||
jobs=job_responses,
|
||||
total=total,
|
||||
page=page,
|
||||
size=size
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"🚨 EXCEPTION in list_jobs: {e}")
|
||||
import traceback
|
||||
print(traceback.format_exc())
|
||||
raise
|
||||
|
||||
|
||||
@router.get("/{job_id}", response_model=JobResponse)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue