viewed-fix
All checks were successful
Deploy on push / deploy (push) Successful in 6s

This commit is contained in:
Untone 2024-11-02 04:28:16 +03:00
parent 38d39dd618
commit 8965395377

View File

@ -37,12 +37,6 @@ class ViewedStorage:
auth_result = None auth_result = None
disabled = False disabled = False
start_date = datetime.now().strftime("%Y-%m-%d") start_date = datetime.now().strftime("%Y-%m-%d")
running = True
@staticmethod
async def stop():
self = ViewedStorage
self.running = False
@staticmethod @staticmethod
async def init(): async def init():
@ -202,26 +196,22 @@ class ViewedStorage:
if self.disabled: if self.disabled:
return return
try: while True:
while self.running: try:
try: await self.update_pages()
await self.update_pages() failed = 0
failed = 0 except Exception as exc:
except Exception as exc: failed += 1
failed += 1 logger.debug(exc)
logger.debug(exc) logger.info(" - update failed #%d, wait 10 secs" % failed)
logger.warning(" - update failed #%d, wait 10 secs" % failed) if failed > 3:
if failed > 3 or isinstance(exc, asyncio.CancelledError): logger.info(" - views update failed, not trying anymore")
logger.error("ViewedStorage worker cancelled") break
break if failed == 0:
finally: when = datetime.now(timezone.utc) + timedelta(seconds=self.period)
self.running = False t = format(when.astimezone().isoformat())
logger.info(" ⎩ next update: %s" % (t.split("T")[0] + " " + t.split("T")[1].split(".")[0]))
if failed == 0: await asyncio.sleep(self.period)
when = datetime.now(timezone.utc) + timedelta(seconds=self.period) else:
t = format(when.astimezone().isoformat()) await asyncio.sleep(10)
logger.info(" ⎩ next update: %s" % (t.split("T")[0] + " " + t.split("T")[1].split(".")[0])) logger.info(" - try to update views again")
await asyncio.sleep(self.period)
else:
await asyncio.sleep(10)
logger.info(" - try to update views again")