mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-11-28 09:15:12 -05:00
Cleanup scanner processing span
This commit is contained in:
parent
3602905e86
commit
c5fa3ecb01
@ -101,6 +101,7 @@ class RequestProcessor:
|
|||||||
finally:
|
finally:
|
||||||
self._processing = False
|
self._processing = False
|
||||||
|
|
||||||
|
@tracer.start_as_current_span("process video")
|
||||||
async def process_request(self):
|
async def process_request(self):
|
||||||
cur = await self._database.fetchrow(
|
cur = await self._database.fetchrow(
|
||||||
"""
|
"""
|
||||||
@ -128,43 +129,44 @@ class RequestProcessor:
|
|||||||
return False
|
return False
|
||||||
request = Request.model_validate(cur)
|
request = Request.model_validate(cur)
|
||||||
|
|
||||||
with tracer.start_as_current_span(f"process {request.title}") as span:
|
span = trace.get_current_span()
|
||||||
logger.info(f"Starting to process {request.title}")
|
span.update_name(f"process {request.title}")
|
||||||
try:
|
logger.info(f"Starting to process {request.title}")
|
||||||
show = await self._run_request(request)
|
try:
|
||||||
finished = await self._database.fetchrow(
|
show = await self._run_request(request)
|
||||||
"""
|
finished = await self._database.fetchrow(
|
||||||
delete from scanner.requests
|
"""
|
||||||
where pk = $1
|
delete from scanner.requests
|
||||||
returning
|
where pk = $1
|
||||||
videos
|
returning
|
||||||
""",
|
videos
|
||||||
request.pk,
|
""",
|
||||||
|
request.pk,
|
||||||
|
)
|
||||||
|
if finished and finished["videos"] != request.videos:
|
||||||
|
videos = TypeAdapter(list[Request.Video]).validate_python(
|
||||||
|
finished["videos"]
|
||||||
)
|
)
|
||||||
if finished and finished["videos"] != request.videos:
|
await self._client.link_videos(
|
||||||
videos = TypeAdapter(list[Request.Video]).validate_python(
|
"movie" if request.kind == "movie" else "serie",
|
||||||
finished["videos"]
|
show.slug,
|
||||||
)
|
videos,
|
||||||
await self._client.link_videos(
|
|
||||||
"movie" if request.kind == "movie" else "serie",
|
|
||||||
show.slug,
|
|
||||||
videos,
|
|
||||||
)
|
|
||||||
except Exception as e:
|
|
||||||
span.set_status(trace.Status(trace.StatusCode.ERROR))
|
|
||||||
span.record_exception(e)
|
|
||||||
logger.error("Couldn't process request", exc_info=e)
|
|
||||||
cur = await self._database.execute(
|
|
||||||
"""
|
|
||||||
update
|
|
||||||
scanner.requests
|
|
||||||
set
|
|
||||||
status = 'failed'
|
|
||||||
where
|
|
||||||
pk = $1
|
|
||||||
""",
|
|
||||||
request.pk,
|
|
||||||
)
|
)
|
||||||
|
except Exception as e:
|
||||||
|
span.set_status(trace.Status(trace.StatusCode.ERROR))
|
||||||
|
span.record_exception(e)
|
||||||
|
logger.error("Couldn't process request", exc_info=e)
|
||||||
|
cur = await self._database.execute(
|
||||||
|
"""
|
||||||
|
update
|
||||||
|
scanner.requests
|
||||||
|
set
|
||||||
|
status = 'failed'
|
||||||
|
where
|
||||||
|
pk = $1
|
||||||
|
""",
|
||||||
|
request.pk,
|
||||||
|
)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
async def _run_request(self, request: Request) -> Resource:
|
async def _run_request(self, request: Request) -> Resource:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user