From 6f77e0d30de58e2013a6a1a6161919662f7bc350 Mon Sep 17 00:00:00 2001 From: GeoffreyCoulaud Date: Sat, 3 Jun 2023 18:49:47 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Added=20Steam=20API=20rate=20limite?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/managers/manager.py | 4 +++- src/utils/rate_limiter.py | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/store/managers/manager.py b/src/store/managers/manager.py index 6df6d0f..96a88fc 100644 --- a/src/store/managers/manager.py +++ b/src/store/managers/manager.py @@ -63,7 +63,9 @@ class Manager: # Handle unretryable errors log_args = (type(error).__name__, self.name, game.name, game.game_id) if type(error) not in self.retryable_on: - logging.error("Unretryable %s in %s for %s (%s)", *log_args) + logging.error( + "Unretryable %s in %s for %s (%s)", *log_args, exc_info=error + ) self.report_error(error) break # Handle being out of retries diff --git a/src/utils/rate_limiter.py b/src/utils/rate_limiter.py index a8a0e55..9332691 100644 --- a/src/utils/rate_limiter.py +++ b/src/utils/rate_limiter.py @@ -43,9 +43,10 @@ class TokenBucketRateLimiter(AbstractContextManager): if refill_spacing_seconds is not None: self.REFILL_SPACING_SECONDS = refill_spacing_seconds - # Create locks + # Create synchro data self.__n_tokens_lock = Lock() self.queue_lock = Lock() + self.queue = deque() # Initialize the number of tokens in the bucket self.bucket = BoundedSemaphore(self.MAX_TOKENS)