Преглед изворни кода

Attribute a unique monotonic id to each job

jherve пре 1 година
родитељ
комит
04a602219c
2 измењених фајлова са 5 додато и 5 уклоњено
  1. 2 3
      src/media_observer/snapshots.py
  2. 3 2
      src/media_observer/worker.py

+ 2 - 3
src/media_observer/snapshots.py

@@ -1,4 +1,5 @@
 import asyncio
+from uuid import uuid1
 import traceback
 import os
 import tempfile
@@ -28,9 +29,7 @@ idx = 0
 
 
 def unique_id():
-    global idx
-    idx = idx + 1
-    return idx
+    return uuid1()
 
 
 @frozen

+ 3 - 2
src/media_observer/worker.py

@@ -1,4 +1,5 @@
 import asyncio
+from uuid import UUID
 from attrs import frozen
 from loguru import logger
 from abc import ABC, abstractmethod
@@ -7,7 +8,7 @@ from typing import Any, ClassVar
 
 @frozen
 class Job(ABC):
-    id_: int
+    id_: UUID
 
 
 class JobQueue:
@@ -69,4 +70,4 @@ class Worker(ABC):
             self.queue.task_done(self.type_)
 
     def _log(self, level: str, job: Job, msg: str):
-        logger.log(level, f"[{job.id_: <3}] {msg}")
+        logger.log(level, f"[{job.id_}] {msg}")