fix: handle malformed JSON payloads in worker with error logging

This commit is contained in:
counterweight 2025-12-21 23:24:28 +01:00
parent ca97ff1aa8
commit 89fbdb37bd
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
2 changed files with 23 additions and 2 deletions

View file

@ -49,9 +49,13 @@ async def process_random_number_job(job: Job, db_pool: asyncpg.Pool) -> None:
# Parse payload
payload_str = job.payload.decode() if job.payload else "{}"
payload = json.loads(payload_str)
user_id = payload.get("user_id")
try:
payload = json.loads(payload_str)
except json.JSONDecodeError as e:
logger.error(f"Job {job.id}: Invalid JSON payload: {e}")
return
user_id = payload.get("user_id")
if user_id is None:
logger.error(f"Job {job.id}: Missing user_id in payload")
return