X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fjob-queue%2Fhandlers%2Fvideo-views.ts;h=73fa5ed041df8f937f67c572f3b97f6f1b0f3883;hb=f69ec5f340638ef577e8f5b9b1fb844778656a1f;hp=fa1fd13b38da28b6080487b35f416120497fb976;hpb=2a8c5d0af13f3ccb9a505e1fbc9d324b9d33ba1f;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/job-queue/handlers/video-views.ts b/server/lib/job-queue/handlers/video-views.ts index fa1fd13b3..73fa5ed04 100644 --- a/server/lib/job-queue/handlers/video-views.ts +++ b/server/lib/job-queue/handlers/video-views.ts @@ -27,6 +27,12 @@ async function processVideosViews () { logger.debug('Adding %d views to video %d in hour %d.', views, videoId, hour) try { + const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(videoId) + if (!video) { + logger.debug('Video %d does not exist anymore, skipping videos view addition.', videoId) + continue + } + await VideoViewModel.create({ startDate, endDate, @@ -34,7 +40,6 @@ async function processVideosViews () { videoId }) - const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(videoId) if (video.isOwned()) { // If this is a remote video, the origin instance will send us an update await VideoModel.incrementViews(videoId, views) @@ -44,13 +49,13 @@ async function processVideosViews () { await federateVideoIfNeeded(video, false) } } catch (err) { - logger.debug('Cannot create video views for video %d in hour %d. Maybe the video does not exist anymore?', videoId, hour) + logger.error('Cannot create video views for video %d in hour %d.', videoId, hour, { err }) } } await Redis.Instance.deleteVideoViews(videoId, hour) } catch (err) { - logger.error('Cannot update video views of video %d in hour %d.', videoId, hour) + logger.error('Cannot update video views of video %d in hour %d.', videoId, hour, { err }) } } }